Docker - 在容器中搭建运行FTP服务器(vsftpd)

转载 版权声明:本文为CSDN博主「Cadence_D」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/qq_35893120/article/details/119539582

1.下载镜像

docker pull fauria/vsftpd
  1. 复制以下的 一条命令 后台运行容器,开启端口21, 建立默认用户 :ftpuser 密码:123456
docker run -d -p 20:20 -p 21:21 -p 21100-21110:21100-21110 -v /home/ftp:/home/vsftpd -e FTP_USER=ftpuser -e FTP_PASS=123456 -e PASV_ADDRESS=106.15.38.88 -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=ftpuser -e FTP_PASS=123456:设置默认的用户名密码
PASV_ADDRESS:宿主机 ip,当需要使用被动模式时必须设置。
PASV_MIN_PORT~ PASV_MAX_PORT:给客服端提供下载服务随机端口号范围,默认 21100-21110,与前面的 docker 端口映射设置成一样。

以命令的方式创建用户与密码,会在容器中的/home/vsftpd 自动创建用户文件夹ftpuser和virtual_users.txt(存放用户名与密码)

3,防火墙配置

开启以下端口号:

20 、21 、 21100-21110

4、访问服务
电脑命令行CMD,输入用户名与密码 连接

ftp 106.15.38.88

5、创建新用户
进入容器,新建用户名和密码

docker exec  -it 容器id /bin/bash

手动创建用户名文件夹,如test

mkdir /home/vsftpd/test

写入账号与密码:test 654321

vi /etc/vsftpd/virtual_users.txt

保存退出后执行如下命令,把登录的验证信息写入数据库。

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

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

 docker restart 容器id
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值