Docker使用pure-ftp的方法及配置
1、用docker下载pure-ftp
docker pull stilliard/pure-ftpd:hardened
2、下载完后直接运行
docker run -dt --name ftpd_server -p 192.168.1.66:21:21 -p 192.168.1.66:30000-30209:30000-30209 -e "PUBLICHOST=localhost" --privileged=true -v /home/ftpusers/robin:/home/ftpusers/www stilliard/pure-ftpd:hardened bash
说明:
使用绑定IP为192.168.1.66,如果是公开FTP的话,可以不写IP。这里只是本机测试
不使用官方教程的端口号30000-30009,因为30000-30009端口只能满足5个用户同时FTP登陆。计算方式为“(最大端口号-最小端口号) / 2”。所以我这里修改为可以满足100个用户同时连接登陆
做了个目录映射,把本机的/home/ftpusers/robin目录映射到pure-ftp的/home/ftpusers/www下
3、登陆pure-ftp容器
docker exec -it ftpd_server /bin/bash
4、在容器内新建用户(用户名为:www)
pure-pw useradd www -u ftpuser -d /home/ftpusers/www
说明:
运行这个命令后会让输入两次密码,即FTP用户(www)的登陆密码
5、保存
pure-pw mkdb
这个命令不可少,不然刚刚新建的用户就不生效了
6、运行FTP
/usr/sbin/pure-ftpd -c 100 -C 100 -l puredb:/etc/pure-ftpd/pureftpd.pdb -E -j -R -P $PUBLICHOST -p 30000:30209 &
说明:
-c 100为:允许同时连接的客户端数列100
-C 100为:同一IP最大的连接数100
这两个数值与端口号30000:30209对应上
pure-ftp的命令参数可以参考这文章:
http://blog.csdn.net/knowledgeaaa/article/details/25040153
pure-ftp修改最大连接数参考文章:
http://blog.csdn.net/gold2008/article/details/9074579
docker pure-ftp
https://github.com/stilliard/docker-pure-ftpd
附注:
使用FileZilla FTP登陆时,注意这个做位置需要选上:
否则会列不出登陆成功的目录及文件内容