Linux系統下的sudo命令主要是用來分配系統的權限,使用sudo命令可以提高普通用戶的權限,來執行一些操作。下面就來詳解一下Linux系統中如何使用sudo命令?
一、sudo命令的特點:
1、授權指定用戶在指定主機上運行指定的管理命令;
2、詳細記錄用戶基於sudo執行的命令的相關日志信息;
3、“檢票系統”:時效性認證,用戶第一次執行sudo時會要求輸入密碼來驗正用戶身份,成功後用戶會獲得一個有固定存活時長的“令牌”;5分鐘
二、如何實現sudo功能?
/etc/sudoers:授權文件,只能由管理員編輯;但一般不用vim直接去編輯,因為可能會出現語法錯誤,所以一般用專用的編輯工具visudo命令去授權。
/etc/sudoers:
注意:別名定義: 別名必須使用全大寫字符
內置變量: ALL: 所有用戶
User_Alias:
User_Alias NAME = item1, item2, 。..
item:
用戶名
%組名
#UID
$#GID
User_Alias(表示可以使用已經定義的別名)
例: User_Alias ADMIN =CentOS,%lx,#500
表示定義ADMIN別名,有centos用戶,lx組,UID為500的用戶
Host_Alias:可以在哪些主機上運行
Host_AliasNAME = item1, item2, 。。.
item:
hostname
ip
network
Host_Alias
例: Host_Alias ALLOWADDR =172.16.37.10,172.16.0.0/16
表示定義ALLOWADDR別名,有ip為172.16.37.10,網絡地址為172.16.0.0/16
Runas_Alias
Runas_AliasNAME = item1, item2, 。。.
用法和User_Alias相同
Cmnd_Alias:
Cmnd_AliasNAME = item1, item2, 。。.
item:
命令
目錄(目錄下的所有命令)
Cmnd_Alias
例: Cmnd_Alias COMMAND =/usr/sbin/useradd,/usr/sbin/userdel,/usr/sbin
表示定義COMMAND別名,有useradd,userdel,和/usr/sbin下的所有命令
定義時可取反:Cmnd_AliasPASSWD = /usr/bin/passwd [0-9A-Za-z]*,! /usr/bin/passwd root 上一頁12下一頁共2頁
sudo授權:
WHO HOST=(WHOM) COMMAND
例:centos MYPC=(root) /usr/sbin/useradd
標簽:
NOPASSWD:表示標簽之後的命令都不用輸密碼
PASSWD:表示標簽之後的命令都用輸密碼
sudo命令:
-l: 查看當前用戶可執行的sudo命令;
-u USERNAME COMMAND: 以指定的用戶身份執行指定的COMMAND;
-k: 清除“令牌”
-b COMMAND: 在後台運行指定的COMMAND
-e /path/to/somefile:修改指定的文件;
例:sudo-u centos useradd user1
以上就是Linux系統中如何使用sudo命令的介紹了。sudo命令的作用當然不僅僅是提高權限,但是如果你想用sudo提高權限的話,可以參考:Linux系統下如何利用sudo命令提高權限。
上一頁12 下一頁共2頁