Linux基础——sudo命令

sudo——用户提升权限的命令

1.新建用户,并且设置密码
 [root@sanchuang ~]# useradd  panlinfeng
[root@sanchuang ~]# echo 123456|passwd panlinfeng --stdin
更改用户 panlinfeng 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@sanchuang ~]# 


2.授权
[root@sanchuang ~]# vim /etc/sudoers

## Sudoers allows particular users to run various commands as
## the root user, without needing the root password.
root    ALL=(ALL)       ALL
panlinfeng      ALL=(ALL)       ALL   #添加授权记录


3.验证使用
[root@sanchuang ~]# su - panlinfeng
[panlinfeng@sanchuang ~]$ cd /
[panlinfeng@sanchuang /]$ ll -d /
dr-xr-xr-x. 21 root root 4096 2月  26 16:03 /
[panlinfeng@sanchuang /]$ mkdir pan
mkdir: 无法创建目录"pan": 权限不够
[panlinfeng@sanchuang /]$ sudo mkdir pan

我们信任您已经从系统管理员那里了解了日常注意事项。
总结起来无外乎这三点:

    #1) 尊重别人的隐私。
    #2) 输入前要先考虑(后果和风险)。
    #3) 权力越大,责任越大。

[sudo] panlinfeng 的密码:
[panlinfeng@sanchuang /]$ ls
backup  boot  etc   lianxi  lib64  mnt  pan   root  sbin  srv  tmp  var
bin     dev   home  lib     media  opt  proc  run   sc    sys  usr  zhongguo
[panlinfeng@sanchuang /]$ 

审计: 记录日志到/var/log/secure文件里

[panlinfeng@sanchuang /]$ sudo tail  /var/log/secure
Feb 26 16:03:53 sanchuang sshd[1436]: pam_unix(sshd:session): session opened for user root by (uid=0)
Feb 26 16:11:28 sanchuang useradd[1476]: new group: name=panlinfeng, GID=1003
Feb 26 16:11:28 sanchuang useradd[1476]: new user: name=panlinfeng, UID=1003, GID=1003, home=/home/panlinfeng, shell=/bin/bash
Feb 26 16:11:55 sanchuang passwd: pam_unix(passwd:chauthtok): password changed for panlinfeng
Feb 26 16:16:17 sanchuang su: pam_unix(su-l:session): session opened for user panlinfeng by root(uid=0)
Feb 26 16:17:42 sanchuang sudo: panlinfeng : TTY=pts/0 ; PWD=/ ; USER=root ; COMMAND=/bin/mkdir pan
Feb 26 16:17:42 sanchuang sudo: pam_unix(sudo:session): session opened for user root by root(uid=0)
Feb 26 16:17:42 sanchuang sudo: pam_unix(sudo:session): session closed for user root
Feb 26 16:19:37 sanchuang sudo: panlinfeng : TTY=pts/0 ; PWD=/ ; USER=root ; COMMAND=/bin/tail /var/log/secure
Feb 26 16:19:37 sanchuang sudo: pam_unix(sudo:session): session opened for user root by root(uid=0)
[panlinfeng@sanchuang /]$ 

授予普通用户指定的命令权限

1.新建用户,设置密码
[root@sanchuang ~]# useradd luqianjun
[root@sanchuang ~]# echo 123456|passwd luqianjun --stdin
更改用户 luqianjun 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@sanchuang ~]#


2.授权

进入/etc/sudoers文件里修改

Cmnd_Alias NETWORKING = /sbin/route, /sbin/ifconfig, /bin/ping, /sbin/dhclient, /usr/bin/net, /sbin/iptables, /usr/bin/rfcomm, /usr/bin/wvdial, /sbin/iwconfig, /sbin/mii-tool

Cmnd_Alias LUTOOLS = /bin/nice, /bin/kill, /usr/bin/kill, /usr/bin/killall, /usr/sbin/useradd, /usr/sbin/userdel, /usr/sbin/ip     #增加的命令别名

luqianjun  ALL = LUTOOLS , NETWORKING    给luqianjun用户授予上面设置别名的命令的权限

3.验证
[root@sanchuang ~]# su - luqianjun
[luqianjun@sanchuang ~]$ sudo useradd wuhao

我们信任您已经从系统管理员那里了解了日常注意事项。
总结起来无外乎这三点:

    #1) 尊重别人的隐私。
    #2) 输入前要先考虑(后果和风险)。
    #3) 权力越大,责任越大。

[sudo] luqianjun 的密码:
[luqianjun@sanchuang ~]$ id wuhao
uid=1005(wuhao) gid=1005(wuhao) 组=1005(wuhao)
[luqianjun@sanchuang ~]$ sudo mount /dev/cdrom   /mnt
对不起,用户 luqianjun 无权以 root 的身份在 sanchuang 上执行 /bin/mount /dev/cdrom /mnt。

授予组指定命令的权限

1.新建组,将用户加入组
[root@sanchuang ~]# groupadd  sanchuang
[root@sanchuang ~]# useradd -g sanchuang  luojie
[root@sanchuang ~]# useradd -g sanchuang  liquan
[root@sanchuang ~]# useradd -g sanchuang  cc
[root@sanchuang ~]# id luojie
uid=1006(luojie) gid=1006(sanchuang) 组=1006(sanchuang)
[root@sanchuang ~]# id cc
uid=1008(cc) gid=1006(sanchuang) 组=1006(sanchuang)
[root@sanchuang ~]# id liquan
uid=1007(liquan) gid=1006(sanchuang) 组=1006(sanchuang)
[root@sanchuang ~]# 
[root@sanchuang ~]# echo 123456|passwd luojie --stdin
更改用户 luojie 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@sanchuang ~]# echo 123456|passwd liquan --stdin
更改用户 liquan 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@sanchuang ~]# echo 123456|passwd cc --stdin
更改用户 cc 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@sanchuang ~]#
2.授权组
%sanchuang    ALL =  LUTOOLS , NETWORKING    #给sanchuang这个组授予LUTOOLS,NETWORKING这两个别名里所含有的命令的权限,三创这个组里所有的用户都有这些权限

3.验证
[root@sanchuang ~]# su - luojie
[luojie@sanchuang ~]$ sudo useradd luo

我们信任您已经从系统管理员那里了解了日常注意事项。
总结起来无外乎这三点:

    #1) 尊重别人的隐私。
    #2) 输入前要先考虑(后果和风险)。
    #3) 权力越大,责任越大。

[sudo] luojie 的密码:
[luojie@sanchuang ~]$ id luo
uid=1009(luo) gid=1009(luo) 组=1009(luo)

拒绝权限高于一切
一个用户属于某个组,会继承这个组的权限

思考:suid和sudo的区别?
suid提权:任何用户都可以使用这个命令 --》一个命令,任何人都可以使用
sudo授权:指定哪些用户使用哪些命令

你可能感兴趣的:(Linux,linux,vim,运维)