FTP是文件傳輸協議的簡稱,它定義了在網絡上從一台計算機向另一台計算機進行文件傳輸的方式,幾乎所有的常用系統平台都提供FTP的服務程序和客戶程序,Linux使用的FTP服務器是由華盛頓大學開發的wu-ftpd服務程序。
一、 安裝
首先你可以查看位置/usr/sbin/in.ftpd文件是否存在,如果此文件已經存在就表明在此系統中已經安裝了必要的FTP軟件,否則可以從發行套件中取得它的rpm包然後進行安裝(當然要以root的身份登錄)。運行下面的命令行:
# rpm –i wu-ftpd-x.x.x.i386.rpm
如果打算提供匿名訪問的功能則還應安裝另外一個軟件包:
# rpm –i anonftp-x.x.x.i386.rpm
安裝之後,可以簡單的對服務器進行以下測試:
#ftp [hostname]
如果出現正確的連接信息,並且讓你輸入相應的用戶名和密碼,最後進入ftp>提示符,就說明安裝正確。可以在ftp>提示符下鍵入bye以離開FTP。
二、 對FTP的工作說明
每當FTP端口(缺省是21號端口)收到連接申請時,就會調用FTP的控制文件——/etc/inetd.conf,當某一個連接被探測到時,就會調用FTP的守護進程——/usr/sbin/in.ftpd,從而開始會話過程。在服務器初始化的過程中,客戶必須提供有效的帳號和密碼,缺省指定了兩個帳號——anonymous和ftp用來作為對公共文件的訪問。如果你用自己的帳號來訪問FTP服務器的話,FTP服務器將進行一個例行檢查,以確定該用戶具有有效的shell,否則該用戶將被拒絕進入系統。如果想使一個新的shell有效,將之添加到/etc/shells列表當中即可。
使用自己的帳號的用戶進入系統後位於自己的主目錄,而匿名用戶進入系統後缺省位於/home/ftp,之後FTP將執行一個系統調用(chroot),將FTP的根目錄變成用戶的主目錄,對系統中其他目錄的訪問將被拒絕。但這種改變會導致服務器無法看到一些必要的文件,象/etc/passwd和/bin/ls等。為解決這一問題,anonftp包在/home/ftp目錄下創建了bin、etc和lib目錄,並在其中放置了必要的庫和程序。