ftp設置被動模式
主動式有利於伺服器端管理
但是可能會被客戶端防火牆攔截
被動式由於數據傳輸由客戶端發起出所有不會被客戶端防火牆攔截
但是不利於伺服器管理
使用windows
server搭建完畢
雙擊FTP防火牆
填寫埠和IP即可
例如填寫5000-5100,即為允許100個被動連接(此時可能為灰色需要開通防火牆)
如果埠位置為灰色,需執行以下命令添加防火牆策略
允許ftp
netsh
advfirewall
firewall
add
rule
name="FTP
Service"
action=allow
service=ftpsvc
protocol=TCP
dir=in
netsh
advfirewall
firewall
set
global
StatefulFTP
disable
添加完畢再看埠可以輸入數值
輸入數值
和外部連接的IP地址
點擊應用
此時再次使用被動式連接
即可成功連接
按:
測試發現關閉防火牆無效,填寫被動式埠依然為灰色.
必須添加2條命令
B. 如何設置IIS FTP的設置主動模式還是被動模式
默認為主動
1.單擊 開始 、 運行 , 鍵入 cmd, 和然後 確定 。
2. 鍵入 cd C:\Inetpub\AdminScripts, 然後按 Enter。
鍵入以下命令從命令提示符。
Cscript.exe adsutil.vbs set /MSftpSVC/PassivePortRange "30000-30005"
3.重啟iis
注意:
msftp設置被動模式方法
30000-30005為pasv埠范圍
C. 請問用IIS搭建FTP伺服器,在哪裡設置"主動模式"和"被動模式"
FTP兩種工作模式:主動模式(Active FTP)和被動模式(Passive FTP)
在主動模式下,FTP客戶端隨機開啟一個大於1024的埠N向伺服器的21號埠發起連接,然後開放N+1號埠進行監聽,並向伺服器發出PORT N+1命令。伺服器接收到命令後,會用其本地的FTP數據埠(通常是20)來連接客戶端指定的埠N+1,進行數據傳輸。
在被動模式下,FTP庫戶端隨機開啟一個大於1024的埠N向伺服器的21號埠發起連接,同時會開啟N+1號埠。然後向伺服器發送PASV命令,通知伺服器自己處於被動模式。伺服器收到命令後,會開放一個大於1024的埠P進行監聽,然後用PORT P命令通知客戶端,自己的數據埠是P。客戶端收到命令後,會通過N+1號埠連接伺服器的埠P,然後在兩個埠之間進行數據傳輸。
總的來說,主動模式的FTP是指伺服器主動連接客戶端的數據埠,被動模式的FTP是指伺服器被動地等待客戶端連接自己的數據埠。
被動模式的FTP通常用在處於防火牆之後的FTP客戶訪問外界FTp伺服器的情況,因為在這種情況下,防火牆通常配置為不允許外界訪問防火牆之後主機,而只允許由防火牆之後的主機發起的連接請求通過。因此,在這種情況下不能使用主動模式的FTP傳輸,而被動模式的FTP可以良好的工作。
很多人誤認為利用WINDOWS組件IIS來構建的FTP伺服器沒有實用價值,只能做一些測試和學習。主要是FTP服務的PORT和PASV兩種連接模式下防火牆難以設置。對於PORT模式,客戶端無法在此環境下運行,因為 FTP 服務必須向 FTP 客戶端發出新的連接請求,防火牆會將這些連接檢測為未經請求的連接嘗試,並因此而將它們斷開。防火牆管理員可能也不希望使用PASV模式 FTP 伺服器,因為該 FTP 服務可以打開任何短暫的埠號。如果防火牆配置允許未經請求的連接完全訪問所有的短暫埠,則可能會是不安全的。
從實用的角度來看,建立一個默認短暫埠范圍有限制的PASV模式 FTP 服務方案應該是較好的選擇。下面通過一個實例,說明如何在Windows 2003 中利用IIS組件架設PASV模式FTP服務。
1建立一個PORT模式的FTP服務
1.1安裝「文件傳輸協議(FTP)服務」組件
安裝步驟:
控制面板--->添加刪除程序--->添加刪除windows組件--->應用程序伺服器--->Internet信息服務(IIS)--->文件傳輸協議(FTP)服務
將「文件傳輸協議(FTP)服務」復選框鉤上,插入windows 2003安裝盤或選擇windows 2003安裝路徑,直至安裝結束。
1.2FTP主目錄及用戶許可權的配置
主目錄:D:/soft/ftpup
擁有讀寫許可權而不允許其它用戶訪問的用戶:
ww1用戶擁有 ww1目錄的讀寫許可權,位置在:D:/soft/ftpup/LocalUser/ww1
XX1用戶擁有 XX1目錄的讀寫許可權,位置在:D:/soft/ftpup/LocalUser/XX1
允許匿名用戶只讀訪問:
Everyone 擁有 public目錄的只讀許可權,位置在:D:/soft/ftpup/LocalUser/public
創建 ww1和xx1用戶並設置密碼。
建立相應的目錄,並設置對應的許可權。
1.3創建FTP站點
通過「控制面板 ---> 管理工具 ---> Internet信息服務(IIS)管理器 ---> Internet信息服務--->本地計算機---> FTP 站點」標簽,右擊「FTP 站點」--->新建--->FTP 站點,進入FTP站點建立向導:站點描述--->IP地址和埠設置--->隔離用戶--->FTP站點主目錄(D:/soft/ftpup ),直到向導結束。
右擊剛建立的FTP站點,在「安全帳戶」選項卡上選中「允許匿名用戶連接」。至此,一個PORT模式的FTP站點架設完成。
可以關閉防火牆在客戶端進行測試是否符合要求。
2將FTP站點設置成PASV模式
2.1啟用直接編輯元資料庫
打開 IIS Microsoft 管理控制台 (MMC):控制面板 ---> 管理工具---> Internet信息服務(IIS)管理器 ---> Internet信息服務--->本地計算機
右擊本地計算機節點,選擇屬性,選擇啟用直接編輯元資料庫復選框。
2.2 修改埠號 方法 1 通過 ADSUTIL 腳本配置 PassivePortRange
運行cmd.exe程序進入命令行模式,並輸入以下命令:
C:/Inetpub/AdminScripts/adsutil.vbs set /MSFTPSVC/PassivePortRange "5500-5550"
這樣就將FTP伺服器上TCP 默認短暫埠范圍限制在5500-5550范圍內,如果同時連接數量較多,可適當進行調整。
用以下命令查看PassivePortRange:
C:/Inetpub/AdminScripts/adsutil.vbs get /MSFTPSVC/PassivePortRange 方法 2 通過修改配置文件 打開下面這個文件 : 1. C:/WINDOWS/system32/inetsrv/MetaBase.xml 搜索 MaxConnections 這個欄位 在 MaxConnections 下面新加一行被動模式的配置信息,修改後的配置文件為 LogType="1" MSDOSDirOutput="TRUE" MaxClientsMessage=" " MaxConnections="100000" PassivePortRange="5500-5550"
3.windows 2003 中防火牆的設置
3.1打開FTP控制埠TCP 21(如果更改埠號,這里要做相應的更改)
在命令行輸入:
NETSH FIREWALL ADD PORTOPENING TCP 21 FTPPort21
3.2打開PassivePortRange 5500-5550的TCP埠
建立以下批處理文件並運行(例如:ftpport.bat):
ECHO OPENING FIREWALL PORTS 5500-5550
FOR /L %%I IN (5500,1,5550) DO NETSH FIREWALL ADD PORTOPENING TCP %%I FTPPort%%I
iisreset /restart
ECHO FINISHED
Pause
至此,整個服務架設完成,可在啟用防火牆的情況下進行測試。
D. 被動FTP模式是什麼模式
在被動方式FTP中,命令連接和數據連接都由客戶端,這樣就可以解決從伺服器到客戶端的數據埠的入方向連接被防火牆過濾掉的問題。
當開啟一個FTP連接時,客戶端打開兩個任意的非特權本地埠。第一個埠連接伺服器的21埠,但與主動方式的FTP不同,客戶端不會提交PORT命令並允許伺服器來回連它的數據埠,而是提交PASV命令。
這樣做的結果是伺服器會開啟一個任意的非特權埠,並發送PORT P命令給客戶端。然後客戶端發起從本地埠N+1到伺服器的埠P的連接用來傳送數據。
(4)ftp設置被動模式擴展閱讀
FTP的傳輸有兩種方式:ASCII、二進制。
1、ASCII傳輸方式
假定用戶正在拷貝的文件包含的簡單ASCII碼文本,如果在遠程機器上運行的不是UNIX,當文件傳輸時ftp通常會自動地調整文件的內容以便於把文件解釋成另外那台計算機存儲文本文件的格式。
但是常常有這樣的情況,用戶正在傳輸的文件包含的不是文本文件,它們可能是程序,資料庫,字處理文件或者壓縮文件。在拷貝任何非文本文件之前,用binary 命令告訴ftp逐字拷貝。
2、二進制傳輸模式
在二進制傳輸中,保存文件的位序,以便原始和拷貝的是逐位一一對應的。即使目的地機器上包含位序列的文件是沒意義的。例如,macintosh以二進制方式傳送可執行文件到Windows系統,在對方系統上,此文件不能執行。
如在ASCII方式下傳輸二進制文件,即使不需要也仍會轉譯。這會導致損壞數據。
E. FTP主動模式和被動模式!
FTP(File Transfer Protocol,文件傳輸協議) 是 TCP/IP 協議組中的協議之一。FTP協議包括兩個組成部分,其一為FTP伺服器,其二為FTP客戶端。其中FTP伺服器用來存儲文件,用戶可以使用FTP客戶端通過FTP協議訪問位於FTP伺服器上的資源。在開發網站的時候,通常利用FTP協議把網頁或程序傳到Web伺服器上。此外,由於FTP傳輸效率非常高,在網路上傳輸大的文件時,一般也採用該協議。
默認情況下FTP協議使用TCP埠中的 20 和 21 這兩個埠,其中20用於傳輸數據,21用於傳輸控制信息。但是,是否使用20作為傳輸數據的埠與FTP使用的傳輸模式有關,如果採用主動模式,那麼數據傳輸埠就是20;如果採用被動模式,則具體最終使用哪個埠要伺服器端和客戶端協商決定。
FTP支持兩種模式,它在工作運行時也主要是這兩種模式,一種模式叫作Standard也被稱為PORT方式和 主動方式 ,另一種模式叫作Passive也叫作PASV, 被動方式 。Standard模式FTP的客戶端發出PORT命令到伺服器,Passive模式FTP的客戶端發送PASV命令到FTP Server中,從而保證文件相互傳輸正常。
我們使用華為的模擬器Ensp來做一個小實驗。
FTP三次握手有兩次,第一次的TCP三次握手是控制層的握手,第二次是數據層的TCP三次握手
(1)伺服器打開埠 21,等待連接;
(2)客戶端(100.1.12.1)發起控制連接的建立請求,伺服器響應連接,控制連接建立,使用TCP 三次握手(第一次TCP三次握手);
隨機埠的計算
可以看到PORT為 10,0,0,2,8,6
隨機埠計算為: 8*256+6=2054
(3)客戶端通過控制連接發送 PORT 命令(在應用層數據中帶有自己的 ip 地址和臨時埠),將客戶端數據連接的臨時埠號告訴伺服器
(4)伺服器的 20 號埠與客戶端建立起數據連接,使用TCP 三次握手(第二次TCP三次握手);
點擊登出後控制埠斷開連接
FTP三次握手有兩次,第一次的TCP三次握手是控制層的握手,第二次是數據層的TCP三次握手
(1)伺服器打開埠 21,等待連接
(2)客戶端發起控制連接的建立請求,伺服器響應連接,控制連接建立,使用TCP 三次握手(第一次TCP三次握手);
(3)客戶端通過控制連接發送命令字 PASV,告知伺服器處於被動模式;
(4)伺服器回應,將伺服器數據連接的臨時埠號(2060)告訴客戶端;
(5)客戶端與伺服器的臨時埠建立起數據連接,使用TCP 三次握手(第二次TCP三次握手);
F. 如何設置IIS FTP的設置主動模式還是被動模式
一、什麼是主動FTP 主動模式的FTP工作原理:客戶端從一個任意的非特權埠N連接到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的解釋,可以簡單概括為以下兩點:
G. liunx6.5怎麼開啟ftp支持被動數據傳輸模式
您好凱和,在/etc/vsftpd/vsftpd.conf配置文件下編輯:橘基
[vsftpd.conf]
#開啟被動模式盯伍盯傳輸
pasv_enable=yes
#設置被動模式埠范圍,這里是4000-5000(TCP)
pasv_min_port=4000
pasv_max_port=5000
注意,如果您需要配合防火牆使用,請您在防火牆規則中設置放行21埠和4000-5000埠。
H. 如何設置windows自帶的ftp使用被動模式上傳
主動式有利於伺服器端管理 但是可能會被客戶端防火牆攔截
被動式由於數據傳輸由客戶端發起出所有不會被客戶端防火牆攔截 但是不利於伺服器管理
使用windows server搭建完畢 雙擊FTP防火牆
按: 測試發現關閉防火牆無效,填寫被動式埠依然為灰色. 必須添加2條命令
I. redhatftp配置被動模式
1、首先客戶端登陸redhat,從任意的非註明埠連接FTP伺服器的命令埠,伺服器收到該連接後回復ACK。
2、其次伺服器本地開啟一個任意的非註明埠發送命令給客戶端,讓客戶端連接伺服器的這個非註明埠從而進行數據傳輸。
3、最後連接建立完成,即可完成被動模式的配置。
J. win2008配置FTP伺服器,出現227錯誤,如何開啟FTP的被動模式
做了一個下劃線,修改與2020年2月17號下午
發布文章以來,很多朋友找我問具體的配置,說實話,當初配置的迷迷糊糊的,也忘記當時到底有沒有配置好。
無論如何,過去了,大家用心得方法吧。
大家不需要再自己手工配置了,2020年2月10號左右,我使用了免費的filezilla配置一下。
因為我是阿里雲,所以,在配置的時候,還需要進入阿里雲的安全規則里,開啟21埠,和你所需要的埠。
伺服器上,裝filezilla的服務端。
電腦上,用filezilla的客戶端。
阿里雲的配置,跟網上的很多教程,有點不一樣,所以,我貼出來,給大家看看。
https://www.cnblogs.com/leowork/p/setup_ftp_server.html
---------------------------------------------------------------------------------------
以下內容是以前的。
2017.08.23 14:17:28字數 657閱讀 1,179
本文配置win2008 FTP伺服器,基於以下幾點。
1.win2008伺服器
2.使用win2008自帶的FTP功能
3.配置特定賬戶的FTP,不配置FTP隔離用戶。
其他條件下,自行尋找其他文檔。另註:相關操作,都在IIS7,或者IIS7.5管理器中進行。一點都不需要IIS6。網上有些教程,是忽悠我的。
本人配置FTP伺服器遇到的錯誤
一.賬號密碼明明是對的,內網,外網都無法訪問。這是許可權問題。需要三件事,確定許可權 。
1.在伺服器管理中,新建用戶,配置賬號密碼。這是你准備使用的FTP賬號,密碼
2.新建FTP目錄,配置目錄的許可權,右鍵文件屬性,安全,添加,高級搜索,立刻查找,找到剛建的FTP用戶名,添加所有許可權,應用。
3.新建FTP站點的時候,到了用戶選項,選擇基本,輸入FTP賬號密碼,上面的匿名選項,可以忽略。
4.綁定IP的時候,綁定到指定IP,或者不填。
這四點保證了,FTP賬號的訪問權許可權,可以進入外網和內網的測試。
二.內網能訪問,外網訪問的時候,出現227.這是伺服器配置的遇到的防火牆問題。
網上建議在連接FTP的時候,選擇主動模式。(具體操作是。如果是瀏覽器訪問伺服器,設置IE禁止被動訪問,如果是FTP軟體訪問伺服器,也選擇主動模式。)
然而,這其實是伺服器自身的配置問題。需要在伺服器端解決。
1.在IIS7界面,選擇FTP站點,進入FTP防火牆選項。
a.查看埠范圍。如果是灰色0-0.那就到IIS最頂端的伺服器站點配置里配置埠。
很多人建立FTP站點以後,在IIS管理界面。發現FTP埠范圍是灰色的,無法修改。那是因為,你要從最上級的伺服器級別的站點設置。我的設置是1025-2000.
b.配置防火牆外網IP,這里必須要填,填上伺服器的外網IP就好了。
2.防火牆允許程序選項。 允許windows主服務程序的運行。(2B的微軟,在2003,2008伺服器里都默認禁止了win主服務。這里需要允許程序運行,增加一條就好了。win2008,是svchost.exe, win2003 是inetsrv.exe)
3.添加入站規則。
a.開始添加入站規則。命名為FTP PASV埠(主要是好記,可以隨便叫)。
b.屬性設置里,埠配置,填上1025-2000,跟步驟1對應。
c.程序和服務選項,選擇所有符合指定條件的程序。
d.程序和服務選項.服務--設置--僅應用於服務。
至此,設置完成。不需要重啟伺服器,只需要重啟IIS。如何重啟IIS,不需要從命令中重啟,只需要在IIS伺服器級別的那個網站選項上,右鍵。
也不需要重啟FTP服務。真不行才重啟FTP服務。net stop ftpsvc ,net start ftp ftpsvc。
四.WIN2008的FTP伺服器配置,以及FTP防火牆的配置至此完成。有不會的,聯系我,QQ:909743105.
此文作為記錄,以免自己忘記。