禁止su命令

小亮520cl發表於2015-05-07
1 比較暴力簡單的辦法
直接到/bin 目錄下找到su ,然後chmod 700就行 ,這樣別的使用者沒有許可權執行SU就行了。、
[root@gc1 bin]# ls -l su
-rwsr-xr-x 1 root root 23960 Jul 13  2009 su
這個s的意思就是讓其他使用者也有操作的許可權

一、禁止非whell組使用者切換到root

1、 修改/etc/pam.d/su配置

[root@db01 ~]# vi /etc/pam.d/su ← 開啟這個配置檔案

#auth required /lib/security/$ISA/pam_wheel.so use_uid ← 找到此行,去掉行首的“#”

2、 修改/etc/login.defs檔案

程式碼如下:[root@db01 ~]# echo “SU_WHEEL_ONLY yes” >> /etc/login.defs ← 新增語句到行末以上操作完成後
可以再建立一個新使用者,然後用這個新建的使用者測試會發現,沒有加入到wheel組的使用者,執行“su -”命令,即使輸入了正確的root密碼,也無法登入為root使用者

3、 新增一個使用者woo,測試是否可以切換到root

程式碼如下:[root@db01 ~]# useradd woo

[root@db01 ~]# passwd woo

Changing password for user woo.

New UNIX password:

BAD PASSWORD: it is WAY too short

Retype new UNIX password:

passwd: all authentication tokens updated successfull

4、透過woo使用者登入嘗試切換到root

程式碼如下:[woo@db01 ~]$ su – root ← 即使密碼輸入正確也無法切換

Password:

su: incorrect password

[woo@db01 ~]$

5: 把root使用者加入wheel組再嘗試切換,可以切換

程式碼如下:[root@db01 ~]# usermod -G wheel woo ← 將普通使用者woo加在管理員組wheel組中

[root@db01 ~]# su – woo

 [woo@db01 ~]$ su – root ← 這時候我們看到是可以切換了

Password:

[root@db01 ~]#




補充:

如果不想一些人使用"su"命令成為root或切換到其他使用者,那麼在"/etc/pam.d/su"做一些修改就可以。這些可以提高系統的安全性。

 

在/etc/pam.d/su下新增這兩行:

 

auth sufficient /lib/security/$ISA/pam_rootok.so

auth required pam_wheel.so use_uid group=admin

 

// group=admin指定被允許的組,僅允許admin組的成員su成root

 

首先建立一個admin組

 

#addgroup admin

 

把允許可以使用su命令的使用者加入admin組,如test,test2;test是admin組,而test2不屬於admin組的。

 

#usermod -G admin test

 

進行以上設定後, 只有使用者test使用su命令, 而test2卻不可以,不能用su切換到其他使用者。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29096438/viewspace-1627732/,如需轉載,請註明出處,否則將追究法律責任。

相關文章