一、sudo
一) sudo能做什么?
1、限制指定用户在指定主机主机上运行指定的管理命令;
2、详细记录用户基于sudo执行的命令的相关日志信息;
3、“检票系统”:用户第一次执行sudo会要求输入密码,用户会获得一个有固定存活时长的“入场券”;默认为5分钟;
通过编辑方式实现以上功能:
/etc/sudoers: 只能由管理编辑以实现授权;
专用编辑命令:visudo
/etc/sudoers:
授权格式:
who whichhost dosomething
who可为:用户,组,Alias也就是别名
host可为:ip地址,主机名,host_alias
dosomething 可为: 可执行命令(绝对路径),CMD_ALIAS
二)sudo命令:
-l: 查看当前用户可执行的sudo命令
-u 用户名 命令:以指定用户的身份运行后面的“命令”;
-k: 清除“入场券”;
-b 命令:在后台运行指定的命令
-p 提示语:可以更改询问密码的提示语,其可用%u变量来替换为用户名,%h替换为主机名;
-e 文件路径:不是执行命令,而修改指定的文件
三)练习
1、授权centos用户可以运行fdisk命令完成磁盘管理,以及使用mkfs或mke2fs实现文件系统管理?
centos ALL=(ALL) /sbin/mke2fs,/sbin/fdisk,/sbin/mkfs,/sbin/partx
2、授权gentoo用户可以运行逻辑卷管理的相关命令
gentoo ALL=(ALL) /bin/mount,/bin/umount,/sbin/pvcreate,/sbin/pvdisplay,/sbin/vgcreate,/sbin/vgdisplay,/sbin/lvcreate,/sbin/lvdisplay,/bin/df
二、tcp_wrapper
一)TCP_Wrapper软件包是一种基于TCP/IP协议之上的、运行于UNIX/Linux系统、基于访问控制技术的一种网络防火墙软件。
判断服务是否能够由tcp_wrapper控制:
1、动态编译:ldd命令来检测其所依赖库是否有libwrap
libwrap.so.0 => /lib64/libwrap.so.0
2、静态编译:strings /path/to/program
其显示结果中,如果有类似如下内容:
hosts.allow
hosts.deny
3、tcp_wrapper通过读取配置文件中的规则来判定某服务是否可被访问:
/etc/hosts.allow
/etc/hosts.deny
文件中的规则是即时生效的;
4、
5、配置文件的语法:
daemon_list: client_list [:options]
daemon_list可为:
应用程序程序名称
应用程序程序名称列表:使用逗号分隔
例如sshd, in.telnetd
ALL:所有受控进程
client_list可为:
IP地址
主机名
网络地址:必须使用完整格式掩码,不能使用长度掩码,172.16.0.0/16不合用;
简短的网络地址:172.16. 表示为 172.16.0.0/255.255.0.0
ALL: 所有客户端地址;
KNOWN: 知道的ip地址
UNKNOWN:不知道的ip地址
PARANOID:主机名和IP地址的各自的正反解析结果不匹配;
特殊的变量:
EXCEPT:除了
[:options]可为:
deny: 通常用于在hosts.allow文件实现拒绝的规则;
allow: 通常用于在hosts.deny文件实现允许的规则;
spawn: 启动一个额外命令
二)练习
控制vsftpd仅允许172.16.0.0/255.255.0.0网络中的主机访问,但172.16.100.3除外;对所被被拒绝的访问尝试都记录在/var/log/tcp_wrapper.log日志文件中;
答:1)vim /etc/host.allow
vsftpd: 192.168.3.20-192.168.3.120 EXCEPT 192.168.3.52
vsftpd: 192.168.3.0/255.255.255.0 EXCEPT 192.168.3.50,192.168.3.103
2)vsftpd: ALL : spawn /bin/echo `date` login attempt from %c to %s, %d >> /var/log/tcp_wrapper.log
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。