linux網(wǎng)絡(luò)應(yīng)用及/etc/rc.d/init.d/xinetd restart
來源: ChinaUnix博客 日期: 2005.09.26 10:47 (共有0條評論)
我要評論linux入門教程 第5章:網(wǎng)絡(luò)應(yīng)用2005-9-23 作者:未知 來源:網(wǎng)易社區(qū) 瀏覽: 44
5.1 常用網(wǎng)絡(luò)命令
在Red Hat Linux 7.1系統(tǒng)提供了與網(wǎng)絡(luò)相關(guān)的工具,掌握好這些工具是十分必要的:
第一類:設(shè)置工具
1.netconf:
netconf是Red Hat Linux提供的Linuxconf的一部分,主要用于設(shè)置與網(wǎng)絡(luò)相關(guān)的參數(shù)。它可以在consle下運(yùn)行(文本菜單),也可以在X-Window中運(yùn)行 (圖形界面)。在前面,我們介紹過了netconf的一些應(yīng)用,它的使用比較簡單,只要認(rèn)識上面的英文就可以了,所以在此就不再多說。BTW,如果你設(shè)置 好了X-Window的話,用用圖形界面的netconf,會更漂亮的喲。
2.ifconfig
ifconfig是Linux系統(tǒng)中最常用的一個用來顯示和設(shè)置網(wǎng)絡(luò)設(shè)備的工具。其中“if”是“interface”的縮寫。它可以用來設(shè)備網(wǎng)卡的狀態(tài),或是顯示當(dāng)前的設(shè)置。
下面我們簡單地說明常用的命令組合:
1) 將第一塊網(wǎng)卡的IP地址設(shè)置為192.168.0.1:
ifconfig eth0 192.168.0.1 (格式:ifconfig 網(wǎng)絡(luò)設(shè)備名 IP地址)
2) 暫時關(guān)閉或啟用網(wǎng)卡:
關(guān)閉第一塊網(wǎng)卡:ifconfig eth0 down
啟用第一塊網(wǎng)卡:ifconfig eth0 up
3) 將第一塊網(wǎng)卡的子網(wǎng)掩碼設(shè)置為255.255.255.0:
ifconfig eth0 netmask 255.255.255.0(格式:ifconfig 網(wǎng)絡(luò)設(shè)備名 netmask 子網(wǎng)掩碼)
我們也可以同時設(shè)置IP地址和子網(wǎng)掩碼:
ifconfig eth0 192.168.0.1 netmask 255.255.255.0
4) 將第一塊網(wǎng)卡的廣播地址設(shè)置為192.168.0.255:
ifconfig eth0 –broadcast 192.168.0.255
5) 將第一塊網(wǎng)卡設(shè)置為不接收多播數(shù)據(jù)包:
ifconifg eth0 allmulti
如果要讓其接收,則使用命令:ifconfig eth0 -allmulti
6) 查看第一塊網(wǎng)卡的狀態(tài):
ifconfig eth0
如果要查看所有的網(wǎng)卡狀態(tài),則直接使用不帶參數(shù)的ifconfig命令即可。
ifconfig輸出的狀態(tài)信息是十分有用的,下面,我們就簡單說明一下:
有幾個狀態(tài)比較重要:
Ø UP/DOWN:網(wǎng)卡是否啟動了,如果是DOWN的話,那肯定無法用的;
Ø RX packets中的errors包的數(shù)量如果過大說明網(wǎng)卡在接收時有問題;
Ø TX packets中的errors包的數(shù)量如果過大說明網(wǎng)卡在發(fā)送時有問題;
3.route
route命令是用來查看和設(shè)置Linux系統(tǒng)的路由信息,以實(shí)現(xiàn)與其它網(wǎng)絡(luò)的通訊。要實(shí)現(xiàn)兩個不同的子網(wǎng)之間的網(wǎng)絡(luò)通訊,需要一臺連接兩個網(wǎng)絡(luò)路由器或者同時位于兩個網(wǎng)絡(luò)的網(wǎng)關(guān)來實(shí)現(xiàn)。
在Linux系統(tǒng)中,我們通常設(shè)置路由是為了解決以下問題:該Linux機(jī)器在一個局域網(wǎng)中,局域網(wǎng)中有一個網(wǎng)關(guān),能夠讓你的機(jī)器訪問Internet,那么我們就需要將這臺機(jī)器的IP地址設(shè)置為Linux機(jī)器的默認(rèn)路由。
1) 增加一個默認(rèn)路由:
route add 0.0.0.0 gw 網(wǎng)關(guān)地址
2) 刪除一個默認(rèn)路由:
route del 0.0.0.0 gw 網(wǎng)關(guān)地址
3) 顯示出當(dāng)前路由表
route
第二類:診斷工具
1.ping
ping是一個最常用的檢測是否能夠與遠(yuǎn)端機(jī)器建立網(wǎng)絡(luò)通訊連接。它是通過Internet控制報文協(xié)議ICMP來實(shí)現(xiàn)的。而現(xiàn)在有些主機(jī)對ICMP進(jìn)行 過濾,在這種特殊的情況下,有可能使得一些主機(jī)Ping不通,但能夠建立網(wǎng)絡(luò)連接。這是一種特例,在此事先說明。
同樣的,在此不羅列ping命令的所有可選參數(shù),而是通過實(shí)例來說明一些常用的組合,需要更詳細(xì)地了解的,可以通過
www.linuxaid.com.cn網(wǎng)站在線培訓(xùn)的命令查詢工具獲得。
1) 檢測與某機(jī)器的連接是否正常:
ping 192.168.0.1
ping
www.linuxaid.com.cn也就是說,我們可以用IP地址或域名來指定機(jī)器。
2) 指定ping回應(yīng)次數(shù)為4:
在Linux下,如果你不指定回應(yīng)次數(shù),ping命令將一直不斷地向遠(yuǎn)方機(jī)器發(fā)送ICMP信息。我們可以通過-c參數(shù)來限定:ping –c 4 192.168.0.1
3) 通過特定的網(wǎng)卡進(jìn)行ping:
有時,我們需要檢測某塊網(wǎng)卡(系統(tǒng)中有多塊)能否ping通遠(yuǎn)方機(jī)器。我們需要在執(zhí)行ping命令時指出:
ping –I eth0 192.168.0.1
2.traceroute
如果你ping不通遠(yuǎn)方的機(jī)器,想知道是在什么地方出的問題;或者你想知道你的信息到遠(yuǎn)方機(jī)器都經(jīng)過了哪些路由器,可以使用traceroute命令。顧名思義:trace是跟蹤,route是路由,也就是跟蹤路由。
使用這個命令很簡單:
traceroute 遠(yuǎn)程主機(jī)IP地址或域名
這個命令的輸出類似:
1 路由器(網(wǎng)關(guān))的IP地址 訪問所需時間1 訪問所需時間2 訪問所需時間3
2 路由器(網(wǎng)關(guān))的IP地址 訪問所需時間1 訪問所需時間2 訪問所需時間3
………
1) 最前面的數(shù)字代表“經(jīng)過第幾站”;
2) 路由器(網(wǎng)關(guān))的IP地址就是“該站”的IP地址;
3) 訪問所需時間1、2、3是指訪問到這個路由器(網(wǎng)關(guān))需要的時間。
3.netstat
在Linux系統(tǒng)中,提供了一個功能十分強(qiáng)大的查看網(wǎng)絡(luò)狀態(tài)的工具:netstat。它可以讓您得知整個Linux系統(tǒng)的網(wǎng)絡(luò)情況。
1)統(tǒng)計(jì)出各網(wǎng)絡(luò)設(shè)備傳送、接收數(shù)據(jù)包的情況:
使用命令:netstat –i
這個命令將輸出一張表,其中包括:
Iface:網(wǎng)絡(luò)接口名 MTU:最大傳輸單元
RX-OK:共成功接收多少個包 RX-ERR:接收的包中共有多少個錯誤包
RX-DRP:接收時共丟失多少個包 RX-OVR:共接收了多少個碰撞包
TX-OK:共成功發(fā)送多少個包 TX-ERR:發(fā)送的包中共有多少個錯誤包
TX-DRP:發(fā)磅時共丟失多少個包 TX-OVR:共接收了多少個碰撞包
2)顯示網(wǎng)絡(luò)的統(tǒng)計(jì)信息
使用命令:netstat –s
使用這個命令,將會以摘要的形式統(tǒng)計(jì)出IP、ICMP、TCP、UDP、TCPEXT形式的通信信息。
3)顯示出TCP傳輸協(xié)議的網(wǎng)絡(luò)連接情況:
使用命令:netstat –t
這個命令的輸出也是一張表,其中包括:
Local Address:本地地址,格式是IP地址:端口號
Foreign Address:遠(yuǎn)程地址,格式也是IP地址:端口號
State:連接狀態(tài),包括LISTEN、ESTABLISHED、TIME_WAIT等。
4)只顯示出使用UDP的網(wǎng)絡(luò)連接情況:
使用命令:netstat –t
輸出格式也是一樣的。
5)顯示路由表:
使用命令:netstat –r
這個命令的輸出與route命令的輸出相同。
5.2 網(wǎng)絡(luò)配置文件
在Red Hat Linux 7.1中有一些用于存放網(wǎng)絡(luò)配置的文件:
1./etc/hosts
在該文件中存放的是一組IP地址與主機(jī)名的列表,如果在該列表中指出某臺主機(jī)的IP地址,那么訪問該主機(jī)時將無需進(jìn)行DNS解析。
2./etc/host.conf
該文件用來指定域名解析方法的順序,如:
order hosts,bind
它說明,首先通過/etc/hosts文件解析,如果在該文件中沒有相應(yīng)的主機(jī)名與IP地址的對應(yīng)關(guān)系,再通過域名服務(wù)器bind進(jìn)行解析。
3./etc/resolv.conf
在該文件中存放域名服務(wù)器的IP地址。
4./etc/protocols
Red Hat Linux 7.1系統(tǒng)使用該文件辨別本主機(jī)使用的,并通過它完成協(xié)議和協(xié)議號之間的映射,用戶不應(yīng)修改該文件。
5./etc/services
該用戶用于定義現(xiàn)有的網(wǎng)絡(luò)服務(wù),用戶無需修改它,它通常由安裝網(wǎng)絡(luò)服務(wù)的程序來維護(hù)。該文件包括網(wǎng)絡(luò)服務(wù)名、網(wǎng)絡(luò)端口號和使用的協(xié)議類型,其中網(wǎng)絡(luò)端口號和使用的協(xié)議類型之間有一個斜杠分開,在設(shè)置行的最后還可以添加一些服務(wù)的別名。
5./etc/xinetd.d目錄
在Linux系統(tǒng)中有一個超級服務(wù)程序inetd,大部分的網(wǎng)絡(luò)服務(wù)都是由它啟動的,如chargen、echo、finger、talk、 telnet、wu-ftpd等…,在7.0之間的版本它的設(shè)置是在/etc/inetd.conf中配置的,在Red Hat 7.0后,它就改成了一個xinetd.d目錄。
在xinetd.d目錄中,每一個服務(wù)都有一個相應(yīng)的配置文件,我們以telnet為例,說明一下各個配置行的含義:
service telnet
{
socket_type=stream
wait=no
user=root
server=/usr/sbin/in.telnetd
log_on_failure+=USERID
disable=yes
}
第一行,說明該配置用來設(shè)置telnet服務(wù)。
第二行,說明Socket連接類型是stream,也就是TCP
第三行,是指不等待到啟動完成
第四行,是指以root用戶啟動服務(wù)進(jìn)程
第五行,是指服務(wù)進(jìn)程是/usr/sbin/in.telnetd
第六行,是用于做一些出錯日志
第七行,是指禁止遠(yuǎn)方telnet,如果需要開放則將該配置改為:disable=no
修改了xinetd的配置,需要重啟xinetd才能夠生效,有兩種方法可以實(shí)現(xiàn):
1) 執(zhí)行如下命令:
/etc/rc.d/init.d/xinetd restart
2) 執(zhí)行如下命令:
killall –HUP xinetd
5.3 網(wǎng)絡(luò)服務(wù)訪問限制
在Red Hat Linux 7.1中加強(qiáng)了網(wǎng)絡(luò)安全的防范,如果你安裝時安全等級不是在最低一級的話,那么本機(jī)之外的所有訪問都可能被拒絕。這是因?yàn)樵赗ed Hat 7.1中做了一些默認(rèn)的ipchains設(shè)置,這是Linux內(nèi)置的防火墻機(jī)制,它可以使用一些規(guī)則來允許或禁止某種訪問。
它的規(guī)則存放在/etc/sysconfig/ipchains文件中,如果你想讓它暫時不生效,那你可以運(yùn)行/etc/rc.d/init.d/ipchains stop,那么所有的規(guī)則都被取消,所有的網(wǎng)絡(luò)訪問都將被允許。
你可以運(yùn)行/etc/rc.d/init.d/ipchains status來獲知現(xiàn)在對網(wǎng)絡(luò)訪問的限制。關(guān)于這方面的知識,本文限于篇幅無法詳細(xì)介紹,有興趣的讀者可參考《Linux防火墻》一書。
5.4 WEB服務(wù)器
在Linux系統(tǒng)中最適合于做服務(wù)器的當(dāng)數(shù)Apache,Red Hat Linux 7.1中集成了Apache 1.3.19版,你只要在安裝時選中WEB服務(wù)器,那么系統(tǒng)將自動完成Apache服務(wù)器的安裝,在默認(rèn)情況,WWW服務(wù)就已經(jīng)啟動了。
如果你在安裝時沒有選擇WEB服務(wù)器包,那也沒有關(guān)系,你只需執(zhí)行以下命令即可:
1) 將Red Hat Linux 7.1安裝光盤的第一張放入光驅(qū),然后執(zhí)行如下命令:
# mount /mnt/cdrom
2) 轉(zhuǎn)到apache安裝文件所在目錄:
# cd /mnt/cdrom/RedHat/RPMS
3) 使用RPM完成安裝:
# rpm –ivh apache-1.3.19-5.i386.rpm
現(xiàn)在,你就已經(jīng)擁有一個基于Linux的WEB服務(wù)器了,它的配置文件位于/etc/httpd/conf目錄下,你可根據(jù)需要進(jìn)行相應(yīng)的修改,修改完后 執(zhí)行:/etc/rc.d/init.d/httpd restart即可。而WEB服務(wù)的主目錄則在/var/www/html目錄下,你可以將你的WEB頁傳到這里就可以更新了。
而如果每一個用戶都想要擁有一個自己的主頁的話,則:
1) 首先在自己的用戶主目錄下建一個public_html目錄:
# cd
# mkdir public_html
2) 然后將自己的用戶主目錄的權(quán)限改為大家可讀
# chmod 755 用戶主目錄
3) 這樣你就可以使用“localhost/~用戶名/”訪問到每個用戶的主頁了。
5.5 FTP服務(wù)器
在Red Hat Linux 7.1中集成了Wu-FTP 2.6.1做為FTP服務(wù)器,在你安裝時只要選擇了FTP包的話,那么你的
Linux服務(wù)器就是一臺FTP服務(wù)器了,如果當(dāng)時沒有安裝的話,也沒有關(guān)系,跟安裝apache一樣:
1) 將Red Hat Linux 7.1安裝光盤的第一張放入光驅(qū),然后執(zhí)行如下命令:
# mount /mnt/cdrom
2)轉(zhuǎn)到wu-ftp安裝文件所在目錄:
# cd /mnt/cdrom/RedHat/RPMS
3)使用RPM完成安裝:
# rpm –ivh wu-ftp-2.6.1-16.i386.rpm
由于FTP服務(wù)是由xinetd超級服務(wù)器創(chuàng)建的,所以關(guān)于FTP服務(wù)器的配置在/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
}
下面,我們介紹一些關(guān)于FTP服務(wù)器的管理方法:
1、 暫時關(guān)閉FTP服務(wù)
有兩種方法可以使FTP服務(wù)暫停:
1) 以root用戶身份執(zhí)行:
# ftpshut now
這樣就會在/etc目錄下生成一個shutmsg的文件,這時FTP服務(wù)器將無法使用,直到你刪掉這個文件。
2) 修改配置文件/etc/xinetd.d/wu-ftpd,將disable=no改為disable=yes,然后重啟xinetd。
2、 禁止某用戶使用FTP服務(wù)
有兩種方法可以禁止某用戶使用FTP服務(wù)器:
1) 在/etc/ftpuser中寫入該用戶賬號名
2) 在/etc/ftpaccess中寫入一行配置:
deny-uid 用戶名
用這種方法還可以禁止一個組的用戶使用
deny-gid 組名
3、 禁止匿名用戶(anonymous)登錄FTP服務(wù)器
有許多種方法可以實(shí)現(xiàn),但我覺得最簡單有效的方法就是將anonymous寫入配置文件:/etc/ftpuser中,就可了。
5.6 文件服務(wù)器
我們還可以使用Red Hat Linux 7.1內(nèi)置的Samba為局域網(wǎng)內(nèi)的Windows主機(jī)做文件服務(wù)器。如果在安裝系統(tǒng)時選擇了SMB服務(wù)器軟件包的話,那么安裝完以后,Samba服務(wù)就已經(jīng)Ready了。
不過為了方便配置,建議安裝一下swat,它提供了一個WEB界面的配置工具。它的安裝包是第二張光盤的/RedHat/RPMS/samba-swat-2.0.7-36.i386.rpm。
安裝完以后,它會在xinetd.d目錄中新建一個swat文件,其內(nèi)容為:
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,也就是說,現(xiàn)在swat還沒有啟用,因此,我們需要將其改為disable=no,然后重啟xinted。另外,由于這里有一句:
only_from=127.0.0.1
說明只能在本機(jī)使用swat,而如果你想在Windows中用IE來配置的話,請將這句注釋掉或刪掉。
下面,我們以設(shè)置一個大家都可以訪問的homes目錄為例,說明SWAT的設(shè)置方法:
1) 打開IE瀏覽器,在地址欄上輸入Linux的主機(jī)名或IP以及“:901”,例如:
http://192.168.0.1:9012) 如果連接正常,將出一個登錄提示窗,要求輸入用戶名與密碼,在此以root為用戶名,并輸入root用戶的密碼,再單擊確定;
3) 如果輸入無誤,將出現(xiàn)Samba的配置界面:Swat的首頁;
我們可以看到在Swat界面中,最上面有7個圖標(biāo),分別是:HOME(首頁)、GLOBALS(全局設(shè)置)、SHARES(共享設(shè)置)、PRINTERS(打印機(jī))、STATUS(狀態(tài))、VIEW(查看)、PASSWORD(密碼)
4) 首先,我們單擊GLOBALS圖標(biāo),將出現(xiàn)GLOBALS設(shè)置頁面,其中我們對以下幾項(xiàng)進(jìn)行設(shè)置:
Ø BaseOption à Workgroup:在些輸入工作組名(如NetBIOS中的工作組名)
Ø BaseOption à Netbios name:主機(jī)名
Ø SecurityOption à Security:選擇安全等級,在些選擇“SHARE”
Ø SecurityOption à hosts allow:允許的主機(jī),通常寫入你的網(wǎng)絡(luò)號,如192.168.0.
Ø SecurityOption à hosts deny:如果你不讓某臺機(jī)器使用,則寫入它的IP地址
修改完后,點(diǎn)擊“Commit Changes”按鈕(在7個圖標(biāo)的下邊一些),保存設(shè)置。
5) 然后,單擊SHARES圖標(biāo),進(jìn)行共享設(shè)置:
第一步:在Create Share按鈕的右邊文本框中輸入要設(shè)置的共享名
第二步:單擊“Create Share”按鈕;
第三步:確認(rèn)“BaseOptions à Path的值為你想共享的目錄,例如/home/smb/test(注意這必須是已經(jīng)存在的目錄);
第四步:將“SecurityOptions à writeable”的值設(shè)置為Yes,使該目錄共享為可寫;
第五步:將“SecurityOptions à guest ok”的值設(shè)置為Yes,使該目錄無需密碼訪問;
第六步:在“SecurityOptionsàhosts allow、hosts deny”中設(shè)置相應(yīng)的主機(jī)IP;
第七步:將“BrowseOptionsàbrowseable”設(shè)置為Yes,使其便于使用
最后,點(diǎn)擊“Commit Changes”按鈕,保存設(shè)置。
現(xiàn)在,我們就可以在Windows 9x上通過網(wǎng)絡(luò)鄰居訪問到這臺Samba服務(wù)器,并且有一個可讀、可寫的共享目錄。
在平時使用的時間,系統(tǒng)管理員可以點(diǎn)擊“STATUS”按鈕,切換到狀態(tài)頁面對其進(jìn)行監(jiān)測,在這個頁面上,你可以:
1) 啟動(Start smbd按鈕)、停止Samba(Stop Smbd按鈕)服務(wù),以及重啟服務(wù)(Restart smbd按鈕);
2) 另外,你可以看到當(dāng)前與Samba服務(wù)器建立的連接(Active Connections),并且可以按下“X”按鈕,中止它的訪問;
3) 同時你還可以檢測到正在訪問的文件夾(Active Shares),正打開的文件(Open Files)。
Samba服務(wù)還可以對用戶進(jìn)行認(rèn)證,與Window NT域進(jìn)行集成等強(qiáng)大的功能,在些限于篇幅就不詳細(xì)介紹,有興趣的讀者可以參考《實(shí)戰(zhàn)Samba》一書。
后記
通過一段時間的使用,發(fā)現(xiàn)Red Hat Linux 7.1無論安裝還是使用,都越來越注重易用性,大量使用了華麗的圖形界面,大有發(fā)兵桌面之勢。而且集成了大量軟件的最新版,可謂性能卓越,不過可謂“成也 蕭何、敗也蕭何”,我在試用的過程出現(xiàn)了一次啟動KDE時死機(jī)(這可是在以前的版本中難得一見的?。┰煲擦讼到y(tǒng)崩潰,估計(jì)是XFree86 4的BUG造成的。另外,優(yōu)秀的圖形界面使得整個X Window變成十分緩慢,所以說易用性與性能總是無法兩全的。
不管怎么說,從Red Hat Linux 7.1豐富的應(yīng)用軟件,高效的網(wǎng)絡(luò)性能,較好的圖形界面都說明Linux越來越成熟,相信在眾多知名IT廠商的大力扶持下,將迎來美好的明天。