您的位置:首页 > 运维架构 > Linux

【CentOS】Linux sudo权限集中管理案例

2014-06-17 16:12 316 查看
目的

使得公司的Linux系统权限管理更规范,让每个用户拥有自己所该有的权限,防止因为某些用户的权限过大后的一些误操作,导致服务器的不正常运行。

操作

1、编辑Linux系统中的sudoers文件
[root@Temp-2 ~]# vim /etc/sudoers
#Edit by root
User_Alias NETMAN = net01, net02 #用户别名
User_Alias ADMIN = admin01, admin02
User_Alias SA = %sa
#定义的别名必须都要用大写字母,别名后面跟的参数是用 ,(逗号)+ 空格 隔开的
Cmnd_Alias NETCMD = /sbin/ifconfig, /etc/init.d/network #命令别名
Cmnd_Alias ADMINCMD = /usr/sbin/useradd, /usr/sbin/userdel

NETMAN ALL = (ALL) NETCMD
ADMIN ALL = (ALL) ADMINCMD
SA ALL = (ALL) ALL
在/etc/sudoers文件中,自行重新定义别名(别名为一群拥有相同属性的集合)

别名分为:主机别名(Host_Alias)、用户别名(User_Alias)、命令别名(Cmnd_Alias)、身份别名(Runas_Alias)

(其中主机别名和身份别名较少用,主机别名的用途在于多台服务器共享同一个sudoers文件)

别名与Sudoers配置的位置对应为:



注:

①、身份别名中所涉及的用户必须是系统中真实存在的。

②、命令别名的路径必须使用绝对路径

③、在引用用户组时,须在用户组名前面加%

2、对以上的sudoers配置结果进行验证
[root@Temp-2 ~]# su - net01
[net01@Temp-2 ~]$ sudo -l #用户所拥有的sudo权限查看
[sudo] password for net01:
User net01 may run the following commands on this host:
(ALL) /sbin/ifconfig, /etc/init.d/network

[root@Temp-2 ~]# su - admin01
[admin01@Temp-2 ~]$ sudo -l
User admin01 may run the following commands on this host:
(ALL) /usr/sbin/useradd, /usr/sbin/userdel

[root@Temp-2 ~]# id nowsun
uid=500(nowsun) gid=508(sa) groups=508(sa)
[root@Temp-2 ~]# su - nowsun
[nowsun@Temp-2 ~]$ sudo -l
[sudo] password for nowsun:
User nowsun may run the following commands on this host:
(ALL) ALL
对比完发现,与在/etc/sudoers中的配置一致。3、配置sudo的日志审计①、安装sudo(CentOS 6.4 中的服务为rsyslog)
[root@Temp-2 ~]#yum install sudo
②、配置/etc/sudoers
[root@Temp-2 ~]# echo "Defaults logfile=/var/log/sudo/log" ; /etc/sudoers
[root@Temp-2 ~]# tail -1 /etc/sudoers
Defaults logfile=/var/log/sudo/log
③、在普通用户下,执行sudo命令
[nowsun@Temp-2 /]$ sudo ls
app boot etc lib lost+found misc net proc sbin srv tmp var
bin dev home lib64 media mnt opt root selinux sys usr
[nowsun@Temp-2 /]$ sudo /usr/sbin/useradd kkk
useradd: user kkk exists
④、查看/var/log/sudo/log的日志文件
[root@Temp-2 ~]# cat /var/log/sudo/log
Jan 8 10:44:45 : nowsun : TTY=pts/1 ; PWD=/home/nowsun ; USER=root ; COMMAND=/bin/ls
Jan 8 10:44:51 : nowsun : TTY=pts/1 ; PWD=/home/nowsun ; USER=root ; COMMAND=/bin/ls
Jan 8 10:44:57 : nowsun : TTY=pts/1 ; PWD=/ ; USER=root ; COMMAND=/bin/ls
Jan 8 10:45:36 : nowsun : TTY=pts/1 ; PWD=/ ; USER=root ;
COMMAND=/usr/sbin/useradd kkk
发现已经记录下来了,后面就可以根据这个日志来抓出破坏系统的真凶了。
本文出自 “NowSun” 博客,请务必保留此出处http://nowsun.blog.51cto.com/522159/1427337
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: