服務內容 一般來說.用戶
聯網 的首要目的就是實現
信息共享 ,
檔案傳輸 是信息共享非常重要的一個內容之一。
Internet 上早期實現傳輸檔案,並不是一件容易的事,我們知道 Internet是一個非常複雜的計算機環境,有PC,有工作站,有MAC,有
大型機 ,據統計連線在Internet上的計算機已有上千萬台,而這些計算機可能運行不同的
作業系統 ,有運行
Unix 的伺服器,也有運行Dos、Windows的PC機和運行MacOS的蘋果機等等,而各種作業系統之間的檔案交流問題,需要建立一個統一的
檔案傳輸協定 ,這就是所謂的FTP。基於不同的
作業系統 有不同的FTP應用程式,而所有這些
應用程式 都遵守同一種
協定 ,這樣用戶就可以把自己的檔案傳送給別人,或者從其它的用戶環境中獲得檔案。
與大多數
Internet服務 一樣,FTP也是一個
客戶機/伺服器系統 。用戶通過一個支持FTP協定的
客戶機 程式,連線到在遠程
主機 上的FTP伺服器程式。用戶通過
客戶機 程式向伺服器程式發出命令,伺服器程式執行用戶所發出的命令,並將執行的結果返回到
客戶機 。比如說,用戶發出一條命令,要求伺服器向用戶傳送某一個檔案的一份
拷貝 ,伺服器會回響這條命令,將指定檔案送至用戶的機器上。
客戶機 程式代表用戶接收到這個檔案,將其存放在用戶目錄中。
軟體使用 在FTP的使用當中,用戶經常遇到兩個
概念 :"
下載 "(Download)和"
上傳 "(Upload)。"下載"檔案就是從遠程主機
拷貝 檔案至自己的計算機上;"上傳"檔案就是將檔案從自己的計算機中拷貝至遠程主機上。用Internet語言來說,用戶可通過
客戶機 程式向(從)遠程
主機 上傳 (
下載 )檔案。
使用FTP時必須首先登錄,在遠程
主機 上獲得相應的許可權以後,方可上傳或
下載 檔案。也就是說,要想同哪一台計算機傳送檔案,就必須具有哪一台計算機的適當授權。換言之,除非有用戶ID和口令,否則便無法傳送檔案。這種情況違背了Internet的
開放性 ,Internet上的FTP
主機 何止千萬,不可能要求每個用戶在每一台主機上都擁有帳號。
匿名FTP 就是為解決這個問題而產生的。
匿名FTP是這樣一種機制,用戶可通過它連線到遠程
主機 上,並從其
下載 檔案,而無需成為其註冊用戶。
系統管理員 建立了一個特殊的用戶ID,名為anonymous,
Internet 上的任何人在任何地方都可使用該用戶ID。
通過FTP
程式連線 匿名FTP
主機 的方式同連線普通FTP主機的方式差不多,只是在要求提供
用戶標識 ID時必須輸入anonymous,該用戶ID的口令可以是任意的字元串。習慣上,用自己的
E-mail 地址作為口令,使
系統維護 程式能夠記錄下來誰在存取這些
檔案 。
值得注意的是,匿名FTP不適用於所有Internet
主機 ,它只適用於那些提供了這項服務的
主機 。
當遠程
主機 提供匿名FTP服務時,會指定某些目錄向公眾開放,允許匿名存取。系統中的其餘目錄則處於隱匿狀態。作為一種安全措施,大多數匿名FTP主機都允許用戶從其
下載 檔案,而不允許用戶向其
上載 檔案,也就是說,用戶可將匿名FTP主機上的所有檔案全部
拷貝 到自己的機器上,但不能將自己機器上的任何一個檔案拷貝至匿名FTP主機上。即使有些匿名FTP
主機 確實允許用戶
上載 檔案,用戶也只能將檔案上載至某一指定上載目錄中。隨後,
系統管理員 會去檢查這些檔案,他會將這些檔案移至另一個公共
下載 目錄中,供其他用戶下載,利用這種方式,遠程
主機 的用戶得到了保護,避免了有人
上傳 有問題的檔案,如帶病毒的檔案。
作為一個Internet用戶,可通過FTP在任何兩台Internet
主機 之間
拷貝 檔案。但是,實際上大多數人只有一個Internet帳戶,FTP主要用於
下載 公共檔案,例如共享
軟體 、各公司技術支持檔案等。
Internet上有成千上萬台匿名FTP
主機 ,這些主機上存放著數不清的檔案,供用戶免費
拷貝 。實際上,幾乎所有類型的信息,所有類型的
電腦程式 都可以在Internet上找到。這是Internet吸引我們的重要原因之一。
匿名FTP使用戶有機會存取到世界上最大的
信息庫 ,這個信息庫是
日積月累 起來的,並且還在不斷增長,永不關閉,涉及到幾乎所有主題。而且,這一切是免費的。
匿名FTP是
Internet 網上發布
軟體 的常用方法。Internet之所以能延續到今天,是因為人們使用通過標準協定提供標準服務的程式。像這樣的程式,有許多就是通過匿名FTP發布的,任何人都可以存取它們。
Internet中的有數目巨大的匿名FTP
主機 以及更多的檔案,那么到底怎樣才能知道某一特定檔案位於哪個匿名FTP主機上的那個目錄中呢?這正是 Archie伺服器所要完成的工作。Archie將自動在FTP
主機 中進行搜尋,構造一個包含全部
檔案目錄 信息的資料庫,使你可以直接找到所需檔案的位置信息。
軟體種類 Server-U Serv-U 是一種被廣泛運用的FTP伺服器端
軟體 ,支持3x/9x/ME/NT/2K/2000/xp等全Windows系列。可以設定多個FTP伺服器、限定登錄用戶的許可權、登錄主目錄及空間大小等,功能非常完備。 它具有非常完備的
安全特性 ,支持SSl FTP傳輸,支持在多個Serv-U和FTP
客戶端 通過SSL加密連線保護您的
數據安全 等。
server-u Serv-U 是眾多的FTP
伺服器軟體 之一。通過使用Serv-U,用戶能夠將任何一台PC 設定成一個FTP 伺服器,這樣,用戶或其他使用者就能夠使用FTP 協定,通過在同一網路上的任何一台PC與FTP 伺服器連線,進行檔案或目錄的複製,移動,創建,和刪除等。這裡提到的FTP 協定是專門被用來規定計算機之間進行
檔案傳輸 的標準和規則,正是因為有了象FTP 這樣的專門協定,才使得人們能夠通過不同類型的計算機,使用不同類型的
作業系統 ,對不同類型的檔案進行相互傳遞。
FileZilla 是一款經典的開源FTP解決方案,包括
FileZilla 客戶端 和FileZillaServer。其中,FileZillaServer的功能比起商業
軟體 FTP Serv-U毫不遜色。無論是傳輸速度還是安全性方面,都是非常
優秀 的一款。
FileZilla_Server
VsFTP VSFTP 是一個基於GPL發布的類Unix系統上使用的FTP
伺服器軟體 ,它的全稱是Very Secure FTP 從此名稱可以看出來,編制者的初衷是代碼的安全。
安全性是編寫
VSFTP 的初衷,除了這與生俱來的
安全特性 以外,高速與高穩定性也是VSFTP的兩個重要特點。
在穩定方面,
VSFTP 就更加的出色,VSFTP在單機(非
集群 )上支持4000個以上的並發用戶同時連線,根據Red Hat的Ftp伺服器的數據,VSFTP伺服器可以支持15000個並發用戶.
IIS FTP Windows Server 2003中配置FTP伺服器 在Windows Server 2003系統中配置FTP伺服器的方法:
第1步,在
開始選單 中依次單擊“管理工具”→“Internet信息服務(IIS)管理器”選單項,打開“Internet信息服務(IIS)管理器”視窗。在左窗格中展開“FTP站點”目錄,右鍵單擊“默認FTP站點”選項,並選擇“屬性”命令。
第2步,打開“默認FTP站點 屬性”對話框,在“FTP站點”選項卡中可以設定關於FTP站點的參數。其中在“FTP站點標識”區域中可以更改FTP站點名稱、監聽IP位址以及TCP
連線埠號 ,單擊“IP位址”編輯框右側的下拉三角按鈕,並選中該站點要綁定的IP位址。如果想在同一台物理伺服器中搭建多個FTP站點,那么需要為每一個站點指定一個IP位址,或者使用相同的IP位址且使用不同的
連線埠號 。在“FTP站點連線”區域可以限制連線到FTP站點的計算機數量,一般在區域網路內部設定為“不受限制”較為合適。用戶還可以單擊“當前會話”按鈕來查看當前連線到FTP站點的IP位址,並且可以斷開惡意用戶的連線。
第3步,切換到“安全賬戶”選項卡,此選項卡用於設定FTP伺服器允許的登錄方式。默認情況下允許
匿名登錄 ,如果取消選中“允許匿名連線”
複選框 ,則用戶在登錄FTP站點時需要輸入合法的用戶名和密碼。本例選中“允許匿名連線”
複選框 。
第4步,切換到“訊息”選項卡,在“標題”編輯框中輸入能夠反映FTP站點屬性的文字(如“
伺服器配置 技術務網FTP主站點”),該標題會在用戶登錄之前顯示。接著在“歡迎”編輯框中輸入一段介紹FTP站點詳細信息的文字,這些信息會在用戶成功登錄之後顯示。同理,在“退出”編輯框中輸入用戶在退出FTP站點時顯示的信息。另外,如果該FTP伺服器限制了
最大連線數 ,則可以在“最大連線數”編輯框中輸入具體數值。當用戶連線FTP站點時,如果FTP伺服器已經達到了所允許的
最大連線數 ,則用戶會收到“最大連線數”訊息,且用戶的連線會被斷開。
第5步,切換到“主目錄”選項卡。主目錄是FTP站點的根目錄,當用戶連線到FTP站點時只能訪問主目錄及其子目錄的內容,而主目錄以外的內容是不能被用戶訪問的。主目錄既可以是本地計算機磁碟上的目錄,也可以是網路中的已分享資料夾。單擊“瀏覽”按鈕在本地計算機磁碟中選擇要作為FTP站點主目錄的資料夾,並依次單擊“確定”按鈕。根據實際需要選中或取消選中“寫入”
複選框 ,以確定用戶是否能夠在FTP站點中寫入數據。
第6步,切換到“目錄安全性”選項卡,在該選項卡中主要用於授權或拒絕特定的IP位址連線到FTP站點。例如只允許某一段IP位址範圍內的計算機連線到FTP站點,則應該選中“拒絕訪問”
單選框 。然後單擊“添加”按鈕,在打開的“授權訪問”對話框中選中“一組計算機”
單選框 。然後在“
網路標識 ”編輯框中輸入特定的
網段 ),並在“
子網掩碼 ”編輯框中輸入子網掩碼。最後單擊“確定”按鈕。
IISFTP 第7步,返回“默認FTP站點 屬性”對話框,單擊“確定”按鈕使設定生效。現在用戶已經可以在網路中任意客戶計算機的Web瀏覽器中輸入FTP站點地址來訪問FTP站點的內容了。
工作模式 FTP是僅基於TCP的服務,不支持UDP。與眾不同的是FTP使用2個連線埠,一個數據連線埠和一個命令連線埠(也可叫做控制連線埠)。通常來說這兩個連線埠是21(命令連線埠)和20(數據連線埠)。但FTP 工作方式的不同,數據連線埠並不總是20。這就是主動與被動FTP的最大不同之處。主要有兩種工作模式:
主動FTP 即Port模式,客戶端從一個任意的非特權連線埠N(N>1024)連線到FTP伺服器的命令連線埠,也就是21連線埠。然後客戶端開始監聽連線埠N+1,並傳送FTP命令“port N+1”到FTP伺服器。接著伺服器會從它自己的數據連線埠(20)連線到客戶端指定的數據連線埠(N+1)。 針對FTP伺服器前面的防火牆來說,必須允許以下通訊才能支持主動方式FTP: 1. 任何大於1024的連線埠到FTP伺服器的21連線埠。(客戶端初始化的連線) 2. FTP伺服器的21連線埠到大於1024的連線埠。 (伺服器回響客戶端的控制連線埠) 3. FTP伺服器的20連線埠到大於1024的連線埠。(伺服器端初始化數據連線到客戶端的數據連線埠) 4. 大於1024連線埠到FTP伺服器的20連線埠(客戶端傳送ACK回響到伺服器的數據連線埠)
被動FTP 為了解決伺服器發起到客戶的連線的問題,人們開發了一種不同的FTP連線方式。這就是所謂的被動方式,或者叫做PASV,當客戶端通知伺服器它處於被動模式時才啟用。 在被動方式FTP中,命令連線和數據連線都由客戶端發起,這樣就可以解決從伺服器到客戶端的數據連線埠的入方向連線被防火牆過濾掉的問題。 當開啟一個 FTP連線時,客戶端打開兩個任意的非特權本地連線埠(N > 1024和N+1)。第一個連線埠連線伺服器的21連線埠,但與主動方式的FTP不同,客戶端不會提交PORT命令並允許伺服器來回連它的數據連線埠,而是提交 PASV命令。這樣做的結果是伺服器會開啟一個任意的非特權連線埠(P > 1024),並傳送PORT P命令給客戶端。然後客戶端發起從本地連線埠N+1到伺服器的連線埠P的連線用來傳送數據。 對於伺服器端的防火牆來說,必須允許下面的通訊才能支持被動方式的FTP: 1. 從任何大於1024的連線埠到伺服器的21連線埠 (客戶端初始化的連線) 2. 伺服器的21連線埠到任何大於1024的連線埠 (伺服器回響到客戶端的控制連線埠的連線) 3. 從任何大於1024連線埠到伺服器的大於1024連線埠 (客戶端初始化數據連線到伺服器指定的任意連線埠) 4. 伺服器的大於1024連線埠到遠程的大於1024的連線埠(伺服器傳送ACK回響和數據到客戶端的數據連線埠)
總結 在主動模式下: FTP伺服器的控制連線埠是21,數據連線埠是20,所以在做靜態映射的時候只需要開放21連線埠即可,他會用20連線埠和客戶端主動的發起連線。
在被動模式下: FTP伺服器的控制連線埠是21,數據連線埠是隨機的,且是客戶端去連線對應的數據連線埠,所以在做靜態的映射話只開放21連線埠是不可以的。此時需要做DMZ。