centos 上安装ftp,及 530 Login incorrect,500 OOPS: chroot错误处理

vsftp的安装

我用的是centos ,所以直接yum安装,安装需要一段时间。

[root@localhost ~]#yum check-update

如果你不想更新系统,也可以直接用以下命令安装vsftp。

[root@localhost ~]#yum -y install vsftpd

然后修改一下vsftpd的配置文件

[root@localhost ~]# vim /etc/vsftpd/vsftpd.conf

不允许匿名访问

anonymous_enable=No

允许使用本地帐户进行FTP用户登录验证

local_enable=YES

使用户不能离开主目录

chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
allow_writeable_chroot=YES

创建chroot_list文件

/etc/vsftpd/chroot_list

直接保存就行,然后重启一下vsftpd

systemctl restart vsftpd

可以用netstat -ntlp 查看一下端口,如果有21号端口占用,就是启动成功了。
然后创建ftp创号

[root@localhost home]# useradd -d /home/testftp -g ftp -s /sbin/nologin testftp

设置一下ftp帐号密码

[root@localhost home]# passwd testftp

用Filezilla连接一下ftp服务器,发现会报 530 Login incorrect 的错误。可以修改一下pam.d下的vsftpd配置

[root@localhost vsftpd]# vim /etc/pam.d/vsftpd

把auth required pam_shells.so 改为 auth required pam_nologin.so ,就可以解决这个问题。
再用Filezilla连一下,又报500 OOPS: chroot这个错误,这个是由于selinux引起的,关掉就行了,我用的
setenforce 0 这个命令,不用重启就可以了,当然你也可以改seliux配置文件来关掉。
然后我们再用Fillzilla连接一下服务器,发现可连上服务器了。

你可能感兴趣的:(运维)