FTP配置多用户多目录多权限

环境介绍

根据开发的需求 要求创建FTP服务器,把前端和后端分开用不同的FTP账号

系统环境

centos 7.4
selinux 关闭
防火墙关闭

安装FTP

很简单就一条命令
yum install vsftpd 

创建FTP账号

useradd  -d /home/bim/web -m www 
useradd  -d /home/bim -m admin
passwd admin
mkdir -p /home/bim
chmod -R 777 /home/bim
chmod -R 777 /home/bim/*

修改配至文件

[root@bimvm01 bim]# cat /etc/vsftpd/vsftpd.conf |grep  -v "^#"
anonymous_enable=no      #设置是否允许匿名用户登录 
local_enable=YES         #设置是否允许本地用户登录  
write_enable=YES         #是否允许用户有写权限 
local_umask=022          #设置本地用户创建文件时的umask值 
dirmessage_enable=YES    #允许为目录配置显示信息,显示每个目录下面的message_file文件的内容
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES  #日志文件位置
chroot_local_user=YES   #锁定用户到各自的根目录
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
listen=NO
listen_ipv6=YES
 
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
local_root=/home/bim   #用户路径 
user_config_dir=/etc/vsftpd/userconfig  #用户配至文件
allow_writeable_chroot=YES
可以参考另外一篇文章
chroot_list 文件下不写入内容
cd /etc/vsftpd/
touch chroot_list
mkdir userconfig
cd userconfig/
#配置各自用户访问根目录
vim admin
local_root=/home/bim
 
[root@bimvm01 vsftpd]# ll
-rw-r--r--  1 root root    0 4月  19 16:10 chroot_list
-rw-------. 1 root root  125 10月 31 03:45 ftpusers
drwxr-xr-x  2 root root   30 4月  19 17:09 userconfig
-rw-------  1 root root  372 4月   4 13:47 user_list
-rw-------  1 root root 5172 4月  19 17:19 vsftpd.conf
-rw-------  1 root root 5136 4月  19 14:41 vsftpd.conf.bak
-rwxr--r--. 1 root root  338 10月 31 03:45 vsftpd_conf_migrate.sh
[root@bimvm01 vsftpd]# cd userconfig/
[root@bimvm01 userconfig]# ll
总用量 8
-rw-r--r-- 1 root root 21 4月  19 17:09 admin
-rw-r--r-- 1 root root 26 4月  19 17:09 www
[root@bimvm01 userconfig]# cat admin 
local_root=/home/bim
[root@bimvm01 userconfig]# cat www 
 local_root=/home/bim/web
[root@bimvm01 userconfig]# pwd
/etc/vsftpd/userconfig
[root@bimvm01 userconfig]# 
然后重启服务

登录验证

 
 
 

链接ftp 500 报错

500 OOPS: vsftpd: refusing to run with writable root inside chroot()
 
解决方法
1. 在服务器上修改Vsftpd的配置文件vsftpd.conf
vim /etc/vsftpd/vsftpd.conf
# 添加一行配置 allow_writeable_chroot=YES
重启ftp 服务
 
原文地址:https://www.cnblogs.com/xuewenlong/p/12800483.html