匿名檔案傳輸協定

匿名檔案傳輸協定

匿名檔案傳輸協定(Anonymous File Transfer Protocol),簡稱匿名FTP,又稱不具名FTP、無名FTP。它具有一個稱為“匿名(anonymous)”的特殊註冊賬戶,用戶用這個名字去登錄,用自己的電子函件地址作為口令去進行訪問,便可獲得網上公開發布的檔案。

FTP

通常情況下,計算機聯網的主要目的是實現資源共享,包括信息資源、硬體資源、軟體資源的共享等,以方便人與人之間更廣泛的溝通交流,其中檔案傳輸是信息共享非常重要的內容和手段之一。網際網路上早期實現傳輸檔案,並不是一件容易的事,隨著網際網路的不斷發展,連線網際網路的計算機已無法統計,而且運行各種不同的作業系統,而要完成各種作業系統之間的檔案傳輸問題,就需要建立一個統一的檔案傳箱協定,這就是所謂的FTP(File Transfer Protocol檔案傳輸協定)。

FTP協定

檔案傳輸協定(FTP)是在TCP/IP網路上兩台計算機之間傳送檔案的協定,也是TCP/IP網路和INTERNET上最早使用的協定之一,它位於網路協定組的套用層。FTP使用TCP生成一個虛擬連線用於控制信息,然後再生成一個單獨的TCP連線用於數據傳輸。

FTP工作原理

與許多網際網路套用一樣,FTP服務也是一個客戶機用反務器系統(C/S)。用戶通過一個支持FTP協定的客戶端程式,連線到遠程主機上的FTP伺服器程式。用戶通過客戶端程式向伺服器程式發出命令,伺服器程式執行用戶所發出的命令,並將執行的結果返回到客戶端。

以檔案下載為例,當啟動FTP客戶端程式從遠程計算機下載檔案時,事實上啟動了兩個程式:一個本機上的FTP客戶端程式,它向FTP伺服器提出拷下載檔案的請求;另一個是啟動了遠程計算機的上的FTP伺服器程式,它回響你的請求並將指定的檔案傳送到你的計算機中。目前,FTP的套用軟體有很多,如伺服器端的有Server-U、FileZilla等,客戶端的有CuteFtp 、 FlashFTP等,極大的方便了用戶的使用。

匿名FTP

背景

用戶使用FTP時必須首先登錄,在遠程FTP伺服器上獲得相應的許可權以後,才能夠上載或下載檔案。也就是說,只有輸人用戶帳號和口令,否則無法傳送檔案。而這種情況違背了網際網路的開放性,網際網路上的FTP伺服器成千上萬,不可能要求每個用戶在每台FTP伺服器上都擁有帳號。這樣,便有了匿名FTP的概念和套用。

工作機制

匿名FCP是這樣一種機制,用戶可通過它連線到遠程FTP伺服器上,進行檔案的上傳或下載,而不需要成為其註冊用戶。系統管理員建立一個特殊的用戶帳號(匿名帳號),一般名為anonymous或助,網際網路上的任何人在任何地方都可使用該用戶的帳號。

通過FTP程式連線匿名FTP伺服器的方式同連線普通FTP伺服器的方式類似,只是在要求提供用戶帳號時必須輸人anonymous或ftP,而該用戶帳號的口令可以是任意的字元。

當遠程伺服器提供匿名FTP服務時,會預先指定某些目錄及檔案向公眾開放,允許匿名用戶的存取,而系統中的其餘目錄則處於隱匿狀態。作為一種安全措施,大多數匿名FTP伺服器都只允許用戶下載檔案,而不允許用戶上傳檔案。

創建匿名FTP伺服器的方法

(1)增加新用戶ftp,設定其主目錄對任何用戶都無寫許可權;

(2)新建立一個組anonymou,它只能被匿名ftp使用;

(3)在ftp用戶的主目錄下創建一個bin目錄,它屬於root用戶,而且對任何用戶都不能寫;

(4)在ftp用戶主目錄下創建一個etc目錄,它屬於root用戶,而且對任何用戶都不能寫;

(5)在ftp用戶主目錄下創建一個public目錄,它屬於ftp用戶,而且對任何用戶都能寫。如果由於安全等原因,不允許其他用戶在您的計算機上具有存儲能力,那么可以將其許可權設定成555;

(6)將ls程式放到已創建的bin目錄下,並將其修改成111方式,即對任何用戶只能執行;

(7)在已創建的etc目錄下,創建passwd和group兩個檔案,並將它們設定成444方式(唯讀)。

匿名FTP的建立示例

不同作業系統環境下匿名FTP服務的建立可能略有不同,下面以AIX為例介紹Unix環境下匿名FTP伺服器的建立及其套用。

以下所有操作都必須在root登錄環境下執行。

(1)增加匿名用戶ftp(可以設定為anonymous等其他名字),設定其主目錄為root所有且對任何用戶都無寫許可權。

mkuser home="/home/ftp" ftp

chmod 555小ome/ftp

chown root /home/ftp

設定匿名用戶ftp的主目錄為/home/ftp,強烈建議主目錄不要建在/etc、/bin、/usr、/usr/bin、/dev之下。

(2)在ftP用戶的主目錄下創建一個bin目錄,它屬於root用戶,而且對任何用戶都不能寫。

cd /home/frp

mkdir bin

chown root bin

chgrp system /home/,tp/bin

chmod 555 /home/ftp/bin

(3)將ls程式放到已創建的bin目錄下,並將其修改成111方式,即對任何用戶只能執行。

cp /bin/ls /home/frplbin/ls

chmod 111 /home/ftp/bin/ls

(4)在ftp用戶主目錄下創建一個etc目錄,它屬於root用戶,而且對任何用戶都不能寫。

mkdir etc

chown root etc

chmod S55 etc

chirp system /home/ftp/etc

(5)在ftp用戶主目錄下創建一個pub目錄,對任何用戶都能讀寫,用於存放可供公共用戶存取的文檔。如果由於安全等原因,不允許其他用戶在計算機上具有存儲能力,那么可以將其許可權設定成555:

mkdir pub

chmod 777 pub

(或chmod 555 pub)

chgrp system /home/ftp/pub

(6)在ftp用戶主目錄下創建一個lib目錄,它屬於root用戶,而且對任何用戶都不能寫,再考人必要的庫檔案。

mkdir lib

chmod 555 lib

chown root lib

chgrp system /home/ftp/lib

cp /lib/libc.a lib/libc.a

cp /lib/libcurses.a lib/libcurses.a

cp /lib/libcrypt.a lib/libcrypt.a

(7)停止、啟動ftpd守護進程,使以上改動生效。

stop src -t ftp

start src -t ftp

相關詞條

熱門詞條

聯絡我們