大部分情况下我们不希望一般人获取root权限来操作整个服务器,只需要给网站管理员网站所在目录的操作权限即可,那么安装一个vsftp即可。
vsftp安装
yum -y install vsftpd
systemctl enable vsftpd.service
systemctl start vsftpd.service
firewall-cmd --zone=public --add-port=21/tcp --permanent
firewall-cmd --reload
vsftp配置
vim /etc/vsftpd/vsftpd.conf
修改
所有用户都被限制在其主目录下 2.不使用chroot_list指定的用户列表,没有任何“例外”用户
#chroot_list_enable=YES
# chroot_list_enable=NO
#chroot_list_file=/etc/vsftpd.chroot_list
改为
chroot_local_user=YES
chroot_list_enable=NO
chroot_list_file=/etc/vsftpd/chroot_list
vsftpd 配置:chroot_local_user与chroot_list_enable详解
chroot_local_user:是否将所有用户限制在主目录,YES为启用 NO禁用
chroot_list_enable: #是否启动限制用户的名单 YES为启用 NO禁用(包括注释掉也为禁用)
chroot_list_file=/etc/vsftpd/chroot_list #是否限制在主目录下的用户名单,取决于chroot_local_user的配置,与其配置相反
增加用户wuying,指向目录/home/wwwroot/ftpuser,禁止登录SSH权限。
useradd -d /var/www/html/blog_shadowwu_club -g ftp -s /sbin/nologin wuying
passwd wuying
输入超过8位的密码,输入两次
********
递归把所有目录及文件的拥有者设为新添加的ftp用户
chown -R wuying /var/www/html/blog_shadowwu_club
vsftp无法连接问题
chmod 555 /var/www/html/blog_shadowwu_club
必须将其根目录权限设置为555,不然vsftp认为权限太高,不让连接,查了好长时间才发现的问题
遇到wordpress下插件安装无法复制文件问题
在wp-config.php最后添加
define("FS_METHOD", "direct");
define("FS_CHMOD_DIR", 0777);
define("FS_CHMOD_FILE", 0777);
解决权限问题