docker 部署 ftp

本文介绍了如何使用Docker部署VSFTPD服务,包括端口映射、环境变量设置以及创建和管理FTP用户。通过设置PASV_ADDRESS和端口范围确保被动模式的FTP连接。同时,展示了如何在容器内创建用户文件夹,编辑用户配置文件并加载到数据库以新增用户。
摘要由CSDN通过智能技术生成
docker run -d -v /home/ftp:/home/vsftpd \
-p 20:20 -p 21:21 -p  21100-21110:21100-21110 \
-e FTP_USER=test -e FTP_PASS=test \
-e PASV_ADDRESS=192.168.60.128 \
-e PASV_MIN_PORT=21100 -e PASV_MAX_PORT=21110 \
--name vsftpd --restart=always fauria/vsftpd

参数说明:
/home/ftp:/home/vsftpd:映射 docker 容器 ftp 文件根目录(冒号前面是宿主机的目录)
-p:映射 docker 端口(冒号前面是宿主机的端口)
-e FTP_USER=test -e FTP_PASS=test :设置默认的用户名密码(都为 test)
PASV_ADDRESS:宿主机 ip,当需要使用被动模式时必须设置。
PASV_MIN_PORT~ PASV_MAX_PORT:给服务端提供下载服务随机端口号范围,默认 21100-21110,与前面的 docker 端口映射设置成一样。

新建用户文件夹
(1)首先执行如下命令进入到容器里面:

docker exec -i -t vsftpd bash

(2)由于前面我们启动的时候设置用户名为 test,已经自动创建对应的用户文件夹(所以下面这个文件夹无需我们再次手动创建):

mkdir /home/vsftpd/test

(3)为方便演示,在 test 用户文件夹下新建一个 1.txt 文件。

vi /home/vsftpd/test/1.txt

增加一个新用户
前面我们在启动服务的时候就创建了个默认用户 test。如果需要新增一个新用户,假设用户名:hangge,密码:123456,具体操作如下。
(1)首先执行如下命令进入到容器里面:

docker exec -i -t vsftpd bash

(2)创建新用户的文件夹:

mkdir /home/vsftpd/hangge

(3)编辑用户配置文件:

vi /etc/vsftpd/virtual_users.txt

(4)在文件中添加新用户的用户名和密码:
(5)保存退出后执行如下命令,把登录的验证信息写入数据库。

/usr/bin/db_load -T -t hash -f /etc/vsftpd/virtual_users.txt /etc/vsftpd/virtual_users.db

(6)最后退出容器,并重启容器可以使用新用户连接 FTP 服务了。

exit
docker restart vsftpd
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值