歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux管理 >> Linux網絡 >> 動手干吧--跟我學構建一個Linux網絡平台(二)

動手干吧--跟我學構建一個Linux網絡平台(二)

日期:2017/2/27 14:16:52   编辑:Linux網絡
  內部域名服務 內部域名服務主要提供對域mycompany.vvv的解析,以及內部IP地址的反向解析。同時也向內部用戶提供通常的DNS服務(對Internet域名的解析)。由於我們這裡假設的域名無需局域網外部的用戶訪問,只提供給內部用戶使用,因此不需要在internic注冊,但該域名能夠為內部網絡用戶使用的一個前提是,這些用戶必須將該服務器(這裡指的是192.168.0.3)設置成第一個域名服務器。 按照我們前面介紹的方式安裝完的Linux,缺省情況下沒有啟動域名服務,你可以使用ntsysv命令,將192.168.0.3的域名服務設置成自啟動。找到named項,並在其前面標注一個*號。重起服務器或運行/etc/rc.d/init.d/named start後,域名服務啟動。 域名服務所涉及到的配置文件主要包括/etc/named.conf和/var/named目錄下的文件。在/etc/name.conf中注明了該域名服務器所需解析的域,以及每個域所對應的配置文件。 缺省的情況下,Redhat 6.2將域名服務配置成為一個Caching only域名服務器,它可以為局域網的用戶提供Internet域名的解析服務,我們還希望它可成為mycompany.vvv的主域名服務器,同時還應該提供對子網192.168.0.0/255.255.255.0的反向解析。這裡反向解析服務可以將IP地址變換成域名,如果沒有配置好反向解析服務,可能會造成諸如telnet,FTP連接到服務器時耗時很長的問題。修改後的/etc/named.conf如下: options { Directory "/var/named"; }; zone "." { type hint; file "named.ca"; }; zone "mycompany.vvv"{ type master; file "named.mycompany"; }; zone "0.0.127.in-addr.arpa"{ type master; file "named.local"; }; zone "0.168.192.in-addr.arpa"{ type master; file "named.192.168.0"; }; options {directory "/var/named";}指明了所有域名數據文件的存儲目錄,每一個zone表示一個域,而其對應的file 字段所注明的文件則表示了該域的數據文件。注意反向域名zone的表示方式,就是子網地址的反序表示,在這裡/var/named/named.mycompany和/var/named/named.192.168.0是需要我們新建的主域名文件和子網文件。這兩個文件的內容如下: /var/named/named.mycompany @ IN SOA ns.mycompany.vvv. admin.mycompany.vvv. ( 2000110601 ; serial 28800 ; refresh 14400 ; retry 3600000 ; eXPire 86400 ; default_ttl ) @ IN NS ns.mycompany.vvv. @ IN MX 10 ns.mycompany.vvv. ns IN A 192.168.0.3 mycompany.vvv. IN A 192.168.0.4 gw IN A 192.168.0.1 fp IN A 192.168.0.2 www IN A 192.168.0.4 database IN A 192.168.0.5 tom IN A 192.168.0.11 alex IN A 192.168.0.13 mail IN CNAME ns


請注意文件中的完整域名後面的“.”,沒有這個點的名字所表示的是省略了完整域名中的“.mycompany.vvv”部分。第一行中的“admin.mycompany.vvv.”是管理員的郵箱,沒有“@”符號。第八行說明了該域的主域名服務器,第九行說明了該域的郵件服務器,“10”表示郵件服務器的相對優先級,數字越小表示郵件就越先交給它處理,這裡我們因為負載不大的原因將DNS服務和E-mail服務放在同一台服務器上,所以它仍然是“ns.mycompany.vvv.”。之後各行說明了每個名字所對應的IP地址,其中“mycompany.vvv.”由於最後有個“.”,它所表示的意思就與其他幾個不同,它表示完整域名為“mycompany.vvv”的主機的IP地址為“192.168.0.4”,在後面我們也看到主機www.mycompany.vvv的IP地址也是“192.168.0.4”,同一台機器可以有不同的名字,這也是虛擬主機上常見的情況。最後一行的CNAME表示ns.mycompany.vvv還有一個名字叫做mail.mycompany.vvv。 /var/named/named.192.168.0 @ IN SOA ns.mycompany.vvv. admin.mycompany.vvv. ( 2000110601 ; serial 28800 ; refresh 14400 ; retry 3600000 ; expire 86400 ; default_ttl ) @ IN NS ns.mycompany.vvv. 1 IN PTR gw.mycompany.vvv. 2 IN PTR fp.mycompany.vvv. 3 IN PTR ns.mycompany.vvv. 4 IN PTR www.mycompany.vvv. 5 IN PTR database.mycompany.vvv. 11 IN PTR tom.mycompany.vvv. 13 IN PTR alex.mycompany.vvv. 這個文件也很好理解,從第9行開始所表示的就是IP地址到完整域名的對應關系。 你可以使用pico這個工具來編寫這兩個文件,如pico /var/named/named.192.168.0。一旦完成這兩個文件,你就可以重新啟動域名服務,以使改動生效。以後每次更改域名數據文件,都應該重啟域名服務進程。其方法是:/etc/rc.d/init.d/named restart。之後你可以ping 一下這些主機的域名,看看是否正確,如ping www.mycompany.vvv看看IP地址是否為192.168.0.4,如果網關已經設置正確,你還可以ping一下Internet上的域名,看看Caching only域名服務是否工作正常。 內部郵件系統 當需要在企業內部進行郵件交換時,我們會用到Linux下的郵件系統。Redhat 6.2所附的郵件系統為sendmail,但為了能夠獲得更高的安全性和易用性,我們這裡將討論qmail這套mail服務器軟件的安裝和設置,同時也介紹如何讓它支持虛擬主機和Web管理。qmail曾經支撐國內最大的Webmail系統,所以它的性能對於中小型企業來講應該是完全足夠的了。 所需要的軟件:(下載地址) qmail-1.03.tar.gz ftp://ftp.ntnu.no/pub/unix/mail/qmail/qmail-1.03.tar.gz vpopmail-4.8.9.tar.gz http://www.vpopmail.cx/vpopmail-4.8.9.tar.gz qmailadmin-0.35.tar.gz http://www.vpopmail.cx/qmailadmin-0.3.5.tar.gz ezmlm-0.53.tar.gz http://www.ezmlm.org/pub/patches/ezmlm-0.5.3.tar.gz autorespond-1.0.0.tar.gz http://www.vpopmail.cx/autorespond-1.0.0.tar.gz UCspi-tcp-0.88.tar.gz 首先我們可以將這些軟件copy到一個臨時目錄中如/usr/local/src。並在該目錄中將它們解壓縮: # tar xzf qmail-1.03.tar.gz # tar xzf vpopmail-4.8.9.tar.gz # tar xzf qmailadmin-0.35.tar.gz # tar xzf ezmlm-0.53.tar.gz # tar xzf autorespond-1.0.0.tar.gz # tar xzf ucspi-tcp-0.88.tar.gz 1.建立qmail目錄: # mkdir /var/qmail 2.增加qmail運行所需要的組和用戶:

# /usr/sbin/groupadd nofiles # /usr/sbin/useradd -g nofiles -d /var/qmail/alias alias # /usr/sbin/useradd -g nofiles -d /var/qmail qmaild # /usr/sbin/useradd -g nofiles -d /var/qmail qmaill # /usr/sbin/useradd -g nofiles -d /var/qmail qmailp # /usr/sbin/groupadd qmail # /usr/sbin/useradd -g qmail -d /var/qmail qmailq # /usr/sbin/useradd -g qmail -d /var/qmail qmailr # /usr/sbin/useradd -g qmail -d /var/qmail qmails 3.在目錄/usr/local/src/qmail-1.03中編譯安裝qmail: # make setup check 4.設置E-mail服務器的服務域信息: # ./config-fast ns.mycompany.vvv 5.為了能夠收到[email protected][email protected][email protected]特殊賬號的信件,並將它們統一到一起,可以進行如下操作: # (cd ~alias; touch .qmail-postmaster .qmail-mailer-daemon .qmail-root) # chmod 644 ~alias/.qmail* 6.確定並修改qmail的啟動腳本,同時我們使用qmail的maildir機制來存儲信件: # cp /var/qmail/boot/home /var/qmail/rc # pico /var/qmail/rc 將其中的qmail-start ./Mailbox splogger qmail 改為qmail-start ./Maildir/ splogger qmail 7.刪除系統中的sendmail,為了兼容一些要使用sendmail的程序,可以連接qmail的sendmail模擬程序到原來sendmail程序的位置: # chmod 0 /usr/lib/sendmail # chmod 0 /usr/sbin/sendmail # mv /usr/lib/sendmail /usr/lib/sendmail.bak # mv /usr/sbin/sendmail /usr/sbin/sendmail.bak # ln -s /var/qmail/bin/sendmail /usr/lib/sendmail # ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail 8.將qmail的啟動命令加入到系統的啟動腳本中,讓系統可以在每次啟動時自動啟動qmail服務: 加csh -cf /var/qmail/rc & 到 /etc/rc.d/rc.local 9.修改inet.conf,以便可以用qmail發信。增加下面的內容到inet.conf: smtp stream tcp nowait qmaild /var/qmail/bin/tcp-env tcp-env /var/qmail/bin/qmail-smtpd 至此qmail本身已經完成安裝,但目前它所能處理的郵件型為[email protected],我們希望它可以處理諸如[email protected][email protected]等多個域名後綴的郵件,這就需要qmail支持虛擬主機。同時,我們還可以為它增加郵件列表、自動回復等功能,並可以通過Web界面進行管理,也能使用戶可以通過Web進行更改自己的密碼的操作。 1.安裝tcpserver進行連接安全管理。在目錄/usr/local/src/ucspi-tcp-0.88下運行如下命令: # make # make setup check



smtp stream tcp nowait qmaild /var/qmail/bin/tcp-env tcp-env /var/qmail/bin/qmail-smtpd 至此qmail本身已經完成安裝,但目前它所能處理的郵件型為[email protected],我們希望它可以處理諸如[email protected][email protected]等多個域名後綴的郵件,這就需要qmail支持虛擬主機。同時,我們還可以為它增加郵件列表、自動回復等功能,並可以通過Web界面進行管理,也能使用戶可以通過Web進行更改自己的密碼的操作。 1.安裝tcpserver進行連接安全管理。在目錄/usr/local/src/ucspi-tcp-0.88下運行如下命令: # make # make setup check



Copyright © Linux教程網 All Rights Reserved