工作原理
文件傳輸協議(FTP)是TCP/IP提供的标準機制,用來将文件從一個主機複制到另一個主機。FTP使用TCP的服務。
用戶分類
Real帳戶n這類用戶是指在FTP服務上擁有帳号。當這類用戶登錄FTP服務器的時候,其默認的主目錄就是其帳号命名的目錄。但是,其還可以變更到其他目錄中去。如系統的主目錄等等。nGuest用戶n在FTP服務器中,我們往往會給不同的部門或者某個特定的用戶設置一個帳戶。但是,這個賬戶有個特點,就是其隻能夠訪問自己的主目錄。服務器通過這種方式來保障FTP服務上其他文件的安全性。這類帳戶,在Vsftpd軟件中就叫做Guest用戶。擁有這類用戶的帳戶,隻能夠訪問其主目錄下的目錄,而不得訪問主目錄以外的文件。nAnonymous用戶n這也是我們通常所說的匿名訪問。這類用戶是指在FTP服務器中沒有指定帳戶,但是其仍然可以進行匿名訪問某些公開的資源。n在組建FTP服務器的時候,我們就需要根據用戶的類型,對用戶進行歸類。默認情況下,Vsftpd服務器會把建立的所有帳戶都歸屬為Real用戶。但是,這往往不符合企業安全的需要。因為這類用戶不僅可以訪問自己的主目錄,而且,還可以訪問其他用戶的目錄。這就給其他用戶所在的空間帶來一定的安全隐患。所以,企業要根據實際情況,修改用戶所在的類别。
傳輸方式
FTP的傳輸有兩種方式:ASCII、二進制。
ASCII傳輸方式n假定用戶正在拷貝的文件包含的簡單ASCII碼文本,如果在遠程機器上運行的不是UNIX,當文件傳輸時ftp通常會自動地調整文件的内容以便于把文件解釋成另外那台計算機存儲文本文件的格式。n但是常常有這樣的情況,用戶正在傳輸的文件包含的不是文本文件,它們可能是程序,數據庫,字處理文件或者壓縮文件。在拷貝任何非文本文件之前,用binary 命令告訴ftp逐字拷貝。n二進制傳輸模式n在二進制傳輸中,保存文件的位序,以便原始和拷貝的是逐位一一對應的。即使目的地機器上包含位序列的文件是沒意義的。例如,macintosh以二進制方式傳送可執行文件到Windows系統,在對方系統上,此文件不能執行。n如在ASCII方式下傳輸二進制文件,即使不需要也仍會轉譯。這會損壞數據。(ASCII方式一般假設每一字符的第一有效位無意義,因為ASCII字符組合不使用它。如果傳輸二進制文件,所有的位都是重要的。)
匿名
默認狀态下,FTP 站點允許匿名訪問,FTP 服務器接受對該資源的所有請求,并且不提示用戶輸入用戶名或密碼。如果站點中存儲有重要的或敏感的信息,隻允許授權用戶訪問,應禁止匿名訪問。n使用FTP時必須首先登錄,在遠程主機上獲得相應的權限以後,方可下載或上傳文件。也就是說,要想同哪一台計算機傳送文件,就必須具有哪一台計算機的适當授權。換言之,除非有用戶ID和口令,否則便無法傳送文件。這種情況違背了Internet的開放性,Internet上的FTP主機何止千萬,不可能要求每個用戶在每一台主機上都擁有帳号。匿名FTP就是為解決這個問題而産生的。n匿名FTP是這樣一種機制,用戶可通過它連接到遠程主機上,并從其下載文件,而無需成為其注冊用戶。系統管理員建立了一個特殊的用戶ID,名為anonymous, Internet上的任何人在任何地方都可使用該用戶ID。n通過FTP程序連接匿名FTP主機的方式同連接普通FTP主機的方式差不多,隻是在要求提供用戶标識ID時必須輸入anonymous,該用戶ID的口令可以是任意的字符串。習慣上,用自己的E-mail地址作為口令,使系統維護程序能夠記錄下來誰在存取這些文件。n值得注意的是,匿名FTP不适用于所有Internet主機,它隻适用于那些提供了這項服務的主機。n當遠程主機提供匿名FTP服務時,會指定某些目錄向公衆開放,允許匿名存取。系統中的其餘目錄則處于隐匿狀态。作為一種安全措施,大多數匿名FTP主機都允許用戶從其下載文件,而不允許用戶向其上傳文件,也就是說,用戶可将匿名FTP主機上的所有文件全部拷貝到自己的機器上,但不能将自己機器上的任何一個文件拷貝至匿名FTP主機上。即使有些匿名FTP主機确實允許用戶上傳文件,用戶也隻能将文件上傳至某一指定上傳目錄中。随後,系統管理員會去檢查這些文件,他會将這些文件移至另一個公共下載目錄中,供其他用戶下載,利用這種方式,遠程主機的用戶得到了保護,避免了有人上傳有問題的文件,如帶病毒的文件。



















