IT培訓(xùn)網(wǎng)
IT在線學(xué)習(xí)
在Linux系統(tǒng)中普通用戶(hù)在使用系統(tǒng)資源時(shí)相對(duì)于root超級(jí)用戶(hù)會(huì)有很多的限制。例如,切換到普通用戶(hù)身份下掛載光驅(qū),會(huì)報(bào)如下錯(cuò)誤,如下圖所示。
這是因?yàn)樵贚inux中,很多系統(tǒng)管理命令普通用戶(hù)是無(wú)權(quán)使用的,若想允許特定用戶(hù)執(zhí)行某些特定的系統(tǒng)管理命令,就需要對(duì)普通用戶(hù)授權(quán)。使其能執(zhí)行特定的系統(tǒng)管理命令。如上述的普通用戶(hù)“moon”,若允許其執(zhí)行掛載光盤(pán)的命令,就需要對(duì)“moon”用戶(hù)授予執(zhí)行掛載光盤(pán)命令的權(quán)限。為了區(qū)分普通用戶(hù)執(zhí)行的是普通操作命令還是得到授權(quán)的系統(tǒng)管理命令,Linux系統(tǒng)中對(duì)普通用戶(hù)執(zhí)行的命令進(jìn)行了劃分,執(zhí)行普通操作命令時(shí),直接輸入命令;執(zhí)行得到授權(quán)的系統(tǒng)管理命令時(shí),命令前加sudo。如上述“moon”用戶(hù)得到掛載光盤(pán)的授權(quán),其執(zhí)行下列命令即可掛載光盤(pán):
[moon@centos7-1 ~]$sudo mount /dev/cdrom /media
因此,通俗的稱(chēng)這種授權(quán)為sudo授權(quán)。
保存sudo授權(quán)的配置文件是/etc/sudoers。對(duì)該文件進(jìn)行更改,即是sudo授權(quán)。但Linux不允許直接對(duì)該文件進(jìn)行修改,而是提供了專(zhuān)用于修改該文件的操作命令visudo。root用戶(hù)使用visudo命令編輯更改/etc/sudoers文件。
(1)配置sudo授權(quán)
sudo授權(quán)的步驟如下。
①輸入su - root,切換到用戶(hù)root下。
②使用visudo命令打開(kāi)sudo編輯界面對(duì)/etc/sudoers文件進(jìn)行編輯,如下圖所示。
輸入visudo后會(huì)呈現(xiàn)如下圖左側(cè)窗口的內(nèi)容,可以開(kāi)始編輯。visudo命令和vim命令使用方式方法相同。移動(dòng)光標(biāo),找到下圖左側(cè)所示的內(nèi)容。
圖示中語(yǔ)句root ALL=(ALL) ALL表示允許用戶(hù)root在任何主機(jī)(包括本機(jī))上執(zhí)行所有命令,在這一行語(yǔ)句的下添加滿(mǎn)足以下格式的一行語(yǔ)句即可。
語(yǔ)句格式如下:
用戶(hù) 主機(jī)名=(以哪個(gè)用戶(hù)的身份) 命令的絕對(duì)路徑
圖中紅框內(nèi)的內(nèi)容是新增加的配置。
zhang centos7-1=(root) /usr/bin/mount,/usr/bin/umount 表示給用戶(hù)zhang進(jìn)行sudo授權(quán),允許其在centos7-1主機(jī)上以root的身份執(zhí)行mount和umount命令。
注意,命令必須使用絕對(duì)路徑,若對(duì)命令的絕對(duì)路徑不清楚可以使用whereis命令查看。
③保存退出即可。
注意,用visudo命令編輯的是/etc/sudoers配置文件,將授權(quán)的普通用戶(hù)寫(xiě)在該配置文件中可以使該用戶(hù)運(yùn)行需要root權(quán)限的命令。
(2)驗(yàn)證配置結(jié)果
切換到普通用戶(hù)zhang身份下進(jìn)行驗(yàn)證,步驟如下。
①切換到用戶(hù)zhang狀態(tài)下,輸入su - zhang。
②輸入命令[zhang@Centos7-1 ~]sudo mount /dev/cdrom /media,會(huì)提示輸入zhang的密碼,驗(yàn)證成功后,則命令成功執(zhí)行。
普通用戶(hù)zhang默認(rèn)沒(méi)有權(quán)限使用mount掛載命令,但root用戶(hù)通過(guò)使用visudo命令配置/etc/sudoers配置文件使用戶(hù)zhang擁有了使用mount命令的權(quán)限(mount命令原本只有root用戶(hù)才能使用)。只是用戶(hù)zhang在使用mount命令時(shí),需要在mount命令前面加上sudo命令,表示用戶(hù)zhang先變身成為root,然后再執(zhí)行mount命令。如下圖所示。
(3)設(shè)置命令別名
在修改/etc/sudoers文件進(jìn)行sudo授權(quán)時(shí),還可以把多個(gè)命令設(shè)置成為命令別名,即把多個(gè)命令加入到一個(gè)命令集合中,以便將命令集合多次授權(quán)給不同的用戶(hù)使用,簡(jiǎn)化授權(quán)的設(shè)置。
設(shè)置命令別名的步驟如下。
①編輯/etc/sudoers文件,輸入命令visudo(相當(dāng)于vi /etc/sudoers),然后輸入“i”,進(jìn)入插入模式,開(kāi)始編輯。
②輸入Cmnd_Alias GUAZAI=/usr/bin/mount,/usr/bin/umount,設(shè)定命令別名,即把多個(gè)命令組成一個(gè)命令集。注意,別名必須大寫(xiě)。
③輸入zhang centos 7-1=GUAZAI,授予用戶(hù)zhang執(zhí)行mount和umount命令的權(quán)限。
④輸入%g1 centos 7-1=(root) GUAZAI,“%”用于給組授權(quán),表示給組g1的成員授予執(zhí)行sudo的命令。
>>本文地址:http://m.hqfphsz.com/zhuanye/2021/68019.html
聲明:本站稿件版權(quán)均屬中公教育優(yōu)就業(yè)所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
1 您的年齡
2 您的學(xué)歷
3 您更想做哪個(gè)方向的工作?
07月15日Java
咨詢(xún)/試聽(tīng)07月15日Python+人工智能
咨詢(xún)/試聽(tīng)07月15日Web前端
咨詢(xún)/試聽(tīng)07月15日UI設(shè)計(jì)
咨詢(xún)/試聽(tīng)07月15日大數(shù)據(jù)
咨詢(xún)/試聽(tīng)07月15日Java
咨詢(xún)/試聽(tīng)07月15日Python+人工智能
咨詢(xún)/試聽(tīng)07月15日Web前端
咨詢(xún)/試聽(tīng)07月15日UI設(shè)計(jì)
咨詢(xún)/試聽(tīng)07月15日大數(shù)據(jù)
咨詢(xún)/試聽(tīng)