CentOS7安装及配置vsftpd (FTP服务器)
1、安装vsftpd
1 yum -y install vsftpd
2、设置开机启动
1 systemctl enable vsftpd
3、启动ftp服务
1 systemctl start vsftpd.service
4、打开防火墙,开放21端口
1 firewall-cmd --zone=public --add-port=21/tcp --permanent
2 firewall-cmd --permanent --zone=public --add-service=ftp
3 firewall-cmd --reload
5、添加ftp用户
1 useradd -g root -d /home/wwwroot/asite -s /sbin/nologin ftpuser
注:表示新增一个ftpuser(用户名),且指定上传目录在/home/wwwroot/asite下
如果后期想变更此用户的上传目录到(/run/media/root/xxx/wwwroot/xxx.org),请使用下面的命令:
1 usermod -d /run/media/root/xxx/wwwroot/xxx.org ftpuser
6、设置用户密码
1 passwd ftpuser
7、配置selinux 允许ftp访问home和外网访问
1 setsebool -P allow_ftpd_full_access on
2 setsebool -P ftp_home_dir on
8、设置权限
1 chown -R ftpuser:root /home/wwwroot/asite
9、修改vsftp配置文件,禁用匿名登录
路径:/etc/vsftpd/vsftpd.conf
anonymous_enable=YES 改为: anonymous_enable=NO
其他命令:
重启 service vsftpd restart
启动/停止service vsftpd start/stop
状态 service vsftpd status
File Zilla遇到的问题:
状态: 正在连接 118.25.3.XX…
响应: fzSftp started, protocol_version=8
命令: open “userftp@118.25.3.XX” 22
命令: Pass: **
错误: Received unexpected end-of-file from SFTP server
错误: 无法连接到服务器
解决办法如下:
1、 vi编辑/etc/ssh/sshd_config
sudo nano /etc/ssh/sshd_config
2、找到如下一行代码(可以使用:?查找) # Subsystem sftp /usr/lib/openssh/sftp-server
替换 Subsystem sftp internal-sftp
3、重启sshd service sshd restart