安装
yum install vsftpd -y
如果使用yum install xxxx,会找到安装包之后,询问你Is this OK[y/d/N],需要你手动进行选择。但是如果加上参数-y,就会自动选择y,不需要你再手动选择!
- yum -y install 包名(支持*) :自动选择y,全自动
- yum install 包名(支持*) :手动选择y or n
- yum remove 包名(不支持*)
- rpm -ivh 包名(支持):安装rpm包
5.rpm -e 包名(不支持):卸载rpm包
rpm -qa | grep vsftpd 来查看是否安装相应的包
用户
安装之后首先创建ftp用户,比如ftpuser,命令如下:
useradd -s /sbin/nologin -d /home/ftpuser ftpuser
创建用户后设置密码
passwd ftpuser
设置vsftpd
一般设置文件在 /etc/vsftpd/vsftpd.conf 以下设置都是在这个里面
设置需用户名及密码登录
找到anonymous_enable这个配置项,默认是YES,修改成NO,表示不允许匿名用户登录
设置登录模式及使用的端口
开启被动模式
默认是开启的,但是要指定一个端口范围,打开vsftpd.conf文件,在后面加上
pasv_enable=yes
若设置为YES,则使用PASV工作模式;若设置为NO,则使用PORT模式。默认值为YES,即使用PASV工作模式。
pasv_min_port=30000
在PASV工作模式下,数据连接可以使用的端口范围的最大端口,0 表示任意端口。默认值为0。
pasv_max_port=30999
在PASV工作模式下,数据连接可以使用的端口范围的最小端口,0 表示任意端口。默认值为0。
修改权限
chroot_local_user=YES这个配置,默认是注释的,这里去掉注释,表示只让用户在自己的目录里面活动,如果只是保存这一个配置的话,用ftp连接客户端会返回500 OOPS: vsftpd: refusing to run with writable root inside chroot()的错误,即禁止运行在可写的家目录中,因为刚才ftp_test这个目录有w权限,而现在我们使用的vsftpd版本是3.0.2 属于比较新的版本,为了安全性做了一些限制,如果你此时想通过 chmod a-w /home/ftp_test 来去掉目录的写权限,那么连接成功是没问题的,但是无法上传文件了,所以网上很多说修改权限的方法是不可取的,正确的做法是应该在下面添加一行配置allow_writeable_chroot=YES表示允许对家目录的写权限。
chroot_local_user=YES
allow_writeable_chroot=YES
一般也就是用这些功能
别人的随笔
一些命令
systemctl [start stop restart enable disable status ] vsftpd.service //启动、关闭、重启、自启、不自启、查看状态
systemctl enable vsftpd.service //自动启动vsftpd