docker部署ftp服务

一、拉取镜像:

1.1 镜像拉取

docker pull fauria/vsftpd

1.2 查询镜像

docker images |grep ftp

  • 运行镜像

2.1 创建目录

创建目录

/root/ht/ftp/data

/root/ht/web/html/data/ftp/haxftp

2.2 执行

docker run -d -p 2121:21 -p 2020:20 -p 21100-21110:21100-21110 \

-v /root/ht/ftp/vsftpd/:/etc/vsftpd/  \

-v /root/ht/web/html/data/ftp:/home/vsftpd  \

-v /root/ht/ftp/log:/var/log/vsftpd/ \

-e FTP_USER=haxftp \

-e FTP_PASS=htAdmin2023 \

-e PASV_ADDRESS=0.0.0.0 \

-e PASV_MIN_PORT=21000 \

-e PASV_MAX_PORT=22000 \

-e TZ="Asia/Shanghai" \

--name vsftpd \

--restart=always fauria/vsftpd

宿主机端口: 2121  对应ftp容器21

宿主机端口: 2020  对应ftp容器20

宿主机端口段:21000-22000   对应ftp容器21000-22000

宿主机目录:/root/ht/ftp/data 映射容器目录:/home/vsftpd/ftp

ftp账号:haxftp 密码htAdmin2023

绑定ip地址

最小端口21100 最大端口21110

指定容器名称:vsftpd

--restart=always 容器重启跟着docker重启

配置文件vsftpd.conf

background=NO

# Allow anonymous FTP? (Beware - allowed by default if you comment this out).

anonymous_enable=NO

# Uncomment this to allow local users to log in.

local_enable=YES

## Enable virtual users

guest_enable=YES

## Virtual users will use the same permissions as anonymous

virtual_use_local_privs=YES

# Uncomment this to enable any form of FTP write command.

write_enable=YES

## PAM file name

pam_service_name=vsftpd_virtual

## Home Directory for virtual users

user_sub_token=$USER

local_root=/home/vsftpd/$USER

# You may specify an explicit list of local users to chroot() to their home

# directory. If chroot_local_user is YES, then this list becomes a list of

# users to NOT chroot().

chroot_local_user=YES

# Workaround chroot check.

# See https://www.benscobie.com/fixing-500-oops-vsftpd-refusing-to-run-with-writable-root-inside-chroot/

# and http://serverfault.com/questions/362619/why-is-the-chroot-local-user-of-vsftpd-insecure

allow_writeable_chroot=YES

## Hide ids from user

hide_ids=YES

## Enable logging

xferlog_enable=YES

xferlog_file=/var/log/vsftpd/vsftpd.log

## Enable active mode

port_enable=YES

connect_from_port_20=YES

ftp_data_port=20

## Disable seccomp filter sanboxing

seccomp_sandbox=NO

### Variables set at container runtime

pasv_address=0.0.0.0

pasv_max_port=21110

pasv_min_port=21100

pasv_addr_resolve=NO

pasv_enable=YES

添加防火墙

iptables -I INPUT -p tcp --dport 21000:22000 -j ACCEPT

service iptables save

systemctl restart iptables

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值