當前位置:首頁 » 文件管理 » ftpport

ftpport

發布時間: 2022-01-27 05:08:04

A. ftp客戶不發PORT命令會發生什麼

  • 相比於HTTP,FTP協議要復雜得多。復雜的原因,是因為FTP協議要用到兩個TCP連接,一個是命令鏈路,用來在FTP客戶端與伺服器之間傳遞命令;另一個是數據鏈路,用來上傳或下載數據。PORT&PASV FTP協議有兩種工作方式:PORT方式和PASV方式,中...

B. 如何用PortTunnel進行FTP埠映射設置

在此以筆者的一台區域網主機為例講述其實際操作步驟該主機的IP地址是192.168.0.218,是通過對等網路虛擬撥號上網的,那台直接與Internet相連的主機系統是Windows 98,也就是我們LAN的網關,其IP地址為192.168. 0.1。筆者在自己的計算機上安裝了Web和FTP服務,准備建設一個網站並開通FTP服務,以方便與朋友們聯系,下面是實際的操作過程:

(1)將PortTunnel軟體下載到網關(代理)伺服器192.168.0.1上, 然後安裝PortTunnel軟體, 安裝完成後啟動PortTunnel, 其初始界面如圖1所示。

你自己看著變通啊 很簡單的嘛

(2)首先針對所需要的Web服務進行設置單擊「增加」按鈕,則彈出如圖2所示的對話框。在「名字」文本框中填入服務的名稱「WEB」然後選擇「激活」復選框,則下面的各欄激活變為可設置狀態。

該對話框中各參數含義如下:

●輸入埠:在此框中輸入區域網中某台計算機的埠例如筆者機器上Web服務的80埠。此時應注意如果網關上有Web服務正在運行,我們就要更換埠號,例如「8080」(在這種情況下,外部Internet用戶必須通過「http://IP地址:8080」來訪問該網站,IP地址,不是LAN中的IP地址),否則埠會產生沖突。

●輸出埠:代理伺服器出口的埠,也就是我們設置的Web伺服器的工作

●輸出地址:LAN中計算機的IP地址,在此我填入192.168.0.218單擊「確定」按鈕保存設置。

(3)針對我需要的F T P服務進行配置,單擊圖1中的「增加」按鈕,然後進行FTP配置。

單擊「確定」按鈕保存設置,其各項參數與Web的設置相同,在此不再重述了。要注意的是,圖中「輸入埠」框中輸入的埠號是21,這樣填的前提是網關(代理伺服器)上沒有FTP伺服器在運行,否則請更換為其他的埠,例如「2121」(這種情況下,外部網上的Internet用戶必須通過「ftp://IP地址或域名:2121」來訪問LAN中的FTF伺服器)。

(4)設置成功後,正常運行界面中的「狀態」欄應顯示為「激活」但如果出現埠沖突時則會顯示如圖4所示的界面,出現失敗的情況多半是設置時埠產生沖突所致,請更換埠再重試,因為埠不能重復使用。如果設置成功,使用時這個界面可以關掉,不會影響使用效果。

設置成功後應該再測試一下各種服務

如果通過「http://IP地址(或域名)」能訪問該Web網站,並且「ftp://IP地址(或域名)」能訪問FTP伺服器,那說明設置成功了。

提示:如果區域網內有多個用戶想架設網站,那麼注意在設置的時候,每個「輸入埠」只能為一個用戶服務,例如,用戶A使用了「80」作「輸入埠」,那麼他的網站就可以通過「http://用戶A的IP(或域名)」來訪問,而用戶B就只能使用其他「輸入埠」了,例如「8080」,他的網站只能通過「http://用戶B的IP(或域名)8080」來訪問了FTP伺服器的道理也是一樣。

該工具不只是實現「埠映射」功能,還可以實現HTTP代理服務,其設置都比較簡單,一般用戶查看軟體的幫助文件就可以進行設置了,請讀者朋友們自行測試在此就不一一介紹了。

C. 主動模式(port)的ftp客戶端c/c++代碼示例

linux環境下執行

#gcc ftp.c -o ftp

#./ftp

#ftp->login //登錄

connect success,pelase enter username

#ftp-> //後面自己按照提示(name支持匿名登錄,即輸入anonymous)

D. FTP的PASV和PORT連接方式有什麼不同

一、什麼是PASV和PORT方式
(1)PORT其實是Standard模式的另一個名字,又稱為Active模式。中文意思是「主動模式。
(2)PASV也就是Passive的簡寫。中文就是「被動模式。
二、兩者不同
不同之處是由於PORT(主動)這個方式需要在接上TCP 21埠後,伺服器通過自己的TCP 20來發出數據。並且需要建立一個新的連接來傳送檔案。而PORT的命令包含一些客戶端沒用的資料,所以有了PASv的出現。而PASV模式擁有PORT模式的優點,並去掉一些PORT的缺點。PASV運行方式就是當伺服器接收到客戶端連接請求時,就會自動從埠1024到5000中隨機選擇一個和客戶端建立連接傳遞數據。由於被動且自動建立連接,容易受到攻擊,所以安全性差。
三、常見的FTP客戶端軟體PORT方式與PASV方式的切換方法
大部分FTP客戶端默認使用PASV方式。IE默認使用PORT方式。 在大部分FTP客戶端的設置里,常見到的字眼都是「PASV」或「被動模式」,極少見到「PORT」或「主動模式」等字眼。因為FTP的登錄方式只有兩種:PORT和PASV,取消PASV方式,就意味著使用PORT方式。
(1)IE:工具 -> Internet選項 -> 高級 -> 「使用被動FTP」(需要IE6.0以上才支持)。
(2)CuteFTP:Edit -> Setting -> Connection -> Firewall -> 「PASV Mode」 或File -> Site Manager,在左邊選中站點 -> Edit -> 「Use PASV mode」 。
(3)FlashGet:工具 -> 選項 -> 代理伺服器 -> 直接連接 -> 編輯 -> 「PASV模式」。
(4)FlashFXP:選項 -> 參數選擇 -> 代理/防火牆/標識 -> 「使用被動模式」 或 站點管理 -> 對應站點 -> 選項 -> 「使用被動模式」或快速連接 -> 切換 -> 「使用被動模式」。

E. FTP 20 21埠分別是干什麼的

21埠用於連接,20埠用於傳輸數據。

1、區別說明:

【1】、進行FTP文件傳輸中,客戶端首先連接到FTP伺服器的21埠,進行用戶的認證,認證成功後,要傳輸文件時,伺服器會開一個埠為20來進行傳輸數據文件。

【2】、埠20才是真正傳輸所用到的埠,埠21隻用於FTP的登陸認證。

【3】、我們平常下載文件時,會遇到下載到99%時,文件不完成,不能成功的下載。其實是因為文件下載完畢後,還要在21埠再行進行用戶認證,而下載文件的時間如果過長,客戶機與伺服器的21埠的連接會被伺服器認為是超時連接而中斷掉,就是這個原因。解決方法就是設置21埠的響應時間。

3、埠說明:

【1】、21埠主要用於FTP(File Transfer Protocol,文件傳輸協議)服務,FTP服務主要是為了在兩台計算機之間實現文件的上傳與下載,一台計算機作為FTP客戶端,另一台計算機作為FTP伺服器,可以採用匿名(anonymous)登錄和授權用戶名與密碼登錄兩種方式登錄FTP伺服器。

【2】、目前,通過FTP服務來實現文件的傳輸是互聯網上上傳、下載文件最主要的方法。另外,還有一個20埠是用於FTP數據傳輸的默認埠號。

【3】、在Windows中可以通過Internet信息服務(IIS)來提供FTP連接和管理,也可以單獨安裝FTP伺服器軟體來實現FTP功能,比如常見的FTPServ-U。

4、操作建議:

因為有的FTP伺服器可以通過匿名登錄,所以常常會被黑客利用。另外,21埠還會被一些木馬利用,比如Blade Runner、FTP Trojan、Doly Trojan、WebEx等等。如果不架設FTP伺服器,建議關閉21埠。

5、工作模式:

分為FTP Port模式和FTP Passive模式,Port模式的FTP步驟如下:

【1】、 客戶端發送一個TCP SYN(TCP同步)包給伺服器段眾所周知的FTP控制埠21,客戶端使用暫時的埠作為它的源埠;

【2】、 伺服器端發送SYN ACK(同步確認)包給客戶端,源埠為21,目的埠為客戶端上使用的暫時埠;

【3】、 客戶端發送一個ACK(確認)包;客戶端使用這個連接來發送FTP命令,伺服器端使用這個連接來發送FTP應答;

【4】、 當用戶請求一個列表(List)請求或者發起一個要求發送或者接受文件的請求,客戶端軟體使用PORT命令,這個命令包含了一個暫時的埠,客戶端希望伺服器在打開一個數據連接時候使用這個暫時埠;PORT命令也包含了一個IP地址,這個IP地址通常是客戶自己的IP地址,而且FTP也支持第三方(third-party)模式,第三方模式是客戶端告訴伺服器端打開與另台主機的連接;

【5】、 伺服器端發送一個SYN包給客戶端的暫時埠,源埠為20,暫時埠為客戶端在PORT命令中發送給伺服器端的暫時埠號;

F. ftp中PORT和PASV兩種模式的區別

FTP有兩種工作模式:Port模式和Passive模式(PasvMode),兩種模式主要的不同是數據連接建立的不同。
Port模式是FTP的默認工作模式,在這種模式下,客戶端在本地打開一個埠等待伺服器去連接從而建立起數據連接(FTP伺服器主動建立連接);
而Passive模式是伺服器打開一個埠等待客戶端去建立一個數據連接(FTP伺服器被動建立連接)。

G. FTP以 PORT 模式連接成功,提示請更新站點配置中的數據連接模式

FlashFXP提供了兩種連接FTP伺服器的方式被動模式(PASV)、主動模式(PORT),而FlashFXP的默認設置為被動模式(PASV),更改FlashFXP將連接FTP伺服器的方式的方法如下:

站點-站點管理器- 選擇需要更改的FTP站點- 選項 在「使用被動模式」中點擊兩點去掉復選框中的勾(默認為灰色)

FTP協議的數據傳輸存在兩種模式:主動模式(PORT Mode)和被動模式(Passive Mode)。

這兩種模式發起連接的方向截然相反,主動模式是從伺服器端向 客戶端發起;被動模式是客戶端向伺服器端發起連接。是否採取被動模式取決於客戶程序,在ftp命令行中使用passive命令就可以關閉/打開被動模式。

H. FTP的連接方式有什麼區別啊port,pasv,eprt,epsv

主動連接 PORT
和被動連接 PASV 方式

他們的區別就是在連接上伺服器之後創建數據通道的時候:

PORT 模式是建立從伺服器高埠連到客戶端20埠數據連接
PASV 模式是建立客戶高埠連到伺服器返回的數據埠的數據連接

PORT(主動)方式的連接過程是:客戶端向伺服器的FTP埠(默認是21)發送連接請求,伺服器接受連接,建立一條命令鏈路。當需要傳送數據時,伺服器從20埠向客戶端的空閑埠發送連接請求,建立一條數據鏈路來傳送數據。

PASV(被動)方式的連接過程是:客戶端向伺服器的FTP埠(默認是21)發送連接請求,伺服器接受連接,建立一條命令鏈路。當需要傳送數據時,客戶端向伺服器的空閑埠發送連接請求,建立一條數據鏈路來傳送數據。

FTP僅僅提供了建立在IPv4上進行數據通信的能力,它基於網路地址是32位這一假設。但是,當IPv6出現以後,地址就比32位長許多了。原來對FTP進行的擴展在多協議環境中有時會失敗。針對IPv6對FTP再次進行擴展,兩個FTP命令PORT和PASV通過擴展後,我們稱它們為EPRT和EPSV。

I. 什麼是FTP埠如何該埠

FTP基礎知識
您是否正准備搭建自己的FTP網站?您知道FTP協議的工作機制嗎?您知道什麼是PORT方式?什麼是PASV方式嗎?如果您不知道,或沒有完全掌握,請您坐下來,花一點點時間,細心讀完這篇文章。所謂磨刀不誤砍柴功,掌握這些基礎知識,會令您事半功倍。否則,很可能折騰幾天,最後一事無成。

FTP基礎知識

FTP是File Transfer Protocol(文件傳輸協議)的縮寫,用來在兩台計算機之間互相傳送文件。相比於HTTP,FTP協議要復雜得多。復雜的原因,是因為FTP協議要用到兩個TCP連接,一個是命令鏈路,用來在FTP客戶端與伺服器之間傳遞命令;另一個是數據鏈路,用來上傳或下載數據。

FTP協議有兩種工作方式:PORT方式和PASV方式,中文意思為主動式和被動式。
PORT(主動)方式的連接過程是:客戶端向伺服器的FTP埠(默認是21)發送連接請求,伺服器接受連接,建立一條命令鏈路。

當需要傳送數據時,客戶端在命令鏈路上用 PORT命令告訴伺服器:「我打開了****埠,你過來連接我」。於是伺服器從20埠向客戶端的****埠發送連接請求,建立一條數據鏈路來傳送數據。

PASV(被動)方式的連接過程是:客戶端向伺服器的FTP埠(默認是21)發送連接請求,伺服器接受連接,建立一條命令鏈路。

當需要傳送數據時,伺服器在命令鏈路上用 PASV命令告訴客戶端:「我打開了****埠,你過來連接我」。於是客戶端向伺服器的****埠發送連接請求,建立一條數據鏈路來傳送數據。
從上面可以看出,兩種方式的命令鏈路連接方法是一樣的,而數據鏈路的建立方法就完全不同。而FTP的復雜性就在於此。

FTP伺服器端的注意事項

一、FTP伺服器是公網IP,用公網動態域名;或是內網IP,用內網專業版TrueHost

1、伺服器如果安裝了防火牆,請記住要在防火牆上打開FTP埠(默認是21)。

2、所有FTP伺服器軟體都支持PORT方式。至於PASV方式,大部分FTP伺服器軟體都支持。支持PASV方式的FTP伺服器軟體,也可以設置為只工作在PORT方式上。

3、為了PASV方式能正常工作,需要在FTP伺服器軟體上為PASV方式指定可用的埠范圍(設置方法)。此外,還要在伺服器的防火牆上打開這些埠。當客戶端以PASV方式連接伺服器的時候,伺服器就會在這個埠范圍里挑選一個埠出來,給客戶端連接。

二、FTP伺服器是內網IP,用內網動態域名標准版cm*natpro*y

這種情況下,FTP伺服器不需要做特殊設置,只要支持PASV方式就可以了。大部分FTP伺服器軟體都支持PASV方式。

FTP客戶端的注意事項

請注意:選擇用PASV方式還是PORT方式登錄FTP伺服器,選擇權在FTP客戶端,而不是在FTP伺服器。

一、客戶端只有內網IP,沒有公網IP

從上面的FTP基礎知識可知,如果用PORT方式,因為客戶端沒有公網IP,FTP將無法連接客戶端建立數據鏈路。因此,在這種情況下,客戶端必須要用PASV方式,才能連接FTP伺服器。大部分FTP站長發現自己的伺服器有人能登錄上,有人登錄不上,典型的錯誤原因就是因為客戶端沒有公網IP,但用了IE作為FTP客戶端來登錄(IE默認使用PORT方式)。

作為FTP站長,有必要掌握FTP的基礎知識,然後指導您的朋友如何正確登錄您的FTP。

二、客戶端有公網IP,但安裝了防火牆

如果用PASV方式登錄FTP伺服器,因為建立數據鏈路的時候,是由客戶端向伺服器發送連接請求,沒有問題。反過來,如果用PORT方式登錄FTP伺服器,因為建立數據鏈路的時候,是由伺服器向客戶端發送連接請求,此時連接請求會被防火牆攔截。如果要用PORT方式登錄FTP伺服器,請在防火牆上打開 1024以上的高端埠。

三、連接用內網標准版cm*natpro*y搭建的FTP服務,必須要用PASV方式。連接任何公網FTP伺服器、或用內網專業版TrueHost搭建的FTP伺服器,PORT方式和PASV方式都可以使用。

當然,使用PORT方式的時候,還要滿足上面的兩個條件。

四、常見的FTP客戶端軟體PORT方式與PASV方式的切換方法。

大部分FTP客戶端默認使用PASV方式。IE默認使用PORT方式。

在大部分FTP客戶端的設置里,常見到的字眼都是「PASV」或「被動模式」,極少見到「PORT」或「主動模式」等字眼。因為FTP的登錄方式只有兩種:PORT和PASV,取消PASV方式,就意味著使用PORT方式。

IE:

工具 -> Internet選項 -> 高級 -> 「使用被動FTP」(需要IE6.0以上才支持)。

CuteFTP:

Edit -> Setting -> Connection -> Firewall -> 「PASV Mode」

File -> Site Manager,在左邊選中站點 -> Edit -> 「Use PASV mode」
FlashGet:
工具 -> 選項 -> 代理伺服器 -> 直接連接 -> 編輯 -> 「PASV模式」

FlashFTP:

選項 -> 參數選擇 -> 代理/防火牆/標識 -> 「使用被動模式」

站點管理 -> 對應站點 -> 選項 -> 「使用被動模式」

快速連接 -> 切換 -> 「使用被動模式」

LeechFTP:

Option -> Firewall -> Do not Use

五、請盡量不要用IE作為FTP客戶端

IE只是個很粗糙的FTP客戶端工具。首先,IE6.0以下的版本不支持PASV方式;其次,IE在登錄FTP的時候,看不到登錄信息。在登錄出錯的時候,無法找到錯誤的原因。在測試自己的FTP網站的時候,強烈建議不要使用IE。

FTP建站的詳細配置過程

請參考這個網頁的說明來配置:

使用Serv-U建立FTP網站

高級話題

一、為什麼沒有公網IP,也能使用PORT方式登錄FTP?

NAT 網關的工作方式是在TCP/IP數據包的包頭里找區域網的源地址和源埠,替換成網關的地址和埠。對數據包里的內容,是不會改變的。而使用PORT方式登錄FTP的時候,IP地址與埠信息是在數據包裡面的,而不是在包頭。因此,沒有公網IP,使用PORT方式是無法從internet上的ftp伺服器下載數據的。

但是,極少數的NAT網關也支持PORT方式。這些NAT網關連數據包裡面的內容都掃描,掃描到 PORT指令後會替換PORT方式的IP和埠。在這種NAT網關下面,用PORT方式就沒問題了。不過,這些網關也只掃描21埠的數據包,如果FTP 伺服器不是用默認的21埠,也無法使用PORT方式。

二、內網可以用PORT訪問其他FTP,為什麼不能用PORT訪問自己的TrueHost FTP?

下面要討論的問題,只是為了說明一些原理,是不影響實際使用的。如果您沒有興趣深究這些原理,不必花時間看。

內網用戶通過支持PORT方式的NAT網關,訪問自己本機利用TrueHost建立的FTP伺服器,FTP命令鏈路的建立過程如下:

FTP客戶端

10.10.0.1
埠*** <==> ISP NAT網關
61.144.1.2
埠**** <==> TH伺服器
*.*.*.*
埠21 <==> TH客戶端 <==> 用戶FTP伺服器
10.10.0.1
埠21

FTP客戶端通過ISP的NAT網關、科邁TrueHost伺服器、TrueHost客戶端,連接用戶本機的FTP伺服器的21埠。

當需要下載數據的時候,FTP客戶端通過這條命令鏈路,向FTP伺服器發送PORT命令。假設命令為:

PORT 10,10,0,1,30,4 (即IP=10.10.0.1 埠=30*256+4=7684)
當命令通過ISP的NAT網關的時候,NAT網關判斷目的埠是21,並且是PORT命令,於是,修改命令里的IP和埠,替換為自己的IP和埠,比如:
PORT 61,144,1,2,50,6 (即IP=61.144.1.2 埠=50*256+6=12806)
用戶的FTP伺服器最終收到的是上面這個PORT命令。於是,FTP伺服器向這個IP和埠發送連接請求,建立數據鏈路。

用戶FTP伺服器

10.10.0.1
埠20 <==> ISP NAT網關
61.144.1.2
埠12806 <==> FTP客戶端
10.10.0.1
埠7684

但是,因為NAT網關的公網IP只能接收外來的連接請求。就是說,61.144.1.2:12806隻能接收其他公網IP的連接請求,對於從NAT內部(10.10.0.1:20)發起的連接請求,是無法建立連接的。為什麼?原因很簡單,因為內網IP要訪問外網,必須要通過NAT建立映射。於是FTP數據鏈路無法建立。於是,用戶無法在自己的機器上通過21埠訪問自己的TrueHost FTP。

我們再來看看,如果FTP埠不是21,比如是22,會發生什麼情況呢?在FTP客戶端發送PORT命令的時候,NAT網關檢測到目標埠是22,因為支持PORT的 NAT網關只監視目的埠是21的數據包,發現目的埠是22的數據包,不做任何處理,完全放行。於是FTP伺服器收到的PORT命令依然是PORT 10,10,0,1,30,4。於是FTP伺服器向這個IP和埠發送連接請求。

用戶FTP伺服器

10.10.0.1
埠20 <==> FTP客戶端
10.10.0.1
埠7684

這種情況下命令鏈路就可以建立起來了。而且是等於本機連接本機,速度飛快。
綜上所述,內網用戶無法用PORT方式通過21埠訪問自己的TrueHost FTP伺服器。如果FTP埠不是21,則可以訪問,而且實際上是本機連接本機。

上面的文字,僅僅是為了說明一些原理,不影響實際使用。如果本機訪問本機,還要通過FTP的話,就有畫蛇添足之嫌了。

熱點內容
安卓備份還原有什麼危害 發布:2024-10-19 10:08:33 瀏覽:212
量化投資以python為工具pdf 發布:2024-10-19 09:59:49 瀏覽:224
編譯器的字體顏色 發布:2024-10-19 09:17:28 瀏覽:105
linuxsocket進程 發布:2024-10-19 09:12:23 瀏覽:964
如何配置硅酸鹽水泥 發布:2024-10-19 09:11:09 瀏覽:469
openvpn腳本 發布:2024-10-19 09:09:26 瀏覽:436
安卓手機哪個屏幕最跟手 發布:2024-10-19 08:49:58 瀏覽:836
java子類父類 發布:2024-10-19 08:49:55 瀏覽:112
dgs編程 發布:2024-10-19 08:46:59 瀏覽:84
銷售統計源碼 發布:2024-10-19 08:31:35 瀏覽:218