编译一些ftp server
静态编辑bftp
bftp是一个小巧的ftp server
apk update && apk upgrade && apk add wget make gcc g++ zlib-dev
wget https://downloads.sourceforge.net/project/bftpd/bftpd/bftpd-4.4/bftpd-4.4.tar.gz?r=&ts=1493551857&use_mirror=iweb
解压进入目录
./configure --enable-libz CFLAGS=-Os
修改makefile link阶段加入 -static
make -j4
编译后当前目录即可得到静态编译的bftpd
ncftp
既包含服务端,也有客户端
vsftpd
chroot_local_user #是否将所有用户限制在主目录,YES为启用 NO禁用.(该项默认值是NO,即在安装vsftpd后不做配置的话,ftp用户是可以向上切换到要目录之外的)
https://blog.csdn.net/bluishglc/article/details/42398811
500 OOPS: vsftpd: cannot locate user specified in ‘ftp_username’:ftp 原因: 配置文件在调用默认匿名用户anonymous时会去找ftp这个系统用户,但是ftp这个系统用户又不存在(可能被删除了)
解决一: 取消匿名模式。
在vsftpd.conf中将anonymous_enable设置为NO,
anonymous_enable=NO
重新启动vsftpd,问题解决。
local user
adduser -h /home/ftpuser -s /sbin/nologin ftpuser
nopriv_user=xxxx
anonymous_enable=NO
local_enable=YES
vsftpd 默认会查找配置文件/etc/vsftpd.conf
.可以启动时指定使用地址 vsftpd /etc/vsftpd/vsftpd.conf
virtual users
配置较复杂
新建用户
/etc/vsftpd/ftpusers.txt 是所有用户列表,修改此文件,奇数行为用户名,偶数行为密码
db_load -T -t hash -f /etc/vsftpd/ftpusers.txt /etc/vsftpd/vsftpd_login.db 生成数据库文件
chmod 700 /etc/vsftpd/vsftpd_login.db 然后重启vsftpd即可
配置用户登录的目录
/etc/vsftpd/vsftpd_user_conf 下存放每个用户的配置,里面可以放置授权的目录
然后重启 vsftpd
proftpd
apk add gcc g++ make
./configure
make
无其他依赖
uftpd
https://github.com/troglobit/uftpd
https://github.com/troglobit/finit
https://github.com/troglobit/merecat
https://github.com/troglobit/redir
pyftpdlib
https://pypi.org/project/pyftpdlib/
安装 pip install pyftpdlib
启动 python -m pyftpdlib
默认端口是 2121
指定用户名与密码 python -m pyftpdlib -u user -P password
其他参数
p 指定端口(默认为 2121 ) w 写权限(默认为只读) d 指定目录 (默认为当前目录)