溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Docker如何搭建FTP服務(wù)

發(fā)布時(shí)間:2021-02-18 09:21:04 來源:億速云 閱讀:340 作者:小新 欄目:服務(wù)器

小編給大家分享一下Docker如何搭建FTP服務(wù),相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

一行命令

docker run -d \
-v /share:/home/vsftpd \
-p 20:20 \
-p 21:21 \
-p 21100-21110:21100-21110 \
-e FTP_USER=zhaoolee \
-e FTP_PASS=eelooahz \
-e PASV_ADDRESS=47.106.108.135 \
-e PASV_MIN_PORT=21100 \
-e PASV_MAX_PORT=21100 \
--name zhaoolee_vsftpd \
--restart=always \
fauria/vsftpd

參數(shù)解釋:

-d 表示新建容器在后臺(tái)運(yùn)行

-v 表示設(shè)置目錄映射 設(shè)置舉例 -v /share:/home/vsftpd 將宿主機(jī)的/share目錄映射到docker容器的/home/vsftpd (用戶zhaoolee登錄后, 程序會(huì)在/home/vsftpd文件夾下, 自動(dòng)新建一個(gè)zhaoolee文件夾, 用來存放上傳的文件)

-p 為映射端口  -p 20:20 表示將宿主機(jī)20端口映射到docker容器的20端口,-p 21:21 表示將宿主機(jī)21端口映射到docker容器的21端口, -p 21100-21110:21100-21110 表示將宿主機(jī)的21100到21110端口映射到docker容器的21100到21110端口

Docker如何搭建FTP服務(wù)

與端口密切相關(guān)的是主動(dòng)模式和被動(dòng)模式兩種連接方式

  • 主動(dòng)模式: 21端口為ftp默認(rèn)的端口,是ftp的控制端口, 而20端口是ftp的數(shù)據(jù)端口, 21端口用來接收客戶端連接, 20端口用來傳輸數(shù)據(jù); 服務(wù)器(主動(dòng)地)定下規(guī)矩,客戶端與服務(wù)端建立連接, 那通過21端口, 想傳數(shù)據(jù)就通過20端口, 20端口和21端口結(jié)合到一起就是ftp的主動(dòng)模式

  • 被動(dòng)模式: 主動(dòng)模式有一些安全性問題, 如果有人想攻擊你的ftp服務(wù), 就直接到20端口堵你, 為了避免數(shù)據(jù)出門被人堵, 就出現(xiàn)了被動(dòng)模式, 被動(dòng)模式把傳數(shù)據(jù)的20端口, 改成了范圍, 比如上文中的21100-21110, 具體哪個(gè)值由客戶端來定(比如21115), 這樣傳出的數(shù)據(jù)就不容易被人堵,安全性大大提升, 現(xiàn)在大多數(shù)ftp客戶端,默認(rèn)使用被動(dòng)模式連接服務(wù)器, 也就是由客戶端定傳數(shù)據(jù)的端口

-e 表示追加參數(shù)

FTP_USER 為ftp登錄用戶名, 設(shè)置示例 FTP_USER=zhaoolee

FTP_PASS 為ftp登錄密碼, 設(shè)置示例 FTP_PASS=eelooahz

PASV_ADDRESS 為外網(wǎng)ip , 設(shè)置示例PASV_ADDRESS=104.243.20.148 (非常重要: 這里一定要綁定宿主機(jī)對(duì)外的ip, 否則后面會(huì)連不上, zhaoolee在這里調(diào)了好久...)

PASV_MIN_PORT為客戶端連接服務(wù)器的最小端口號(hào)為21100 (被動(dòng)模式下服務(wù)端最小端口號(hào))

PASV_MAX_PORT為客戶端連接服務(wù)器的最大端口號(hào)為21110 (被動(dòng)模式下服務(wù)端最大端口號(hào))

--name zhaoolee_vsftpd 表示容器名為 zhaoolee_vsftpd(這個(gè)名字可以自定義)

--restart=always 表示 restart可以

fauria/vsftpd 代表鏡像名

用阿里云做個(gè)測試

開啟 端口20 , 端口21, 端口段21100-21110

Docker如何搭建FTP服務(wù)

創(chuàng)建容器

Docker如何搭建FTP服務(wù)

連接測試(FillZilla下載鏈接: https://filezilla-project.org/download.php?type=client)

Docker如何搭建FTP服務(wù)

通過ftp上傳文件

Docker如何搭建FTP服務(wù)

ftp是一個(gè)常用的服務(wù), 這里使用vsftp的docker方式完成搭建, 一行命令搞定
docker鏡像 fauria/vsftpd 開源地址: https://github.com/fauria/docker-vsftpd, 可以找到詳細(xì)的操作文檔

以上是“Docker如何搭建FTP服務(wù)”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI