058-sudo配置文件解析

在工做过程当中,咱们离不开用户,用户组的管理。那么里边的配置文件怎么查看呢?想知道就往下看!linux

1.删除用户的经验

a./etc/passwd 文件中注释掉用户,观察一个月,出问题还原,操做前备份。shell

b.把登录的shell改为  /sbin/nologinvim

c.帐户统一管理,库里干掉用户,所有都没了 bash

2.修改密码有效期限命令 chage

密码过时时间调整 chage 网络

-m:密码可更改的最小天数。为零时表明任什么时候候均可以更改密码。运维

-M:密码保持有效的最大天数。学习

-w:用户密码到期前,提早收到警告信息的天数。this

-E:账号到期的日期。过了这天,此账号将不可用。spa

-d:上一次更改的日期。.net

-i:停滞时期。若是一个密码已过时这些天,那么此账号将不可用。

-l:例出当前的设置。由非特权用户来肯定他们的密码或账号什么时候过时。

来自: http://man.linuxde.net/chage

[root@cnsz142728 ~]# chage -m 600 kaka
[root@cnsz142728 ~]# chage -l kaka
Last password change                                    : Oct 12, 2017
Password expires                                        : never
Password inactive                                       : never
Account expires                                         : never
Minimum number of days between password change          : 600
Maximum number of days between password change          : 99999
Number of days of warning before password expires       : 7

 配置文件/etc/default/useradd 

[root@cnsz142728 ~]# cat /etc/default/useradd
# useradd defaults file
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=   ###帐号终止日期,不设置表示不启用
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes
[root@cnsz142728 ~]# useradd star -e 2017/11/11
[root@cnsz142728 ~]# chage -l star
Last password change                                    : Oct 23, 2017
Password expires                                        : never
Password inactive                                       : never
Account expires                                         : Nov 11, 2017
Minimum number of days between password change          : 0
Maximum number of days between password change          : 99999
Number of days of warning before password expires       : 7

3.sudo的配置文件

先讲解一下sudo 配置文件(/etc/sudoers)的最小含义

命令行输入visudo  98gg 进入98行。

## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
kaka    ALL=(ALL)       /usr/sbin/useradd,/usr/sbin/userdel   
用户名   机器=受权的角色   容许的命令

visudo -c  检查语法

sudo -l  查看用户本身的权限

sed -i '99a 添加内容' /etc/sudoers

4.sudo 配置文件的深刻解析

4.1 用户别名

通常状况下会写%groupname ,而不是分开写用户名

## User Aliases
## These aren't often necessary, as you can use regular groups
## (ie, from files, LDAP, NIS, etc) in this file - just use %groupname 
## rather than USERALIAS
# User_Alias ADMINS = jsmith, mikem  %groupname

4.2 用户身份别名

root   ALL=(ALL)   ALL 

小括号中的ALL 就是Runas_Alias的应用位置,能够切换的用户角色,好比root.

4.3 命令别名

Cmnd_Alias =命令细分 

4.4 主机别名

Host_Alias 

FILESERVERS = fs1, fs2

5.学习与实践相互结合

开发人员:User_Alias KAIFA_ADMINS = kaifa01, kaifa02

                 命令权限:KFCMD

                 身份权限:OP1

运维人员: User_Alias OLD_ADMINS = kaka, %sa

                 命令权限:USERCMD DISKCMD NETMAGCMD CTRLCMD

                 身份权限:OP1 

网络工程师: User_Alias OLD_NETADMINS = feifei, yanyan

                  命令权限:NETADMINS

                  身份权限:OP2 

解答:

用户别名:

User_Alias KAIFA_ADMINS = kaifa01, kaifa02

User_Alias OLD_ADMINS = kaka, %sa

User_Alias OLD_NETADMINS = feifei, yanyan

岗位分类别名:

Cmnd_Alias  USERCMD = /usr/sbin/useradd, /usr/sbin/userdel, /bin/chown,/bin/chmod

Cmnd_Alias  DISKCMD = /sbin/fdisk, /sbin/parted

Cmnd_Alias NETMAGCMDS = /sbin/ifconfig, /etc/init.d/network

Cmnd_Alias CTRLCMD = /usr/sbin/reboot, /usr/sbin/halt

Cmnd_Alias KAIFACMD = /bin/grep, /usr/bin/tail,/bin/cat

角色 

Runas_Alias OP1 = root,kaka

Runas_Alias OP2 = root,yanyan

受权:

#root    ALL=(ALL)      ALL

KAIFA_ADMINS   ALL=(OP1)  KAIFACMD

OLD_ADMINS      ALL=(OP1)  USERCMD,DISKCMD,NETMAGCMD,CTRLCMD

OLD_NETADMINS ALL=(OP2)   NETMAGCMDS 

 

NOPASSWD:ALL,!/usr/bin/vi /etc/sudoers,!/bin/vi /etc/sudoers,!/usr/bin/vim /etc/sudoers,!/usr/sbin/visudo,!/usr/bin/passwd,/usr/bin/passwd [a-zA-Z]*,!/usr/bin/passwd root

看完这些以后,是否是对sudo配置文件更加熟悉了呢?

什么? 尚未熟悉???拿就继续看。。。 

相关文章
相关标签/搜索