使用sudo分配管理許可權
2.1 問題
本案例要求利用sudo機制分配管理操作許可權,主要完成以下任務:
使用su命令臨時切換賬戶身份,並執行命令
允許softadm管理系統服務的許可權
允許使用者useradm通過sudo方式新增/刪除/修改除root以外的使用者賬號
允許wheel組成員以特權執行/usr/bin/下的命令
為sudo機制啟用日誌記錄,以便跟蹤sudo執行操作
2.2 步驟
實現此案例需要按照如下步驟進行。
步驟一:使用su命令臨時切換賬戶身份,並以root執行命令
su(substitute user)命令可以快速切換賬戶身份,普通使用者切換賬戶身份時需要輸入密碼,root使用su命令切換任何身份都不需要密碼,如法格式如下:
# su – [賬戶名稱]
# su - [賬戶名稱] -c '命令'
1)從普通使用者切換為root賬戶身份(如果沒有普通賬戶則需要先建立)
[jacob@svr5 ~]# whoami
jacob
[jacob@svr5 ~]# su – //切換賬戶,預設切換為root賬戶
密碼:[root@svr5 ~]# whoami //確認結果
root
2)以普通身份建立目錄(如果沒有普通賬戶則需要先建立),以root身份重啟服務
[root@svr5 ~]# su - tom -c "mkdir /home/tom/test" //管理員切換普通使用者
[root@svr5 ~]# ll -d /home/tom/test
[tom@svr5 ~]# su - -c "systemctl restart sshd" //以管理員重啟服務
密碼:● sshd.service - openssh server daemon
loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)
active: active (running) since 五 2018-01-19 08:59:40 cst; 1 months 4 days ago
步驟二:允許softadm管理系統服務的許可權
1)修改/etc/sudoers配置
修改/etc/sudoers可以直接使用vim編輯該檔案,或使用visudo命令修改該檔案。
為softadm授予相關指令碼的執行許可權,允許通過systemctl工具來管理系統服務。
如果沒有softadm賬戶可以先建立該賬戶。
[root@svr5 ~]# vim /etc/sudoers //修改檔案後,需要使用wq強制儲存
.. ..
softadm all=(all) /usr/bin/systemctl
//授權softadm以root身份執行systemctl命令
2)切換為softadm使用者,並驗證sudo執行許可權
[root@svr5 ~]# su – softadm
[softadm@svr5 ~]$ sudo -l
… …[sudo] password for softadm: //輸入softadm的口令
.. ..
使用者 softadm 可以在該主機上執行以下命令:
(all) /usr/bin/systemctl
[softadm@svr5 ~]$ systemctl start httpd //不用sudo時啟動服務失敗
authentication is required
.. ..
[softadm@svr5 ~]$ sudo systemctl restart httpd //通過sudo啟動服務成功
步驟三:允許使用者useradm通過sudo方式新增/刪除/修改除root以外的使用者賬號
1)修改/etc/sudoers配置
為useradm授予使用者管理相關命令的執行許可權,例外程式以!符號取反,放在後面。在執行相關程式時,可以利用萬用字元*。
[root@svr5 ~]# vim /etc/sudoers
.. ..
useradm all=(all) /usr/bin/passwd,!/usr/bin/passwd root,/usr/sbin/user*,
!/usr/sbin/user* * root
2)切換為useradm使用者,驗證sudo許可權
可以通過sudo方式來新增/刪除/修改普通使用者:
[root@svr5 ~]# su – useradm
[useradm@svr5 ~]$ sudo -l
.. ..
使用者useradm可以在該主機上執行以下命令:
(root) /usr/bin/passwd, !/usr/bin/passwd root, /usr/sbin/user*,
!/usr/sbin/user* * root
[useradm@svr5 ~]$ sudo useradd newuser01 //可以新增使用者
[useradm@svr5 ~]$ sudo passwd newuser01 //可以修改普通使用者的口令
更改使用者 newuser01 的密碼 。
新的 密碼:
重新輸入新的 密碼:
passwd: 所有的身份驗證令牌已經成功更新。
但是不能修改root使用者的密碼:
[useradm@svr5 ~]$ sudo passwd root
對不起,使用者 useradm 無權以 root 的身份在 localhost 上
執行 /usr/bin/passwd root。
步驟四:允許wheel組成員以特權執行/bin/下的所有命令
此案例用來展示sudo的便利性及設定不當帶來的危險性,生產環境下慎用。
[root@svr5 ~]# vim /etc/sudoers
.. ..
%wheel all=(all) /bin/*
[root@svr5 ~]# usermod -a -g wheel zengye
[zengye@svr5 ~]$ sudo -l
.. ..
使用者 zengye 可以在該主機上執行以下命令:
(root) /bin/*
步驟五:為sudo機制啟用日誌記錄,以便跟蹤sudo執行操作
1)修改/etc/sudoers配置,新增日誌設定
[root@svr5 ~]# visudo
defaults logfile="/var/log/sudo"
.. ..
2)以root(預設有所有許可權)執行sudo操作
[root@svr5 ~]# sudo -l //檢視授權的sudo操作
[softadm@svr5 ~]# sudo systemctl status httpd //檢視授權的sudo操作
3)確認日誌記錄已生效
雲計算面臨的安全問題,構建雲計算的安全策略是什麼
雲計算面臨的安全問題 由於雲計算模式下的資料資產的所有權和管理權可能分離,客戶將通過移動網際網路對資料資產進行訪問和使用,客戶對資料的資產權的擔憂便成為重要的安全障礙。當企業把資料外包給了雲計算服務商,那麼他們便獲得了該資料的優先訪問權。然而,內部人員的失職 黑客攻擊等,雲服務 商沒有充足的證據能夠...
如何建立雲安全策略
一些首席資訊保安官 ciso 被組織引導到雲計算中,他們決定必須利用分布式系統的強大和靈活性。而其他人是沒有由管理層批准或知識而只註冊雲服務的員工推入的。無論哪種方式,如果沒有雲安全技術戰略,那麼組織將會遇到麻煩,forrester公司研究副總裁兼首席安全分析師安德拉斯 西瑟說。在當今世界,許多首席...
vpd安全策略的使用
1.首先我們建立使用者vpd,並給與一定的許可權 create user vpd identified by 123456 grant resource,connect to vpd grant execute on dbms rls to vpd grant select any dictiona...