用户禁锢、黑白名单——————4

用户禁锢、黑白名单

沿用练习一,通过调整FTP服务端配置,实现以下目标:
1)将FTP用户禁锢在各自的宿主目录下,阻止其切换到其他的文件夹
2)通过/etc/vsftpd/ftpusers黑名单阻止用户 mike 访问
3)将/etc/vsftpd/user_list文件设为白名单,允许用户 lisi、mike 访问
4)分别测试匿名访问、以用户lisi和mike访问的结果
5)将 ftp 加入白名单,再测试匿名访问

对于匿名用户ftp来说,默认已经启用禁锢(仅限于起始目录/var/ftp);而对FTP本地用户来说,默认并没有禁锢(不仅可以访问宿主目录,还可以跳转到其他目录),存在一定安全隐患。若要禁锢本地用户,只需设置 chroot_local_user = YES即可。
vsftpd服务提供了两个用户列表文件,其中 /etc/vsftpd/ftpusers 作为默认的黑名单使用,列在此文件内的用户将无法登入FTP。
而另一个文件 /etc/vsftpd/user_list只是一个用户名列表,根据配置参数 userlist_enable 的值是YES(默认)还是NO来决定是否启用此列表。一旦启用此列表文件以后,如果配置参数 userlist_deny的值是YES(默认)则此列表为黑名单(拒绝指定的用户),如果是NO则此列表作为白名单使用。

步骤一:禁锢FTP本地用户账号
1)验证未启用禁锢前的风险

以普通用户lisi登入后,起始目录位于/home/lisi/,但可以通过cd命令切换到服务器上的其他目录(比如/etc/),并下载有读取权限的文件(比如passwd),可能导致未授权的信息泄露。

[root@pc205 ~]# ftp 192.168.4.5  				//连接FTP服务器
Connected to 192.168.4.5 (192.168.4.5).
220 (vsFTPd 2.2.2)
Name (192.168.4.5:root): lisi  				//以FTP本地用户登录
331 Please specify the password.
Password:  									//验证口令
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> pwd  									//查看起始目录
257 "/home/lisi"  							//位于用户lisi的家目录
ftp> cd /etc/ 								//切换到其他目录
250 Directory successfully changed.
ftp> get passwd  								//下载/etc/目录下的passwd文件
local: passwd remote: passwd
227 Entering Passive Mode (192,168,4,5,64,118).
150 Opening BINARY mode data connection for passwd (2122 bytes).
226 Transfer complete.
2122 bytes received in 4.5e-05 secs (47155.56 Kbytes/sec)
ftp> quit  									//断开连接
221 Goodbye.
[root@pc205 ~]# head -5 passwd  				//确认下载后的文件
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

2)修改vsftpd.conf配置文件,启用禁锢本地用户的设置

[root@svr5 ~]# vim /etc/vsftpd/vsftpd.conf
.. ..
chroot_local_user=YES  						//添加禁锢配置

[root@svr5 ~]# service  vsftpd reload
关闭 vsftpd:                                              [确定]
为 vsftpd 启动 vsftpd:                                    [确定]

3)验证启用禁锢后的效果
再次以用户lisi登入FTP服务器,会发现起始目录(/home/lisi)已经被视为用户FTP会话的根目录,无法切换到/etc/等其他目录。

[root@pc205 ~]# ftp 192.168.4.5  				//连接FTP服务器
Connected to 192.168.4.5 (192.168.4.5).
220 (vsFTPd 2.2.2)
Name (192.168.4.5:root): lisi  				//以FTP本地用户登录
331 Please specify the password.
Password:  									//验证口令
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> pwd  									//查看起始目录
257 "/"  										//已经位于FTP根目录
ftp> ls  										//实际还是在lisi的家目录
227 Entering Passive Mode (192,168,4,5,239,27).
150 Here comes the directory listing.
-rw-r--r--    1 507      508         47884 Jan 13 08:01 install.log
-rw-r--r--    1 0        0              16 Jan 13 07:01 lisi.txt
226 Directory send OK.
ftp> cd /etc  								//尝试切换到其他目录失败
550 Failed to change directory.
ftp> quit  									//断开连接
221 Goodbye.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值