FTP或SFTP服務器以客戶端映射

1.windows 下常用ftp服務器

FTP服務器(file transfer protocol server)是在互聯網上提供文件存儲和訪問服務的計算機,他們依照ftp協議提供服務。簡單地說,支持FTP協議的服務器就是FTP服務器。

FTP是僅基於TCP的服務,不支持UDP。

FTP服務器有2個端口,一個數據端口20和一個命令(控制)端口21 (端口可以修改)。
其中:21端口是用來連接的,20端口用於傳輸數據。
在進行數據傳輸時,客戶端首先連接FTP服務器的21端口,盡心給用戶的認證,認證成功後,要傳輸文件時,服務器會開一個端口爲20來進行傳輸文件。端口20纔是真正傳輸所用到的端口,端口21只用於FTP的登錄認證。我們平時下載文件時,會遇到下載99%時,文件下載無法完成的情況。其實是因爲文件下載完畢後,還要在21端口再次進行用戶認證,而下載文件的時間過長,客戶機和服務器的21端口的連接會被服務器認爲是超時連接而中斷掉;解決方法是:設置21端口的響應時間。

FTP有主動模式和被動模式,主動模式時的數據端口隨機分配,被動模式下才是上述所說中的20端口,這個端口可以修改。

對應有防護牆等網絡權限限制的,FTP需要用被動模式,固定數據端口。

因此申請權限時需要申請兩個端口。

以Serv-U和Xlight FTP服務器爲例
1.1 Serv-U Server
修改默認FTP端口:
在這裏插入圖片描述
修被動模式時的數據端口:
在這裏插入圖片描述增加FTP訪問用戶和密碼以及FTP目錄:
在這裏插入圖片描述

1.2 Xlight FTP Server

同樣使用Xlight FTP時,也需要注意時候主動還是被動模式,默認端口均可修改。Xlight FTP支持使用不同端口啓動多個FTP服務或者SFTP。

在這裏插入圖片描述

協議的話支持兩種:
FTP表示是FTP服務器,默認端口是21,被動模式至少需要兩個網絡端口,同Serv-U類似。
SSH2表示是SFTP服務器,默認端口是22,可修改,SFTP服務器的話遠程訪問權限網絡端口只需要一個。

在這裏插入圖片描述

Xlight FTP 配置PASV 端口範圍如下:
在這裏插入圖片描述

ftp目錄可以掛載到linux下(類似mount),使用sshfs或者curlftpfs,以curlftpfs爲例:
(1)安裝 curlftpfs
apt-get install curlftpfs
(2)用curlftpfs命令掛載
curlftpfs -o codepage=utf8 ftp://username:[email protected]:21 /home/xxxx/workspace/ftp
codepage: 編碼方式,一般用utf8,你也可以用gb2312
username: FTP用戶名
password: FTP密碼
127.0.0.1: FTP地址
端口:21 (默認21,可修改)

需要注意的是,你的FTP用戶名如果含有【@】這類的特殊字符的話,請用【%40】來代替【@】。

掛載完畢後,掛載完畢後,我們只要進入 /home/xxxx/workspace/ftp 目錄,就可以看到我們FTP服務器的文件了。

2.windows 下常用sftp服務器

2.1 Xlight FTP Server
使用Xlight FTP 配置sftp時和配置ftp類似,創建SFTP服務器是選擇SSH協議,默認端口爲22端口
在這裏插入圖片描述
和FTP一樣配置用戶和密碼,還有SFTP根目錄:
在這裏插入圖片描述
配置完啓動即可。

驗證SFTP服務器連通性:
使用XFTP測試SFTP連通是否正常,
在這裏插入圖片描述

登錄登錄後可看到SFTP根目錄及其下文件,如下圖所示:
在這裏插入圖片描述

使用ubuntu18.0.4系統自帶的sftp命令測試,可用-P 指定sftp端口。

sftp -P 2100 [email protected]
[email protected]'s password: 
Connected to 192.168.1.105.
sftp> ls

在這裏插入圖片描述
爲了方面應用程序讀寫sftp文件數據,可以使用下面命令將sftp掛載到linux的文件目錄(類似mount):
sshfs [email protected]:/ /home/xxxx/workspace/sftp

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章