1.创建用户,并指定分组和主目录
useradd -d /home/lch -g root lch
还可以增加其他参数,比如指定用户使用shell等,具体的google一下
2.设定密码
passwd lch
3.查看、改变、添加用户分组
[root@localhost ~]# groups lch
lch : root www
# -G 改变分组
[root@localhost ~]# usermod -G root lch
[root@localhost ~]# groups lch
lch : root
# -g 新增分组
[root@localhost ~]# usermod -g www lch
[root@localhost ~]# groups lch
lch : www root
4.删除用户
# 加上 -r 参数,删除更彻底
userdel -r lch
更改ftp配置文件
修改配置文件/etc/vsftpd/vsftpd.conf并设定或删掉注释:
userlist_enable=NO
anonymous_enable=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
打开/etc/vsftpd/user_list并增加一行:
lch
新建文件/etc/vsftpd/chroot_list并增加一行
lch
配置用户ftp权限及访问路径限制:
此时用usertest登陆系统ftp,是否可以访问?如果无法访问,说明我们的ftp做了限制。打开/etc/vsftpd/vsftpd.conf,查找userlist_enable、userlist_deny、userlist_file。如果userlist_deny=NO:只允许userlist_file文件中的用户可访问ftp;如果userlist_deny=YES:userlist_file文件中列举的用户不能通过ftp访问系统。userlist_enable是该功能的开关。我们的系统配置如下:
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd/user_list
所以需要把用户加入到/etc/vsftpd/user_list文件中,每个用户一行。
由于该主目录是mpsp用户建的,usertest是mpsp组的成员,所以usertest默认具有增删查改权限;而usertest作为mpsp组成员,对/home/mpsp下的所有路径具有访问权限(根据各目录的权限设置,默认是这样),登录ftp后会发现,usertest用户可以访问其他目录,并且具有mpsp组的权限,这样做是不允许的,我们需要将usertest用户的访问范围控制在其主目录下。方法如下:
1. cd /etc/vsftpd 进入ftp配置文件目录
2. vi vsftpd.conf编辑此文件,找到#chroot_list_enable=YES,删除前面的那个#号,表示开启此限制功能
找到chroot_list_file:chroot_list_file=/etc/vsftpd/chroot_list
3. 编辑chroot_list文件,加入你要限制的用户名,一行一个用户。
如果更新了vsftpd.conf,一定要重启ftp,命令如下:
[root@linux sir001 root]# /etc/init.d/vsftpd restart
关闭vsftpd:[ 确定]
为vsftpd 启动vsftpd:[ 确定]
启动FTP服务
service vsftpd start
还有两个参数:stop、restart
可以生成两个配置文件并配置,一个主管匿名用户用21端口,一个主管本地用户用另一端口,如果这样的话也得生成两个启动服务的文件cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd2.conf
两个配置文件配置如下:
/etc/vsftpd/vsftpd.conf过滤出来的配置信息(主管匿名用户的21端口)
[root@desktopx ~]# grep -v '#' /etc/vsftpd/vsftpd.conf |grep -v '^$'
anonymous_enable=YES
local_enable=NO
write_enable=YES
local_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
chown_uploads=YES
chown_username=ftp01
xferlog_file=/var/log/xferlog
xferlog_std_format=YES
anon_root=/anon
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
/etc/vsftpd/vsftpd2.conf过滤出来的配置信息(主管本地用户的2121端口)
[root@desktopx ~]# grep -v '#' /etc/vsftpd/vsftpd2.conf |grep -v '^$' anonymous_enable=NOlocal_enable=YESwrite_enable=YES local_umask=022dirmessage_enable=YESxferlog_enable=YESconnect_from_port_20=YESxferlog_file=/var/log/xferlogxferlog_std_format=YES local_root=/local listen=NO listen_port=2121 listen_ipv6=YESpam_service_name=vsftpd userlist_enable=YES tcp_wrappers=YES
启动服务配置文件,原始的不用修改,还是启动原始管理匿名用户的21端口,拷贝一个2号文件用来启动管理本地用户的2121端口,过程和配置如下:
cp /usr/lib/systemd/system/vsftpd.service /usr/lib/systemd/system/vsftpd2.service
vim /usr/lib/systemd/system/vsftpd2.service
1 [Unit]
2 Description=Vsftpd ftp daemon
3 After=network.target
4
5 [Service]
6 Type=forking
7 ExecStart=/usr/sbin/vsftpd /etc/vsftpd/vsftpd2.conf
8
9 [Install]
10 WantedBy=multi-user.target
然后重启服务 systemctl restart vsftpdsystemctl restart vsftpd2
最后查看端口,会生成两个进程,这时就成功啦
[root@desktopx ~]# netstat -tnpl |grep :21
tcp6 0 0 :::21 :::*LISTEN 8000/vsftpd
tcp6 0 0 :::2121 :::*LISTEN 8008/vsftpd
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)