Aug 12, 2008

ftp Illegal PORT command

ftp> LS
500 Illegal PORT command
425 Unable to build data connection: Connection refused
ftp>

FTP(File Transfer Protocol檔傳輸協定)服務是基於TCP協定的一種服務,用於電腦之間相互傳送檔,用戶通過它能夠獲取Internet中的資源。FTP提供 了登錄、目錄查詢、檔操作及其他會話控制功能。上傳或下載網站文件時也會用到它。
PORT模式:PORT模式建立的資料連結通道是由FTP伺服器端發起,FTP伺服器使用20埠連接用戶端的某一個大於1024的埠。
PASV模式:PASV模式的資料傳輸鏈路的建立是由FTP用戶端發起的,它使用一個大於1024的埠連接伺服器上1024以上的某一個埠。
用戶在登錄FTP的過程中,伺服器應該使用21埠(也可使用20埠和一些不固定的大於1024的埠),用戶端應該使用大於1024的埠。由於網路防火牆對埠的嚴格控制和複雜的網路環境,所以很容易就出現用戶無法登錄FTP伺服器的問題。
為了能成功登錄FTP伺服器,用戶端必須正確設置使用PASV或PORT模式登錄。
1.使用內部 Private IP位址
當用戶端使用PORT登錄方式時,FTP伺服器將無法連接用戶端建立資料連結。因為用戶端沒有公網IP位址,這種情況下,用戶端必須使用PASV登錄方式。這就是很多內網用戶不能登錄FTP伺服器的一個重要原因。
2.使用Public IP位址
當用戶端使用PASV登錄方式時,用戶端向伺服器發送連接請求,建立資料連結通道,這時可以順利登錄FTP伺服器。如果這時使用PORT登錄方式,在建立資料連結通道時,由伺服器向用戶端發送連接請求,此時連接請求會被防火牆攔截,除非開放大於1024的高端埠。

Ex.
IE -> 工具 -> 網際網路選項 ->進階 -> 瀏覽 -> 使用被動式FTP
Windows DOS doesn't support PASV mode.

0 意見: