5.2 網路設定檔
在Red Hat Linux 7.1中有一些用於存放網路設定的檔案:
1./etc/hosts
在該檔案中存放的是一組IP地址與主機名稱的列表,如果在該列表中指出某台主機的IP地址,那麼訪問該主機時將無需進行DNS解析。
2./etc/host.conf
該檔案用來指定網域名稱解析方法的順序,如:
order hosts,bind
它說明,首先通過/etc/hosts檔案解析,如果在該檔案中沒有相應的主機名稱與IP地址的對應關係,再通過網域名稱伺服器bind進行解析。
3./etc/resolv.conf
在該檔案中存放網域名稱伺服器的IP地址。
4./etc/protocols
Red Hat Linux 7.1系統使用該檔案辨別本主機使用的,並通過它完成協議和協議號之間的映射,使用者不應修改該檔案。
5./etc/services
該使用者用於定義現有的網路服務,使用者無需修改它,它通常由安裝網路服務的程式來維護。該檔案包括網路服務名、網路連接埠號碼和使用的協議類型,其中網路連接埠號碼和使用的協議類型之間有一個斜杠分開,在設定行的最後還可以添加一些服務的別名。
5./etc/xinetd.d目錄
在Linux系統中有一個超級服務程式inetd,大部分的網路服務都是由它啟動的,如chargen、echo、finger、talk、telnet、wu-ftpd等…,在7.0之間的版本它的設定是在/etc/inetd.conf中配置的,在Red Hat 7.0後,它就改成了一個xinetd.d目錄。
在xinetd.d目錄中,每一個服務都有一個相應的設定檔,我們以telnet為例,說明一下各個配置行的含義:
service telnet
{
socket_type=stream
wait=no
user=root
server=/usr/sbin/in.telnetd
log_on_failure+=USERID
disable=yes
}
第一行,說明該配置用來設定telnet服務。
第二行,說明Socket連線類型是stream,也就是TCP
第三行,是指不等待到啟動完成
第四行,是指以root使用者啟動服務進程
第五行,是指服務進程是/usr/sbin/in.telnetd
第六行,是用於做一些出錯日誌
第七行,是指禁止遠方telnet,如果需要開放則將該配置改為:disable=no
修改了xinetd的配置,需要重啟xinetd才能夠生效,有兩種方法可以實現:
1) 執行如下命令:
/etc/rc.d/init.d/xinetd restart
2) 執行如下命令:
killall –HUP xinetd
5.3 網路服務訪問限制
在Red Hat Linux 7.1中加強了網路安全的防範,如果你安裝時安全等級不是在最低一級的話,那麼本機之外的所有訪問都可能被拒絕。這是因為在Red Hat 7.1中做了一些預設的ipchains設定,這是Linux內建的防火牆機制,它可以使用一些規則來允許或禁止某種訪問。
它的規則存放在/etc/sysconfig/ipchains檔案中,如果你想讓它暫時不生效,那你可以運行/etc/rc.d/init.d/ipchains stop,那麼所有的規則都被取消,所有的網路訪問都將被允許。
你可以運行/etc/rc.d/init.d/ipchains status來獲知現在對網路訪問的限制。關於這方面的知識,本文限於篇幅無法詳細介紹,有興趣的讀者可參考《Linux防火牆》一書。
5.4 WEB伺服器
在Linux系統中最適合於做伺服器的當數Apache,Red Hat Linux 7.1中整合了Apache 1.3.19版,你只要在安裝時選中WEB伺服器,那麼系統將自動完成Apache伺服器的安裝,在預設情況,WWW服務就已經啟動了。
如果你在安裝時沒有選擇WEB伺服器包,那也沒有關係,你只需執行以下命令即可:
1) 將Red Hat Linux 7.1安裝光碟片的第一張放入光碟機,然後執行如下命令:
# mount /mnt/cdrom
2) 轉到apache安裝檔案所在目錄:
# cd /mnt/cdrom/RedHat/RPMS
3) 使用RPM完成安裝:
# rpm –ivh apache-1.3.19-5.i386.rpm
現在,你就已經擁有一個基於Linux的WEB伺服器了,它的設定檔位於/etc/httpd/conf目錄下,你可根據需要進行相應的修改,修改完後執行:/etc/rc.d/init.d/httpd restart即可。而WEB服務的主目錄則在/var/www/html目錄下,你可以將你的WEB頁傳到這裡就可以更新了。
而如果每一個使用者都想要擁有一個自己的首頁的話,則:
1) 首先在自己的使用者主目錄下建一個public_html目錄:
# cd
# mkdir public_html
2) 然後將自己的使用者主目錄的許可權改為大家可讀
# chmod 755 使用者主目錄
3) 這樣你就可以使用“localhost/~使用者名稱/”訪問到每個使用者的首頁了。
5.5 FTP伺服器 在Red Hat Linux 7.1中整合了Wu-FTP 2.6.1做為FTP伺服器,在你安裝時只要選擇了FTP包的話,那麼你的Linux伺服器就是一台FTP伺服器了,如果當時沒有安裝的話,也沒有關係,跟安裝apache一樣:
1) 將Red Hat Linux 7.1安裝光碟片的第一張放入光碟機,然後執行如下命令:
# mount /mnt/cdrom
2)轉到wu-ftp安裝檔案所在目錄:
# cd /mnt/cdrom/RedHat/RPMS
3)使用RPM完成安裝:
# rpm –ivh wu-ftp-2.6.1-16.i386.rpm
由於FTP服務是由xinetd超級伺服器建立的,所以關於FTP伺服器的配置在/etc/xinetd.d目錄下的wu-ftpd檔案中:
service ftp
{
socket_type=stream
wait=no
user=root
server=/usr/sbin/in.ftpd
server_args=-l –a
log_on_success+=DURATION USERID
log_on_failure+=USERID
nice=10
disable=no
}
下面,我們介紹一些關於FTP伺服器的管理方法:
1、 暫時關閉FTP服務
有兩種方法可以使FTP服務暫停:
1) 以root使用者身份執行:
# ftpshut now
這樣就會在/etc目錄下產生一個shutmsg的檔案,這時FTP伺服器將無法使用,直到你刪掉這個檔案。
2) 修改設定檔/etc/xinetd.d/wu-ftpd,將disable=no改為disable=yes,然後重啟xinetd。
2、 禁止某使用者使用FTP服務
有兩種方法可以禁止某使用者使用FTP伺服器:
1) 在/etc/ftpuser中寫入該使用者帳號名
2) 在/etc/ftpaccess中寫入一行配置:
deny-uid 使用者名稱
用這種方法還可以禁止一個組的使用者使用
deny-gid 組名
3、 禁止匿名使用者(anonymous)登入FTP伺服器
有許多種方法可以實現,但我覺得最簡單有效方法就是將anonymous寫入設定檔:/etc/ftpuser中,就可了。
5.6 檔案伺服器
我們還可以使用Red Hat Linux 7.1內建的Samba為區域網路內的Windows主機做檔案伺服器。如果在安裝系統時選擇了SMB伺服器軟體包的話,那麼安裝完以後,Samba服務就已經Ready了。
不過為了方便配置,建議安裝一下swat,它提供了一個WEB介面的組態工具。它的安裝包是第二張光碟片的/RedHat/RPMS/samba-swat-2.0.7-36.i386.rpm。
安裝完以後,它會在xinetd.d目錄中建立一個swat檔案,其內容為:
service swat
{
port=901
socket_type=stream
wait=no
only_from=127.0.0.1
server=/usr/sbin/swat
log_on_failure+=USERID
disable=yes
}
我們看到disable的值是yes,也就是說,現在swat還沒有啟用,因此,我們需要將其改為disable=no,然後重啟xinted。另外,由於這裡有一句:
only_from=127.0.0.1
說明只能在本機使用swat,而如果你想在Windows中用IE來配置的話,請將這句注釋掉或刪掉。
下面,我們以設定一個大家都可以訪問的homes目錄為例,說明SWAT的設定方法:
1) 開啟IE瀏覽器,在地址欄上輸入Linux的主機名稱或IP以及“:901”,例如:
http://192.168.0.1:901
2) 如果串連正常,將出一個登入提示窗,要求輸入使用者名稱與密碼,在此以root為使用者名稱,並輸入root使用者的密碼,再單擊確定;
3) 如果輸入無誤,將出現Samba的配置介面:Swat的首頁;
我們可以看到在Swat介面中,最上面有7個表徵圖,分別是:HOME(首頁)、GLOBALS(全域設定)、SHARES(共用設定)、PRINTERS(印表機)、STATUS(狀態)、VIEW(查看)、PASSWORD(密碼)
4) 首先,我們單擊GLOBALS表徵圖,將出現GLOBALS設定頁面,其中我們對以下幾項進行設定:
Ø BaseOption à Workgroup:在些輸入工作群組名(如NetBIOS中的工作群組名)
Ø BaseOption à Netbios name:主機名稱
Ø SecurityOption à Security:選擇安全等級,在些選擇“SHARE”
Ø SecurityOption à hosts allow:允許的主機,通常寫入你的網路號,如192.168.0.
Ø SecurityOption à hosts deny:如果你不讓某台機器使用,則寫入它的IP地址
修改完後,點擊“Commit Changes”按鈕(在7個表徵圖的下邊一些),儲存設定。
5) 然後,單擊SHARES表徵圖,進行共用設定:
第一步:在Create Share按鈕的右邊文字框中輸入要設定的共用名稱
第二步:單擊“Create Share”按鈕;
第三步:確認“BaseOptions à Path的值為你想共用的目錄,例如/home/smb/test(注意這必須是已經存在的目錄);
第四步:將“SecurityOptions à writeable”的值設定為Yes,使該目錄共用為可寫;
第五步:將“SecurityOptions à guest ok”的值設定為Yes,使該目錄無需密碼訪問;
第六步:在“SecurityOptionsàhosts allow、hosts deny”中設定相應的主機IP;
第七步:將“BrowseOptionsàbrowseable”設定為Yes,使其便於使用
最後,點擊“Commit Changes”按鈕,儲存設定。
現在,我們就可以在Windows 9x上通過近端分享訪問到這台Samba伺服器,並且有一個可讀、可寫的共用目錄。
在平時使用的時間,系統管理員可以點擊“STATUS”按鈕,切換到狀態頁面對其進行監測,在這個頁面上,你可以:
1) 啟動(Start smbd按鈕)、停止Samba(Stop Smbd按鈕)服務,以及重啟服務(Restart smbd按鈕);
2) 另外,你可以看到當前與Samba伺服器建立的串連(Active Connections),並且可以按下“X”按鈕,中止它的訪問;
3) 同時你還可以檢測到正在訪問的檔案夾(Active Shares),正開啟的檔案(Open Files)。
Samba服務還可以對使用者進行認證,與Window NT域進行整合等強大的功能,在些限於篇幅就不詳細介紹,有興趣的讀者可以參考《實戰Samba》一書。
後記 通過一段時間的使用,發現Red Hat Linux 7.1無論安裝還是使用,都越來越注重易用性,大量使用了華麗的圖形介面,大有發兵案頭之勢。而且整合了大量軟體的最新版,可謂效能卓越,不過可謂“成也蕭何、敗也蕭何”,我在試用的過程出現了一次啟動KDE時死機(這可是在以前的版本中難得一見的!)造也了系統崩潰,估計是XFree86 4的BUG造成的。另外,優秀的圖形介面使得整個X Window變成十分緩慢,所以說易用性與效能總是無法兩全的。
不管怎麼說,從Red Hat Linux 7.1豐富的應用軟體,高效的網路效能,較好的圖形介面都說明Linux越來越成熟,相信在眾多知名IT廠商的大力扶持下,將迎來美好的明天。