简介
vsftpd是 “very secure FTP deamon”的缩写,是一个完全免费,开源的ftp服务器软件。
特点
小巧轻快,安全易用,支持虚拟用户、支持带宽限制等功能。
安装
注:在安装前需提前确认是否已经安装了vsftpd 命令如下:
rpm -qa|grep vsftpd
另外,默认的配置文件路径为: /etc/vsftpd.conf
安装:
yum update
yum install vsftpd -y
启动
systemctl start vsftpd
设置防火墙
firewall-cmd --permanent --add-service=ftp
firewall-cmd --reload
访问
可以看到vsftp服务安装成功
vsftpd服务的配置参数
ftp的基本信息
访问数据端口:21
数据传输端口:>1024随机端口
1 | [root@localhost ~]# netstat -antlupe | grep vsftpd |
默认发布目录:/var/ftp
访问方式
lftp 192.168.224.129 ##匿名登陆 –> /var/ftp
lftp 192.168.224.129 -u keac ##用户登陆 –> /home/keac
配置文件
/etc/vsftpd.conf
ftp的安全部署
anonymous_enable=YES|NO #匿名用户是否可以登陆
local_enable=YES|NO #本地用户是否可以登陆
write_enable=YES|NO #本地用户十分可写
每一次修改配置文件,都需要重新启用
systemctl restart vsftpd
常见错误:
- 530 认证失败
- 550 服务本身不支持
- 500 用户权限过大
- 553 用户权限过小
配置用户
添加一个ftp用户
useradd ftpuser
这样一个用户建完,可以用这个登录,记得用普通登录不要用匿名了。登录后默认的路径为 /home/ftpuser.
给ftp用户添加密码
passwd ftpuser
输入两次密码后修改密码。
访问
用ftp工具打开 我用的是 flashFXP
问题
外网是可以访问上去了,可是发现没法返回目录(使用ftp的主动模式,被动模式还是无法访问),也上传不了,因为selinux作怪了。
getsebool -a | grep ftp
执行上面命令,再返回的结果看到两行都是off,代表,没有开启外网的访问
setsebool -P allow_ftpd_full_access on
setsebool -P ftp_home_dir on
这样应该就可以了
关闭匿名访问
/etc/vsftpd.conf
改为no