安装vsftp
安装vsftp
1 | yum -y install vsftpd |
修改配置文件
1 | vi /etc/vsftpd/vsftpd.conf |
保证下面3项为YES
anonymous_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
设置vsftpd开机启动
1 | systemctl enable vsftpd.service |
启动并查看vsftpd服务状态,systemctl启动服务成功不会有任何提示,绿色的active表示服务正在运行
1 | systemctl start vsftpd.service |
本地验证ftp是否可以正常访问
安装ftp
1 | yum -y install ftp |
使用anonymous登陆,无需密码
1 | ftp localhost |
220表示服务正常,可以登陆;230表示登陆成功。
查看FTP服务器文件夹信息
注:
解决ftp 530 Permission denied问题
测试ftp登录时显示 530 Permission denied,原因是需要修改配置文件中的userlist_enable的值改为NO1
2
3$ vi /etc/vsftpd/vsftpd.conf
userlist_enable=NO
$ service vsftpd restart
再次测试ftp登录,此时又提示 530 Login incorrect,查了一下 /etc/pam.d/vsftpd 内容,其中一条是
auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
vsftpd将禁止名单指向了/etc/vsftpd/ftpusers,于是vi /etc/vsftpd/ftpusers发现root在名单上,于是删除root并保存,重启 vsftpd。1
2$ vi /etc/vsftpd/ftpusers
$ service vsftpd restart
登录 FTP 成功!
外部证ftp是否可以正常访问
关闭防火墙(也可以设置防火墙规则,得再百度了)
1 | systemctl stop firewalld.service |
为防止机器重启后防火墙服务重新开启,可将防火墙服务永久关闭。1
systemctl disable firewalld.service
在window上输入ftp://IP地址,可看到ftp下的目录(pub为系统预设的)
文件读写。
到上面为止,我们发现ftp目录下并不能读写文件,这是由文件夹权限和selinux引起的。
设置文件夹权限,将pub文件夹的权限设置为777
1 | chmod 777 -R /var/ftp/pub |
关闭selinux服务
1 | vi /etc/selinux/config |
将SELINUX=enforcing改为:SELINUX=disabled
系统重启,让配置生效
1 | shutdown -r now |
上传文件
windows 连接
FileZilla软件
至此,ftp完全安装完成,若需为FTP配置用户权限,可自行百度。
安装 vsftpd
1 | $ yum install vsftpd |
开启ftp服务,要使用ftp必须开启21端口。centos 7使用firewalld代替了原来的iptables。使用下面命令:1
$ firewall-cmd --zone=public --add-port=21/tcp --permanent
成功设置显示success,但别忘了重新加载防火墙配置1
$ firewall-cmd --reload
启动 vsftpd
$ service vsftpd start
解决ftp 530 Permission denied问题
测试ftp登录时显示 530 Permission denied,原因是需要修改配置文件中的userlist_enable的值改为NO1
2
3$ vi /etc/vsftpd/vsftpd.conf
userlist_enable=NO
$ service vsftpd restart
再次测试ftp登录,此时又提示 530 Login incorrect,查了一下 /etc/pam.d/vsftpd 内容,其中一条是
auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
vsftpd将禁止名单指向了/etc/vsftpd/ftpusers,于是vi /etc/vsftpd/ftpusers发现root在名单上,于是删除root并保存,重启 vsftpd。1
$ service vsftpd restart
登录 FTP 成功!