【阿里雲】windows 2012R2 ftp服務搭建圖文全過程及主被模式理解

題外話:相信拿到阿里雲服務器,首先要配置的就是ftp服務(本地的項目要上傳到服務器上線啊),對於一個剛入門小白來講,官方給的文檔根本不足以完整的跑起來ftp服務。html

正體:瀏覽器

一:服務器上配置ftp服務安全

①服務器管理器上安裝ftp服務服務器

 

 

 ②進入iis配置ftp服務站點網絡

 

 

 

 

 

 至此,ftp的基本安裝完成了,但在阿里雲上根本跑不起來!!併發

2、端口的配置tcp

①有一點了解的可能會知道,開放阿里雲安全組的20/21端口,固然要開啓,但你開啓後使用FileZilla依然鏈接不上!工具

 

 

 

出現下列報錯阿里雲

狀態: 已登陸
狀態: 讀取目錄列表...
狀態: 服務器發回了不可路由的地址。使用服務器地址代替。spa

②開放1024-65535端口能夠解決上述問題,順利鏈接

 

 ③至此基本的ftp服務可使用,你可能擔憂本身開放了這麼多端口,可是這樣是傳輸文件最安全的方式。

拓展一:

ftp客戶端filezilla下載地址:https://filezilla-project.org/

 

 

拓展二:ftp主動模式與被動模式理解

FTP 主動模式
1.客戶端用大於1024的高位端口發起初始化鏈接到vsftp服務器的21端口
2.vsftp服務器的21端口主動與客戶端大於1024的高位端口創建控制鏈接
3.vsftp服務器的20端口主動與客戶端大於1024的高位端口初始化數據鏈接
4.最後客戶端才使用大於1024的高位端口響應FTP服務端的20端口。
從上述流程中,咱們大體可知道在ftp主動模式下,vsftp服務器只須要開放20和21端口便可。


FTP被動模式
流程正好相反,除第一和第二步同樣外,剩下的都是高位端口與高位端口創建鏈接,就不詳解了。
因此被動模式下,而你在vsftp服務器開啓了防火牆,你僅僅開20和21端口怎麼可可以。

 

另外:

FTP兩種模式的區別:

(1)PORT(主動)模式

所謂主動模式,指的是FTP服務器「主動」去鏈接客戶端的數據端口來傳輸數據,其過程具體來講就是:客戶端從一個任意的非特權端口N(N>1024)鏈接到FTP服務器的命令端口(即tcp 21端口),緊接着客戶端開始監聽端口N+1,併發送FTP命令「port N+1」到FTP服務器。而後服務器會從它本身的數據端口(20)「主動」鏈接到客戶端指定的數據端口(N+1),這樣客戶端就能夠和ftp服務器創建數據傳輸通道了。

(2)PASV(被動)模式

所謂被動模式,指的是FTP服務器「被動」等待客戶端來鏈接本身的數據端口,其過程具體是:當開啓一個FTP鏈接時,客戶端打開兩個任意的非特權本地端口(N >1024和N+1)。第一個端口鏈接服務器的21端口,但與主動方式的FTP不一樣,客戶端不會提交PORT命令並容許服務器來回連它的數據端口,而是提交PASV命令。這樣作的結果是服務器會開啓一個任意的非特權端口(P > 1024),併發送PORT P命令給客戶端。而後客戶端發起從本地端口N+1到服務器的端口P的鏈接用來傳送數據。(注意此模式下的FTP服務器不須要開啓tcp 20端口了)

兩種模式的比較:

(1)PORT(主動)模式模式只要開啓服務器的21和20端口,而PASV(被動)模式須要開啓服務器大於1024全部tcp端口和21端口。

(2)從網絡安全的角度來看的話彷佛ftp PORT模式更安全,而ftp PASV更不安全,那麼爲何RFC要在ftp PORT基礎再製定一個ftp PASV模式呢?其實RFC制定ftp PASV模式的主要目的是爲了數據傳輸安全角度出發的,由於ftp port使用固定20端口進行傳輸數據,那麼做爲黑客很容使用sniffer等探嗅器抓取ftp數據,這樣一來經過ftp PORT模式傳輸數據很容易被黑客竊取,所以使用PASV方式來架設ftp server是最安全絕佳方案。

所以:若是隻是簡單的爲了文件共享,徹底能夠禁用PASV模式,解除開放大量端口的威脅,同時也爲防火牆的設置帶來便利。

不幸的是,FTP工具或者瀏覽器默認使用的都是PASV模式鏈接FTP服務器,所以,必需要使vsftpd在開啓了防火牆的狀況下,也可以支持PASV模式進行數據訪問。

 

參考博客:http://www.javashuo.com/article/p-repssjsa-nb.html

相關文章
相關標籤/搜索