Linux 版 (精华区)
发信人: don (逍遥物外·造极登峰), 信区: Linux
标 题: FTP服務器的配置
发信站: 哈工大紫丁香 (2000年10月23日20:47:02 星期一), 站内信件
FTP服務器的配置
在典型的UNIX系統中都有很多的服務在運行。而且沒一個服務都以進程的方式運行
,例如:FTP、Telnet等。這些進程的啟動腳本都在/etc/rc.d中。但是由于每一個
進程的的服務過程,都差不多,如:創建一個套接口,綁定一個眾周所知的端口,
等待TCP或UDP數据報,當受到一個連接時,就fork一個子進程,子進程為當前的客
戶服務,父進程仍然在等待其他的客戶的連接。從上面的分析我們可以看到,這些
進程在進行者一种重复性工作,因此FREE BSD4.3版本就提供了一個Inetd的超級服
務進程,該進程是使這些服務得到了簡化,將一些重复性的工作,都由inetd來代
替。當inetd進程啟動后,就一直偵听TCP和UDP端口,只要有客戶請求連接,
inetd就啟動相應的服務程序,當用戶取消連接時,inetd就自動地將該進程kill掉
。這樣听起來,好象很适合我們的一些低檔的机器的運行一個internet站點,的确
是這樣的。
講了這么多,你肯定會問,怎樣配置inetd呢?
其實很簡單,它的配置文件就是/etc/inetd.conf,唉!!有涉及到配置文件的語
法了,對在linux下的确很多東西都需要直接編輯它的配置文件,但是inetd.conf
的語法很簡單,如下面的例子:
ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd 每l 每a
telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd
該文件的一般格式為:
service socket_type proto flags user server_path server_args
各個字段的解釋如下:(參考NET-3.HOWTO)
service:
所請求的服務与/etc/services的文件內容一致;
socket_type:
該字段描述了套接字的類型,他所允許的值有:stream,dgram,raw,rdm或
seqpacket。一般而言,与tcp有關的用stream(數据流),与udp有關的用dgram(
數据報),一般很少用其他的類型。
Proto:
這個端口有效的協議,与/etc/services文件的內容一致。
Flags:
這個字段有兩种可能的設置:nowait/wait。該設置告訴inetd,是否在啟動了的套
接字之后釋放該套接字,這樣就可以讓inetd是否在啟動另一個客戶請求是等待還
是繼續,一般來說:tcp的設置為nowait,unp的設置為wait。
User:
這個用戶名必須在/etc/passwd中存在,這主要是告訴系統誰是該服務的所有者,
為了安全問題,可以設置為nobody,但是一般的設置為root,這主要是因為,許多
服務程序需要root的權限來正确的啟動該程序。
Server_path:
這個字段為了提供該服務程序的名稱(包括路徑名)。
Server_flags:
該字段包括了所有剩下的所有行和選項,你可以放置任何命令參數,以告訴服務模
塊做怎樣的服務。
下面我們介紹一下FTP服務器的安裝和設置:
我們需要的軟件包:inetd超級服務程序在netkit-base.rpm軟件包中,還有,
Redhat6.0中的默認安裝的FTP服務程序為wu-ftpd,所需要的軟件包為wu-ftpd.
rpm,如果你還想讓你的网站,有一個匿名ftp服務的功能,你還可以安裝
anonftp.rpm軟件包。
安裝過程的命令如下:
rpm 每iv netkit-base.rpm
rpm 每iv wu-ftpd.rpm
rpm 每iv anonftp.rpm
安裝完畢之后再看看,你的/etc/inetd.conf文件的設置,因該將下列一行去掉注
釋:
ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd 每l 每a
該ftp服務器的配置文件如下:
/etc/ftpaccess
/etc/ftpgroups
/etc/ftpusers
/etc/ftphosts
其中/etc/ftpaccess是最重要的文件,該文件的詳細的配置命令你可以通過man來
詳細閱讀。由于內容太多這里不再說明。J
下面介紹一下in.ftpd后的參數:
-d/v: 將ftpd的bugs寫入syslog中;
-l 記錄用戶的訪問日志;
-a 再ftpd啟動時讀取/etc/ftpaccess文件;
-A 再ftpd啟動時不讀取/etc/ftpaccess文件;
-L 將命令行中的信息登記到系統日志中,該選項被ftpaccess文件重載;
-i 將信息登記到xferlog中;
-W 將用戶的登錄信息登記到wtmp中;
-s ftpd將作為一個獨立的服務器運行,想在BSD4.3版本之前的運行方式;
參考:
NET3-HOWTO
Man ftpaccess
Man ftpd
FAQ: http://www.hvu.nl/~koos/wu-ftpd-faq.html或http://member.zz.ha.
cn/~lyndon/cai/wu-ftpd.html
http://www.landfield.com/wu-ftpd/
------------------------------------------------------------------------
--------
Copyright ?Chinese International Net ONline(CINON)
--
一条驿路,一种氛围。
一朵梨花,一种思考。
希望能在Linux这条驿路上与你同行!
※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: PR-AI.hit.edu.cn]
※ 修改:·don 於 10月23日20:47:31 修改本文·[FROM: PR-AI.hit.edu.cn]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:4.240毫秒