教學linux中sudo和su之間的差別_第1頁
教學linux中sudo和su之間的差別_第2頁
教學linux中sudo和su之間的差別_第3頁
教學linux中sudo和su之間的差別_第4頁
教學linux中sudo和su之間的差別_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、su sudo 的區(qū)別與一使用su 命令臨時切換用1su 的適用條件命令就是切換用的工具,怎么理解呢?比su sudo 的區(qū)別與一使用su 命令臨時切換用1su 的適用條件命令就是切換用的工具,怎么理解呢?比以普通用登錄的,但要添加用戶任務,執(zhí)行 ,beinan 用戶沒這個權限,而這個權限恰恰由 所擁有。解決辦法無法有兩個是退出beinan 用戶,重新以root 用戶登但這種辦并不是最好沒有必要退出 beinan 用戶,可來切換到 二下進行加用戶的工作,等任務完成后再退出 root可以看到當切換是一種比較好通過 su 可以在用戶之 間切換,如果超級權限用戶 root 向普通虛擬用戶切換不需,權

2、力?這就是!而普通用戶它任何用戶都需驗證2su用法l,login錄并改變到所切換的用戶環(huán)-執(zhí)行一個命令,然后退出所切換到的戶環(huán)境至于更詳細的,請參看mansu3su范例在不加任何參數(shù),默認為切換到 root至于更詳細的,請參看mansu3su范例在不加任何參數(shù),默認為切換到 root 用戶,但沒有轉(zhuǎn)到 用戶下,也就是說這時雖然是切換root 用戶了,但并沒登錄環(huán)境; 用戶默認的登錄環(huán)境,可以中查到,包括定義等su參-,表示默認切換用戶,并且改變用的環(huán)境su數(shù)beinanlocalhost$beinanlocalhost$su- rootlocalhost#beinanlocalhost$su

3、rootlocalhostbeinan#beinanlocalhost$suroot這個和su一樣的能beinanlocalhost$suroot這個和su一樣的能rootlocalhost#beinanlocalhost$sulinuxsir:這是切換到用注:在這里;linuxsirlocalhost$pwd看用戶當前所處的位置linuxsirlocalhost $id查UIDGID主要是看是否切換uid=505(linuxsir) linuxsirlocalhostbeinanlocalhost$sucls這是su參數(shù)組合表示切換到 root 用戶,并beinanlocalhost$suc

4、ls這是su參數(shù)組合表示切換到 root 用戶,并且改變到 root 環(huán)境,然后列出 root 的文件,然后退出 root 用戶Password: 注:在這里root;anaconda-ks.cfgDesktopinstall.logtestgrouptestgroupbeinanbeinanlocalhost$pwd查看當前用戶所處的位beinanlocalhost$id查看當前用戶信uid=500(beinan) gid=500(beinan) 的確為管理帶來方便,通過切換到 root 下,能完成所有系理工具要把 root 交給任何一個普通用他都能切換到 來完成所有的系統(tǒng) 管理工作;但通過

5、 su 切換到 root 后,也有不;比如系統(tǒng)有 10 個用戶,而且都參與管理。如果這 10 個用戶及到超級權限的運用,做為管理員果想讓其它用戶通過su 來切換超級權限r(nóng)oot,必須root權都告訴這 10 個用戶;如10 個用戶都有 root 權限,通過 root 權限可 以做任何事,這在一定程度上就對系統(tǒng)的安全造成了威 有不安全的系統(tǒng),只有不安全的人”,絕對不能保證10 個用都能按正常操作流程度上就對系統(tǒng)的安全造成了威 有不安全的系統(tǒng),只有不安全的人”,絕對不能保證10 個用都能按正常操作流程來管理系統(tǒng),其中任何一人對系統(tǒng)操作,都可能導致系或數(shù)據(jù)損失;所以 工具在多人參與的系統(tǒng)中,并不是最

6、好的選擇只適用于一兩個人參與管理的系統(tǒng)su 并不能讓普通用戶受限的使 應該握在少用戶手中,這絕對是真理!所而治的存在還是有一定道使用的su,也是受限制的1sudo適用條對切換到超級權限用戶 root 后,權限性,所su 并不能擔任多個管理員所管理的系統(tǒng)。如果用 來切換到超級來管理系統(tǒng),也不能明確哪些工作是由哪個管理員進行的操作對于服務器的管理有多人參與管理時,最好是針對每個管理員的技長管理范圍,并且有針對性的下放給權限,并且約定其使用哪些工具來完成與其相關的工作,這就有必要用sudo通過 能把某些超級權限有針對性的下放,并且不需普通用戶知道 ,所sudo 相對于權性的 su 來說還是比較安全的

7、,所sudo 也能被稱為受限制的su;另外sudo 要的,所以也被稱的執(zhí)行命令的流程是當前用戶切換到 root(或其它指定切換的用戶),然后root(或其它指定的切換到的用戶執(zhí)行執(zhí)行命令的流程是當前用戶切換到 root(或其它指定切換的用戶),然后root(或其它指定的切換到的用戶執(zhí)行命令,執(zhí)行完成后,直接退回當前用戶;而這些的前提是要通sudo置文件/etc/sudoers 來進;2編寫sudoetc/sudoerssudo 的配置文件,可以用他編輯工,此工具的好處是在添加規(guī)則不太準確時,保存退出時會給錯誤信息;配置好后,可以用切換的用戶下-l 來查看哪些命令是可以執(zhí)行的文件中每行算一個規(guī)則

8、,前面帶有#號可以當作明的內(nèi)容,并不執(zhí)行;如果規(guī)則很長,一行列不下時,可以用號行,這樣看來一個規(guī)則也可以擁有多行的規(guī)則可分為兩類;一類是別名定義,另一類是權規(guī)則;別名定義并不是必須的規(guī)則是必須的3etc/sudoers置文件中別名Alias_TypeNAME=item1,item2,或Alias_TypeNAME=item1,item2,item3:NAME=item4,別名類(Alias_Type):別名類型包括如下Host_Alias Alias_TypeNAME=item1,item2,item3:NAME=item4,別名類(Alias_Type):別名類型包括如下Host_Alias

9、 定義主機別用戶別名,別名成員可以是用戶,用戶組(前面要加號用來定義 runas 別名,這個別名指定的戶”,即 允許切換至的用Cmnd_Alias 定義命令別名是包含大寫字下劃線以但必須以一個大寫字母開 SYNADMSYN_ADM 或 SYNAD0 是合的sYNAMDA 或 1SYNAD 是不合法按中文翻譯是項目,在這可以譯成成員,如果一個名下有多個成員,成員與成員之間,通過半角,號分隔;成員在必有效并事實存在的有效呢?比如主機名,可以通過 w用戶的主(或 ip 地址如果您只是本地機操作,只通過 命令就能查看;用戶名當然是在系統(tǒng)中存在的,在中必須在;對于定義命令別名,成員也必須在系統(tǒng)中事實存在

10、的文件名(需絕對路item 成員受別名型Host_Alias、User_Alias、Runas_Alias制約定義什么類型的別名,就類型的成員相用 Host_Alias 定義主機別名時,成員必item 成員受別名型Host_Alias、User_Alias、Runas_Alias制約定義什么類型的別名,就類型的成員相用 Host_Alias 定義主機別名時,成員必須是與主機相關相關比如是主機名(包登錄的主機名)、ip 地址(單個或整段)掩碼等;當用戶登錄時,可以通過 w 命令來查看登錄用戶主機信息;User_AliasRunas_Alias 定義時,必須要用系統(tǒng)用戶做為成員定義執(zhí)行命令的別名時

11、,必須是系統(tǒng)存在的文件,文件名可以用通配符表示,配置 Cmnd_Alias 時命令需要絕對路徑;其Runas_Alias User_Alias 有點相似,但與User_Alias 絕對不是一個概念定義的是某個系統(tǒng)用戶可以 切到下的成員在規(guī)則中以實例進行解說;別名是每行算一個規(guī)則,如果一個別名規(guī)則一行容不下時,可以通過來行;同一類型別名的定義,一次以定義幾個別名,他們中間分隔4注:定義主機別名 HT01,通過=號列Host_Alias 注:主機別名 HT02,有兩個成員注:上面的兩條對主機的定義,可以通過一條來實現(xiàn),別名之間用:號分注通過 Host_Alias 定義主機別名時,項目可以是主機名可

12、以注:上面的兩條對主機的定義,可以通過一條來實現(xiàn),別名之間用:號分注通過 Host_Alias 定義主機別名時,項目可以是主機名可以是單ip(整段ip 地址也可以),也可以是網(wǎng)絡掩碼;如果是主機名,必須是多臺機器的網(wǎng)絡中,而且這些機器得通過主機名通問才有效。那什么才算是通過主機名相互通信呢?比主機名,或主機名。局域網(wǎng)中,如果讓計算機通過主機通信,必須設,還要有 DNS ,否則相互之間無法通過主機名;在設置主機別名時,如果項目是中某個項目是主機名的話,以通命令來查看機的主機名,通過 w 命令查來錄主機是來源,通過來源來確認其它客戶機的主機名或 ip 地址主機別名的定義,看上去有點復雜,其是很簡如

13、果您不明是怎么回事,也可以不用設置主機別在定規(guī)則時ALL 來匹配所有可能出現(xiàn)的主機情況。如果您把主機方面的知識弄的更明白,的確需要多User_Alias SYSAD=beinan,linuxsir,bnnnb,lanhaitun 注:定用戶別名,下有四個成員;要在系統(tǒng)中確實在存在User_AliasNETAD=beinan,bnnb義用戶別名NETAD讓這個別名下的用戶來管理網(wǎng)絡,所以取了 NETAD 的別名User_Alias WEBMASTER=linuxsir 注:定義用戶別名用這個別名下的用戶來管;User_Alias WEBMASTER=linuxsir 注:定義用戶別名用這個別名下

14、的用戶來管;注:上面三行的別名定義,可以通過這一行來實現(xiàn),看前面的說明,是不是符A-Za-注意:命令別名下員必須是文件的絕對路Cmnd_Alias KILL = /usr/bin/killAGCmnd_Alias SS=/usr/bin/sh,/usr/bin/csh,/usr/bin/ksh,csh,/usr/bin/rsh,注:這行定義命令別名點長,可以通過行= 在上面的例子中,KILL令別名定義可以并為一行來寫,也就是等價Cmnd_Alias注:這行定義命令別名點長,可以通過行= 在上面的例子中,KILL令別名定義可以并為一行來寫,也就是等價Cmnd_AliasKILL=AG這一行就代表

15、了 KILL 命令別名,把 KILLAG 的別名定義合并在一行寫也是Runas_AliasOP=root,Runas_Alias:OP=operator這行是上兩行的等價行;至于怎,須得規(guī)的實例來理解4、 /etc/sudoers 中的規(guī)規(guī)則是分配權執(zhí)行規(guī)則前面所講到的定義別名要是為了更方便別名;如果系統(tǒng)中只有幾個用戶權限比較有限的話,可以不用定義別名,而是針對統(tǒng)用戶直接,所以規(guī)則中別名并不是必須的;規(guī)則并不是無尋只說基礎一點的,比較簡單的法,如果您想詳規(guī)則寫法的,請參看 這三個要,但在動作之前也可以指定切規(guī)則并不是無尋只說基礎一點的,比較簡單的法,如果您想詳規(guī)則寫法的,請參看 這三個要,但在

16、動作之前也可以指定切換到特定用下,在這里指定切換的用戶要)號括起來,如果不需行命令的,應該NOPASSWD:參數(shù),但這些可以省略;舉例說明實一如在/etc/sudoers添加這一行,表示beinan在何可能出現(xiàn)的主機名的系統(tǒng)中,可以切換到 root 用戶下nod通過sudolbeinan這主機上允許運令值得注意的是,在這省略了指定切換到哪個用戶下執(zhí)和od 命令;在省略的情況下默認為是切換到 用戶下執(zhí)行;同時也省略了是不是需要 用戶輸入驗,果省略了,默為是需要驗。為了更詳細的說明些可以構造一個更復雜一點的公式用主機=(切換到哪些用戶或用是否需驗證命令 1,(切換到哪些用戶或用戶是否需2,(切換到

17、哪些用戶或用戶組) 是否需命用主機=(切換到哪些用戶或用是否需驗證命令 1,(切換到哪些用戶或用戶是否需2,(切換到哪些用戶或用戶組) 是否需命令凡是中的內(nèi)容,是可以省略;命令與命令之間用,號分隔本文的例子,可以對照著看哪些是省略了,哪些地方需要有空格在(切換到哪些用戶 或用戶組) ,如果省略,則默認為 root 戶;如果,則代表能切換到所有用戶;注意要切換到的目的必須用()號括起來,比如(ALL)、實二L=(root)n,如把第一個中的那行去掉,換成這表示的是 可以在任何可能出現(xiàn)的主機名的主機中,可以切換root 下執(zhí)n ,可以切換到任何用戶招執(zhí)行od命令,通過運令L=(root)NOPAS

18、SWD:如果換成這個例子呢? 表示的是 beinan 可以在任何可能出現(xiàn)主機名的主機中,可以切換到 root n,不需要用戶;并且可以切換到任何用戶下執(zhí)行如果換成這個例子呢? 表示的是 beinan 可以在任何可能出現(xiàn)主機名的主機中,可以切換到 root n,不需要用戶;并且可以切換到任何用戶下執(zhí)行命令但執(zhí)od 時需要beinan 輸入自己;通sudo -l 來查在這臺主機上允許運令關于一個命令動作是需,可以發(fā)現(xiàn)在系統(tǒng)在默的情況下是需要用不需要用戶需要輸碼,所以要在執(zhí)行動作之前加入 參數(shù)有可能有的弟兄對管令不太懂,不知道其用法,這就影響了他sudoers 定義的理解,下再舉一個最簡單,最有服務

19、力的例子比想beinan 普通用戶more /etc/shadow 文件的內(nèi)時,可能會出現(xiàn)下面的情beinanlocalhost$moreetc/shadow/etc/shadow:限夠這可以用sudomore/etc/shadow文件的內(nèi)容;就需要在/etc/soduers 中給 于就可以先suroot戶下visudo ;(比是以 beinan 用戶登錄系于就可以先suroot戶下visudo ;(比是以 beinan 用戶登錄系統(tǒng)的beinanlocalhost$Password: 注:在這里輸入 下面運行rootlocalhostbeinanvisudo運行visudo加入如下一行,退出

20、保 存;退出保存,在這里要會用 也是用的 vi 編輯器;至于 vi 的用法不多說了表示beinan 可以切換到 root 下執(zhí)行 more 來查看文件退回到beinan 用 戶下,用exitrootlocalhostbeinan#beinanlocalhost查看beinan 的通 過sudo能執(zhí)行哪些beinanlocalhost$sudo-注:在這里輸入 beinan Userbeinanmayrunthedsonthishost: 在這里清晰的說明在本臺主機上注:在這里輸入 beinan Userbeinanmayrunthedsonthishost: 在這里清晰的說明在本臺主機上,be

21、inan 用戶可以以 root 權限more ;在 root 權限下的 more ,可以查看任何文本文件的(root)最后看看是不是 beinan 用戶有能力看到/etc/shadow的內(nèi)容beinanlocalhost$sudomorebeinan 不但能看到 /etc/shadow 文件的內(nèi)容,還能看到只權限下才能看到的其它文件的內(nèi)容,比如beinanlocalhost$sudomorebeinan 用查看所有系統(tǒng)文件中,我只想的內(nèi)容可以讓他查看;可以加入下面的一ore題外話:有的弟兄會 說,我通過su root 用戶就能看到的用法如果主機上有多個用戶并且不知道 root 用戶, 但又想查

22、看他們看不到的文件,這時就需要管理了;這就sudo 的好處實五:練習用戶組在/etc/sudoers 中寫法;如果用戶組出現(xiàn)在 /etc/sudoers 中,前面要加%號如,中間不能有空格如在/etc/sudoers 中實五:練習用戶組在/etc/sudoers 中寫法;如果用戶組出現(xiàn)在 /etc/sudoers 中,前面要加%號如,中間不能有空格如在/etc/sudoers 中加上如上一行,表示 beinan 用戶下的所有成員,在所有可能的出現(xiàn)的主機名下,都能切換root 用戶下運/usr/sbin 下的所有命實六:練習取消某類程序的執(zhí)行取消程序某類程序行,要在命令動作前面加上!號在本中也出

23、現(xiàn)了通配符的*注:把這規(guī)則加入到/etc/sudoers 但您得有 beinan 這個用戶 也是這個組中的才行;本規(guī)則表beinan 用戶在所有可能存在的主機名的主機上運行/usr/sbin 和/sbin 下所有的程序,但 程序除外beinanlocalhost$sudo-注:在這里輸入 beinan ;Userbeinanmayrunthedsthis實例:別名假就一臺主實例:別名假就一臺主localhost,能通過 來查看在這里就不定義主機別名了,用 ALL 來匹配所有可能出現(xiàn)的主機名;且有 beinan、linuxsir、用戶;主要是通過小例子能更好理解雖然簡單好用,但能把說的明白的確是

24、件難事;最好的辦多看例子和mansoduersUser_AliasRunas_Alias OP=root (root) /usr/sbin/* (root) /sbin/* beinanlocalhost $ sudo -Sorry,userbeinanisnotallowedtoexecute /sbin/fdisk -l as root on localhost.注解第一行:定義用戶別名 SYSADER 下有成員 beinan、linuxsir 用戶組下的成員,注解第一行:定義用戶別名 SYSADER 下有成員 beinan、linuxsir 用戶組下的成員,用戶組前面必須加%號第二行:定

25、義用戶別名 DISKADER ,成員有第三行:定Runas 用戶,也就是目標用戶的別名為 OP,下有第四行:定SYSCMD 命令別名,成員之間用,號分隔;第五行:定義命令別名 DSKCMD,下有成員 parted 和fdisk 第六行:表SYSADER 下的所有成員,在所有可能存名的主機下運行SYDCMD DSKCMD下定beinanlinuxsir 和beinan 用戶組下的成員能以運n、dA-Za-z*,!/usr/bin/passwdCmnd_Alias DSKCMD=/sbin/parted,/sbin/fdisk 注:定義命DSKCMD,下有成員parted 和fdisk SYSAD

26、ERALL=SYDCMD,DSKCMD DISKADER ALL=(OP) DSKCMD、asswd,但不能更改 root ;也可以以 運行 parted 和fdisk ,本條規(guī)則的等價規(guī)則A-Za-第七行:表DISKADER 下的所、asswd,但不能更改 root ;也可以以 運行 parted 和fdisk ,本條規(guī)則的等價規(guī)則A-Za-第七行:表DISKADER 下的所有成員,能OP,運行 parted fdisk 命令;其等價規(guī)lanhaitunALL=(root)可能有的弟兄會不輸入用戶就能切換到root并運SYDCMD下令,那應該把把 NOPASSWD:加在哪里為解下面的例子吧,

27、能明白SYSADERALL=NOPASSWD:SYDCMD,NOPASSWD:5/sudoers 中其它的未盡事在規(guī)則中,還有 NOEXEC:和 EXEC 的用法,自己查 man 了解;還有關于在規(guī)則中通配符的用法,也是需要了解的。這些內(nèi)容多說了,畢竟只是一個入門性的文檔。配置文件要多簡多簡單,要多就有多難,就看自己的應用6、sudo 的用法面講的規(guī)則寫法,最終的目的通過 配置文件中的規(guī)則來實現(xiàn)匹配,以便來進行命令操作,進而完成6、sudo 的用法面講的規(guī)則寫法,最終的目的通過 配置文件中的規(guī)則來實現(xiàn)匹配,以便來進行命令操作,進而完成在其權限下不可完成的任只說最簡單的用 法;更為詳細的請參考m

28、an sudo參數(shù)選項-列出用戶在主機上可用的和令;一般配后,要用這個命令來查看和測試是不是配置-驗證用戶的時間戳;如果用戶運行 sudo 后,輸入用戶后在短時間內(nèi)可以不令來直接進可最新的時間-u 指定以以某個用戶執(zhí)行特定操作;-k 刪除時間戳,下一個sudo 命令要求用求提;舉列首通過visudo改/etc/sudoers加入下面一行A-Za-然后列出beinan 用戶在主機上通過sudo 可以切換用戶所能用命令或用令beinanlocalhost$sudol:列出用戶然后列出beinan 用戶在主機上通過sudo 可以切換用戶所能用命令或用令beinanlocalhost$sudol:列出用戶在主機上能通切換用戶的可用的或令注:在這里輸入您的用;Userbeinanmayruntheonthisn 注:可以切換下n od 注:可以切換下od /usr/sbin/adduser 注:可以切換到 下用adduser 令/usr/bin/pas

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論