一、安装ProFTPD
$ sudo apt-get install proftpd
二、添加ftp组及用户
$ groupadd ftpgroup
// -d 参数表示默认目录
$ useradd ftpadmin -d /home/ftp_files/ -g ftpgroup
执行完这句的时候,cat /etc/group 发现ftpgroup组下面没有用户 ftpadmin
//最后一句显示:ftpgroup:x:1001:
这时候执行 gpasswd -a ftpadmin ftpgroup // 添加用户ftpadmin到组ftpgroup
给用户ftpadmin设置密码 passwd ftpadmin
//修改完以后在执行 cat /etc/group 最后一句显示:ftpgroup:x:1001: ftpadmin
三、修改用户 chroot
连接成功但并没有限定用户 ftpadmin 的根目录,也就是chroot,用户还可以访问上级目录
// 修改 proftpd配置文件
$ vi /etc/proftpd/proftpd.conf
// 去掉如下行前的注释 #
# DefaultRoot ~
// 重启 proftpd 即可
$ /etc/init.d/proftpd restart
四、禁止用户终端登录
// 编辑 /etc/passwd
$ vi /etc/passwd
ftpu:x:1006:1004::/home/ftp_files/:/bin/sh
修改成
ftpu:x:1006:1004::/home/ftp_files/:/sbin/nologin
重启proftpd后ftp客户端提示无法连接:
-------------------------------
530 Login incorrect.
-------------------------------
经检查发现当前系统的shells列表中没有 /sbin/nologin
// 添加 /sbin/nologin 支持
$ vi /etc/shells
// 在该文档中添加一行
/sbin/nologin
五、重启proftpd,完成.
==========================================
如果ftp客户端上传失败的时候。请注意一下目录的权限