FTP服務安裝與端口說明
1. FTP服務介紹
1.1 什么是FTP
FTP(File Transfer Protocol)是文件傳送協議的英文縮寫,是用於Internet上的控制文件的雙向傳輸的協議。同時,它也是一個應用程序。用戶可以通過它把自己的PC機與世界各地所有運行FTP協議的服務器相連,允許用戶在計算機之間傳送文件,並且文件的類型不限,可以是文本文件也可以是二進制可執行文件、聲音文件、圖像文件、數據壓縮文件等等。
1.2 FTP服務端口
- 20端口,數據傳輸端口,用來上傳下載
- 21端口,命令傳輸端口,用來傳輸命令
2 安裝FTP服務器
配置說明:windows 2012R2
2.1 添加服務器角色
進入服務器管理器界面,選擇添加角色和功能

2.2 安裝類型選擇
點擊左邊“安裝類型”,然后單擊“基於角色或基於功能的安裝”,再單擊“下一步(N)”

2.3 服務器選擇
先單擊“從服務器池中選擇服務器”,再單擊“本服務器的計算機名”,這個ip上只有本機,所以直接單擊“下一步(N)”;
2.4 服務器角色選擇
選擇Web 服務器(IIS)安裝 FTP服務器

下一步直到安裝完成。

安裝完成。
3 FTP站點搭建
3.1 添加FTP站點
- 打開ISS管理器

- 從網站選項,點擊右側的添加FTP站點

- 填寫站點名稱和物理路徑
FTP站點名稱可以任意取,內容目錄為服務器上提供上傳、下載文件保存目錄。
站點名稱:自定義
物理路徑:即FTP上傳下載文件的保存目錄
填寫站點名稱與物理路徑后,下一步

3.2 FTP站點配置
3.2.1 ssl配置
IP地址:可以選取指定IP,也可以默認,
端口號:默認21,
需要ssl認證的:勾選允許ssl,導入ssl證書;不需要的就選擇無ssl(默認情況無ssl),
勾選下面“自動啟動FTP站點”,其他按圖片填寫即可,下一步

3.2.2 身份驗證和授權信息配置
身份認證 基本 : 登錄時提供相應的用戶名和口令,當用戶不知道對方計算機的用戶名和口令時就無法使用FTP服務。需要在FTP身份驗證中開啟授權
按需求填寫,不知道怎么填的按照圖片填寫即可。

如圖,ftp站點添加完畢

3.3 測試連接ftp
瀏覽器測試,輸入指定用戶賬號密碼后正常
備注:如果無法連接,關閉防火牆后測試

3 FTP站點基本配置
配置ftp站點

3.1 IP地址限制
可添加允許或拒絕的特定IP地址或者范圍

3.2 SSL安全設置
配置ssl

3.3 查看當前ftp會話連接
查看當前連接ftp的會話

3.4 FTP被動模式端口范圍限制
如何限制ftp服務端被動模式端口

填寫端口范圍與對外IP,填寫完畢點擊右側應用保存配置

3.5 FTP用戶授權規則(訪問控制)
配置目錄訪問權限,指定用戶或組訪問目錄

4 修改FTP服務默認端口
4.1 修改默認21端口
21端口是FTP的命令傳輸端口,用於與
20端口是FTP的數據傳輸端口 只有客戶端使用主動模式時才使用20端口.
==在主動模式中,FTP的兩個端口是相對固定的,如果命令端口是x的話,那數據端口就是x-1,也就是說默認情況下,命令端口是21,數據端口就是20;你把命令端口改成了123,那么數據端口就是122 ==
修改FTP的21端口為123端口
1,修改端口
在網站欄目選中需要修改的ftp站點,右鍵選擇綁定;在網站綁定欄目選中需要修改的ftp后,選擇編輯,修改21端口為123端口,確定保存

2,開放防火牆
端口修改完畢后,需要修改防火牆規則,將123端口和與之對應的數據傳輸端口122開放
4.2 修改被動模式隨機端口范圍
被動模式 : FTP客戶端連接服務端收到 Pasv命令后,隨機打開一個高端端口(端口號大於1024)並且通知客戶端在這個端口上傳送數據的請求,客戶端連接FTP服務器此端口,然后FTP服務 器將通過這個端口進行數據的傳送,這個時候FTP
server不再需要建立一個新的和客戶端之間的連接。
在ISS頁面點擊防火牆支持,修改數據端口


修改完畢后記得開放修改后的數據傳輸防火牆端口
5 FTP工作模式詳解
FTP支持兩種模式
Standard PORT方式,主動方式 Standard模式FTP的客戶端發送PORT命令到FTP服務端
Passive PASV方式,被動方式 Passive模式FTP的客戶端發送PASV命令到FTP服務端
5.1 主動模式
在主動模式下,FTP客戶端隨機開啟一個大於1024的端口N向 服務端命令端口(通常是21) 發起連接,然后開放N+1號端口進行監聽,並向服務端發出PORT N+1命令。服務端接收到命令后,使用服務端數據端口(通常是20) 來連接客戶端指定的端口N+1,進行數據傳輸。
在主動模式中,FTP的兩個端口是相對固定的,如果命令端口是x的話,那數據端口就是x-1,也就是說默認情況下,命令端口是21,數據端口就是20;你把命令端口改成了123,那么數據端口就是122
主動模式時:服務端需要開啟21端口作為命令傳輸端口,開啟20端口作為數據傳輸端口
5.2 被動模式
在被動模式下,FTP客戶端隨機開啟一個大於1024的端口N向服務端命令端口21發起連接,同時會開啟N+1號端口。然后向服務端發送PASV命令,通知服務端自己處於被動模式。服務端收到命令后,會開放一個大於1024的端口P進行監聽,然后用PORT P命令通知客戶端,自己的數據端口是P。客戶端收到命令后,會通過N+1號端口連接服務器的端口P,然后在兩個端口之間進行數據傳輸。
被動模式時:服務端需要開啟21端口作為命令傳輸端口,開啟一個隨機大於1024的端口作為數據傳輸端口(不限制數據端口的情況)
被動模式中數據端口的范圍是可以自定義的 (詳見章節4.2)


