按照印象中的方法搭建个fpt环境,本以为十分钟就搞定了,结果各种报错折腾了俩小时。特此记录一下,防止下次再犯。
1. 环境:centos7.6
2. 安装ftp服务端
yum install -y vsftpd
3. 开发端口20、21
firewall-cmd --add-port=21/tcp --permanent
firewall-cmd --add-port=20/tcp --permanent
开放服务
firewall-cmd --add-service=ftp --permanent
firewall-cmd --reload
4. 创建用户
useradd -d /home/hfut -s /sbin/nologin virtual
【或者useradd hfut -s /sbin/nologin】
添加密码
passwd hfut
【修改用户的目录 usermod -d /ftp ftpname】
5. 限制用户只能访问自身目录【/home/hfut】
修改/etc/vsftpd/vsftpd.conf如下:
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
在目录/etc/vsftpd下创建chroot_list,将用户名写入
6. 添加写权限
配置文件/etc/vsftpd/vsftpd.conf中添加
allow_writeable_chroot=YES
7. 重启服务
systemctl restart vsftpd.service
8. 设置ftp开机启动
systemctl enable vsftpd.service
* 如果登录530,尝试修改 /etc/pam.d/vsftpd,注释第四行
auth required pam_shells.so
然后重启服务
* 如果其它账号无法上传文件,尝试把ftp目录及子目录的权限调整一下
chmod -R /home/ftp