Sign inSign up

aomitech/vsftpd

By aomitech

Updated over 7 years ago

Vsftpd Docker image based on Ubuntu 18.04. Supports passive mode and virtual users.

Image
0

1.0K

aomitech/vsftpd repository overview

Vsftpd Docker Image

  • latest

Quick reference

How to use this image

启动一个FTP Server

docker run -it --rm -p 21:21 -v /myftp:/ftp aomitech/vsftpd

/ftp目录结构说明

/ftp
  ├── passwd                # 虚拟用户用户名和密码配置文件奇数行为用户名,偶数行为密码
  ├── passwd.db             # db_load 自动生成的密码文件
  ├── root                  # ftp 存放文件根目录
    └── public              # 公开目录,如果虚拟用户没有指定根目录,则默认为该目录
  ├── userconf              # 虚拟用户配置文件存放目录

如何更改vsftpd配置

vsftpd配置在容器启动时根据配置的环境变量自动生成/etc/vsftpd.conf文件.环境变量的key即是vsftpd的配置项.

例如配置被动模式的端口:

docker run -it --rm -p 21:21 -p 1000:1010 -e pasv_min_port=1000 -e pasv_max_port=1010 -v /myftp:/ftp aomitech/vsftpd
vsftpd默认配置
listen=NO
listen_ipv6=YES
anonymous_enable=NO
local_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO
guest_enable=YES
guest_username=vftp
virtual_use_local_privs=YES
user_config_dir=/ftp/userconf
local_root=/ftp/root/public
chroot_local_user=YES
allow_writeable_chroot=YES
pasv_enable=YES
pasv_min_port=60000
pasv_max_port=60010

如何新增虚拟用户

演示添加一个test用户

设置用户名和密码
echo "test" >> /ftp/passwd
echo "test.pwd" >> /ftp/passwd
新增虚拟用户配置文件/ftp/userconf/test
local_root=/ftp/root/test
write_enable=YES
anon_world_readable_only=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
新增虚拟用户根目录
mkdir -p /ftp/root/test
chown 1000:1000 /ftp/root/test
重启FTP容器

重启FTP容器即可生效

Tag summary

Content type

Image

Digest

Size

39.5 MB

Last updated

over 7 years ago

docker pull aomitech/vsftpd