安装vsftp
使用yum命令安装vsftp
[root@Cloud12347 ~]
添加ftp帐号和目录
先检查一下nologin的位置,通常在/usr/sbin/nologin或者/sbin/nologin下。
使用下面的命令创建帐户,该命令指定了/home/wwwroot为用户pwftp的根目录,您可以自己定义帐户名和目录:
[root@Cloud12347 ~]
修改该帐户密码
[root@Cloud12347 ~]
修改指定目录的权限
[root@Cloud12347 ~]
另外的一种方式配置权限
上面的方法就是必须把该目录指定为这个组,这个用户的才能访问
但比如这个目录是属于nginx(www)的,这个时候就不能沿用上面的方法了
添加这一步之后,用户pwftp1则可以登录ftp了
到了上传的时候不行请修改权限
发现权限是rwxr_xr_x
第一组是用户权限 rwx 读写执行都有
第二组是所属组其他用户权限 r_x 只有读执行
第三组是其他所属组的用户权限 r_x 也是只有读执行
# chmod -R 775 /xiangmu/xiangmu1
如果对于用户的权限不清楚,请看我的博客linux用户组、文件、权限
配置vsftp
[root@Cloud12347 ~]# vi /etc/vsftpd/vsftpd.conf
将配置文件中”anonymous_enable=YES “改为 “anonymous_enable=NO”
取消如下配置前的注释符号:
local_enable=YES write_enable=YES
保存修改,按ESC键,输入:wq
修改shell配置
vi编辑/etc/shells,如果该文件里没有/usr/sbin/nologin或者/sbin/nologin
(具体看当前系统配置)则追加进去
启动vsftp服务并测试登录
使用命令启动vsftp服务:
[root@Cloud12347 ~]
然后用帐号pwftp测试下是否可以登陆ftp。目录是/home/wwwroot。
vsftpd 目录下的两个值得注意文件
ftpd 中/etc/user_list的用户
1. userlist_enable和userlist_deny两个选项联合起来针对的是:本地全体用户(除去ftpusers中的用户)和出现在user_list文件中的用户以及不在在user_list文件中的用户这三类用户集合进行的设置。
2. 当且仅当userlist_enable=YES时:userlist_deny项的配置才有效,user_list文件才会被使用;当其为NO时,无论userlist_deny项为何值都是无效的,本地全体用户(除去ftpusers中的用户)都可以登入FTP
3. 当userlist_enable=YES时,userlist_deny=YES时:user_list是一个黑名单,即:所有出现在名单中的用户都会被拒绝登入;
4. 当userlist_enable=YES时,userlist_deny=NO时:user_list是一个白名单,即:只有出现在名单中的用户才会被准许登入(user_list之外的用户都被拒绝登入);另外需要特别提醒的是:使用白名单后,匿名用户将无法登入!除非显式在user_list中加入一行:anonymous
/etc/ftpusers 文件中的黑名单
ftpusers列表中的用户不能访问FTP:这是vsftpd服务在启动后已经决定的,只要在这个列表里面用户都不能访问FTP,没有其它的开关可以控制