sudo——讓普通用戶更靈活

sudo命令

1、sudo能夠授權指定用戶在指定主機上運行某些命令。如果未授權用戶嘗試使用sudo ,會提示聯系管理員

2、sudo可以提供日志,記錄每個用戶使用sudo 操作

3、sudo為系統管理員提供配置文件,允許系統管理員集中地管理用戶的使用權限和使用的主機

4、sudo 使用時間戳文件來完成類似“檢票”的 系統,默認存活期為5 分鐘的 “入場券”

5、通過visudo命令編輯配置文件,具有語法檢查功能

配置文件:/etc/sudoers, /etc/sudoers.d/

時間戳文件:/var/db/sudo

日志文件:/var/log/secure

配置文件支持使用通配符glob:

         ?: 任意單一字符

         *:匹配任意長度字符

         [wxc]:匹配其中一個字符

         [!wxc]:除了這三個字符的其它字符

         \x:轉義

         [[alpha]]:字母

                 示例:/bin/ls [[alpha]]*

配置文件規則有兩類 ;

         1、別名定義:不是必須的

         2、授權規則:必須的

sudo –i –u wang  切換身份

sudo [-u user] COMMAND

         -V:顯示版本信息等配置信息

         -u user:默認為root

         -l,ll:列出用戶在主機上可用的和被禁止的命令

         -v:再延長密碼有效期限5分鐘, 更新時間戳

         -k:清除時間戳,下次需要重新輸密碼

         -K:與-k類似,還要刪除時間戳文件

         -b:在后臺執行指令

         -p:改變詢問密碼的提示符號

                 如 -p ”password on %h for user %p"

授權規則格式:

    用戶 登入主機=(代表用戶) 命令

示例:

         root ALL=(ALL) ALL

         /etc/sudoers中 關于root權限的行,是一個后門,如果root用戶不是管理員了,但可以使用sudo命令來獲取所有用戶的權限

        

         A用戶加入到wheel組中,B用戶運行以A身份運行命令<sudo>

         則B用戶要運行擁有wheel組的權限,需要2次sudo

                 sudo -u A sudo cat /etc/shadow

格式說明:

         user:運行命令者的身份

         host:通過哪些主機

         (runas):以哪個用戶的身份

         command:運行那些命令

Users和runas:

         username

         #uid

         %group_name

         %#gid

         user_alias|runas_alias

host:

         ip 或hostname

         network(/netmask)

         host_alias

command:

         command name

         directory

         sudoedit

                 授權用戶可以直接編輯/etc/sudoers文件

                 用法:sudo /etc/dudoers

         Cmnd_Alias

別名有四種類型:User_Alias,Runas_Alias,Host_Alias,Cmnd_Alias

別名格式:[A-Z]([A-Z][0-9]_)*

別名定義:

        Alias_Type NAME1 = item1, item2, item3 : NAME2 = item4, item5

示例1:

         Student ALL=(ALL) ALL

         %wheel ALL=(ALL) ALL

示例2:

         student ALL=(root) /sbin/pidof,/sbin/ifconfig

         %wheel ALL=(ALL) NOPASSWD: ALL

示例3:

         User_Alias NETADMIN= netuser1,netuser2

         Cmnd_Alias NETCMD = /usr/sbin/ip

         NETADMIN ALL=(root) NETCMD

示例4:

         User_Alias SYSADER=wang,mage,%admins

         User_Alias DISKADER=tom

         Host_Alias SERS=www.magedu.com,172.16.0.0/24

         Runas_Alias OP=root

         Cmnd_Alias SYDCMD=/bin/chown,/bin/chmod

         Cmnd_Alias DSKCMD=/sbin/parted,/sbin/fdisk

         SYSADER SERS=  SYDCMD,DSKCMD

         DISKADER ALL=(OP) DSKCMD

示例5:

         User_Alias ADMINUSER = adminuser1,adminuser2

         Cmnd_Alias ADMINCMD = /usr/sbin/useradd,

         /usr/sbin/usermod, /usr/bin/passwd [a-zA-Z]*,

         !/usr/bin/passwd root

         ADMINUSER ALL=(root) NOPASSWD:ADMINCMD, ,

         PASSWD:/usr/sbin/userdel

示例6:

         Defaults:wang runas_default=tom

         wang ALL=(tom,jerry) ALL

         使用sudo命令時,不寫-u USER,默認是wang

示例7:

    wang 192.168.175.136,192.168.175.138=(root) /usr/sbin/,!/usr/sbin/useradd

示例8:

    wang ALL=(ALL) /bin/cat /var/log/message*

原創文章,作者:megedugao,如若轉載,請注明出處:http://www.www58058.com/49075

(1)
megedugaomegedugao
上一篇 2016-09-25
下一篇 2016-09-25

相關推薦

  • 馬哥第一天

    來這兒的第一天

    2018-03-26
  • glob及IO重定向

    globbing: 文件名通配     匹配模式:元字符           *:匹配任意長度的任意字符    pa* ,*pa* ,*pa,  *p*a*    pa, paa, passwd    ?:  …

    Linux干貨 2016-12-21
  • 第一周-N28

    1、描述計算機的組成及功能 我們現在常用的計算機,包括手機及智能設備,通常由五大部件組成(馮若依曼提出),如下圖所示: 五大部件: 運算器:做算數運算(加減乘除取余)和邏輯運算(移位) 控制器:控制各部分協調的功能。 CPU包括以下四個部分:運算器、控制器、寄存器、緩存 I/O設備:即輸入輸出設備,用于跟外部交互。通常為磁盤、鍵盤、鼠標、顯示器、打印機等。I…

    2017-12-04
  • Linux基礎知識(二)-bash基礎特性,文件管理命令

    1、Linux上的文件管理類命令都有哪些,其常用的使用方法及相關示例演示。 2、bash的工作特性之命令執行狀態返回值和命令行展開所涉及的內答及其示例演示 4、文件的元數據信息有哪些,分別表示什么含義,如何査看?如何修改文件的時間戳信息。 5、如何定義一個命令的別名,如何在命令中引用另一個命令的執行結果? 6、顯示/var目錄下所有以l開頭,以一個小寫字母結…

    Linux干貨 2016-09-26
  • 一年直接在于春

    day01

    2018-03-26
  • 2016全球運維大會,優云蔣君偉演講“CMDB+自動化的管理融合”成一大亮點

    2016全球運維大會于9月23日-24日在上海盛大開幕。作為國內運維行業的重量級大會,優云產品總監蔣君偉在自動化專場與來自全國各地的運維同行一起探討、分享業內自動化運維的最佳實踐?,F場情緒熱烈,氣氛高漲,成為了本屆全球運維大會的一大亮點。 全新梳理自動化與CMDB的融合之道 全球運維大會當天,運維自動化專場很多大牛針對自動化運維管理中的CMDB進行了激烈的討…

    Linux資訊 2016-12-05
欧美性久久久久