Docker - 在容器中搭建运行FTP服务器(vsftpd)
1.下载镜像docker pull fauria/vsftpd2. 复制以下的 一条命令 后台运行容器,开启端口21, 建立默认用户 :ftpuser密码:123456docker 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
·
1.下载镜像
docker pull fauria/vsftpd
2. 复制以下的 一条命令 后台运行容器,开启端口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
更多推荐
已为社区贡献4条内容
所有评论(0)