Linux禁止非WHEEL用戶使用SU命令

Linux禁止非WHEEL用戶使用SU命令

2014年10月01日 22:47:50 PrudentWoo 閱讀數:14501更多

個人分類: Linxu技術博文技術博文

版權聲明:本文爲博主原創文章,未經博主允許不得轉載。 https://blog.csdn.net/wuweilong/article/details/39722875

        通常情況下,一般用戶通過執行“su -”命令、輸入正確的root密碼,可以登錄爲root用戶來對系統進行管理員級別的配置。

       但是,爲了更進一步加強系統的安全性,有必要建立一個管理員的 組,只允許這個組的用戶來執行“su -”命令登錄爲root用戶,而讓其他組的用戶即使執行“su -”、輸入了正確的root密碼,也無法登錄爲root用戶。在UNIX和Linux下,這個組的名稱通常爲“wheel”。

一、禁止非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
6、添加用戶,並加入管理員組,禁止普通用戶su到root,以配合之後安裝OpenSSH/OpenSSL提升遠程管理安全

[root@db01 ~]# useradd admin
[root@db01 ~]# passwd admin
Changing password for user admin.
New UNIX password: 
BAD PASSWORD: it is too short
Retype new UNIX password: 
passwd: all authentication tokens updated successfully.


[root@db01 ~]# usermod -G wheel admin   (usermod -G wheel admin 或 usermod -G10 admin(10是wheel組的ID號))
[root@db01 ~]# su - admin
[admin@db01 ~]$ su - root
Password: 
[root@db01 ~]# 

 

方法一:wheel組也可指定爲其它組,編輯/etc/pam.d/su添加如下兩行

[root@db01 ~]# vi /etc/pam.d/su
auth sufficient /lib/security/pam_rootok.so debug
auth required /lib/security/pam_wheel.so group=wheel 

 

方法二:編輯/etc/pam.d/su將如下行#符號去掉

[root@db01 ~]# vi /etc/pam.d/su
#RedHat#auth required /lib/security/$ISA/pam_wheel.so use_uid   ← 找到此行,去掉行首的“#”
#CentOS5#auth required pam_wheel.so use_uid   ← 找到此行,去掉行首的“#”

 

#保存退出即可============

[root@db01 ~]# echo "SU_WHEEL_ONLY yes" >> /etc/login.defs ← 添加語句到行末


 

 

(實際測試這步操作可省略)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章