服務器優化——禁止root用戶遠程登錄、特定用戶可以切換root

linux中root用戶是超級管理員,可以針對root用戶暴力破解密碼,這樣很不安全,工作中我們一般禁止root用戶直接遠程登陸,開設一個或多個普通用戶,只允許登陸普通用戶,如果有需要用root用戶,可以su切換root 或者sudo來擁有root權限執行命令。

一、root無法遠程登陸,但所有用戶可以切換root

首先打開配置文件:

vim /etc/ssh/sshd_config

這行的意思是允許使用root用戶登陸,所以我們將它改爲no,不允許root用戶直接登陸。

保存退出配置文件後,重啓sshd服務:

systemctl restart sshd.service

重新建立連接就發現root用戶已經不能登陸了,我們只能通過普通用戶登陸再進行切換。

二、root無法遠程登陸,但只有特定的用戶纔可以切換root

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

1、添加一個用戶, 把這個用戶加入wheel組 

adduser admin
passwd  admin
usermod -G wheel admin

 2、修改/etc/pam.d/su 

auth required pam_wheel.so use_uid   去掉這行註釋 

3 修改/etc/login.defs 

vim /etc/login.defs

在文件末添加一行 

SU_WHEEL_ONLY yes

三、添加和root權限一樣的用戶

  • adduser admin
  • passwd  admin (修改密碼,密碼要遵循密碼複雜性)

修改 /etc/sudoers 文件,找到下面一行,在root下面添加一行,如下所示:

vim /etc/sudoers
## Allow root to run any commands anywhere
root    ALL=(ALL)     ALL
admin   ALL=(ALL)     ALL
 這個文件只讀是一種保護機制,如果你使用vi編輯器的話,只要保存時使用:wq!就可以保存了。 或者使用visudo命令來進入sudoers文件的編輯,就可以正常保存

四、ssh限制IP和用戶登錄

1、配置sshd限制

在/etc/hosts.allow中添加允許ssh登陸的ip或者網段 

sshd:192.168.1.2:allow        #表示一個ip
sshd:192.168.1.0/24:allow     #表示一段ip

在/etc/hosts.deny添加不允許ssh登陸的IP

sshd:ALL    #ALL表示除了上面允許的,其他的ip 都拒絕登陸ssh

2、利用iptables防火牆限制   

iptables -A INPUT -p tcp -s 192.168.1.2 --destination-port 22 -j ACCEPT 
iptables -A INPUT -p tcp --destination-port 22 -j DROP 

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