CentOS 配置 Sudo


CentOS 配置 Sudo

使用 sudo 用戶訪問服務器並在根級別執行命令是 Linux 和 Unix 系統管理員中非常常見的做法。使用 asudo 用戶通常通過禁用對其服務器的直接根訪問來防止未經授權的訪問。

在本教程中,我們將介紹禁用直接 root 訪問,創建 sudo 用戶以及在 CentOS 上設置 sudo 組的基本步驟。

1. 步驟 1:安裝 sudo

yum install sudo -y
Bash

2. 步驟 2:添加 sudo 用戶

一個 sudo 用戶是 Linux 機器上的普通用戶帳戶。

adduser mynewusername
Bash

3. 步驟 3:將新用戶添加到 wheel 組(可選的)

wheel 組是一個用戶組,只有屬於 wheel 組的用戶才可以用 su 登錄為 root,添加你的 sudo 用戶到 wheel 組是完全可選的,但建議。

在 CentOS 中,屬於的 wheel 組的用戶可以執行 su 直接上升到 root。同時,sudo 用戶將會使用 sudo su 。基本上除了語法之外沒有什么真正的區別成為 root,而屬於這兩個組的用戶可以使用 sudo 命令。

usermod -aG wheel mynewusername
Bash

4. 步驟 4:確保你的 sudoers 文件設置正確

確保這一點很重要 sudoers 文件位於 /etc/sudoers 正確設置為了允許 sudo users 有效使用 sudo 命令。為了達到這個目標,我們將會看到內容 /etc/sudoers 並在適用的地方進行編輯。

vim /etc/sudoers
Bash

開始審查和編輯下面這行:

# Allow members of group sudo to execute any command
Bash

這一節 /etc/sudoers 經常看起來像這樣:

# Allow members of group sudo to execute any command %sudo ALL=(ALL:ALL) ALL
Bash

在某些系統中,你可能找不到 %wheel 代替 %sudo; 在這種情況下,這將是你將開始修改的行。

如果行開始 %sudo 在 Debian 或 %wheel 在 CentOS 中沒有注釋掉(前綴為#),這意味着 sudo 已經被設置並啟用了。然后,你可以轉到下一步。

5. 步驟 5:允許不屬於的用戶 wheel 也不是 sudo 組執行 sudo 命令

可以允許不在用戶組中的用戶執行 sudo 只需將它們添加到命令中即可 /etc/sudoers 如下:

anotherusername ALL=(ALL) ALL
Bash

6. 步驟 6:重新啟動 SSHD 服務器

為了應用你所做的更改 /etc/sudoers,你需要重新啟動 SSHD 服務器,如下所示:

CentOS 6

/etc/init.d/sshd restart
Bash

CentOS 7

systemctl restart sshd.service
Bash

7. 步驟 7:測試

重新啟動 SSH 服務器后,請注銷,然后重新登錄 sudo user,然后嘗試執行一些測試命令,如下所示:

sudo uptime sudo whoami
Bash

任何以下命令將允許 sudo user 成為 root。

sudo su - sudo -i sudo -S
Bash

筆記:

該 whoami 命令將返回 root 當加上 sudo。 執行時將提示你輸入用戶密碼 sudo 命令,除非你明確指示系統不提示 sudo users 為他們的密碼。請注意,這不是推薦的做法。 可選:允許 sudo 而不輸入用戶的密碼

如前所述,這不是推薦的做法,僅在演示目的中包含在本教程中。

為了讓你的 sudo user 執行 sudo 命令,而不被提示輸入密碼,后綴為訪問行 /etc/sudoers 同 NOPASSWD: ALL 如下:

%sudo ALL=(ALL:ALL) ALL NOPASSWD: ALL 注意:你需要重新啟動 SSHD 服務器才能應用更改。

8. 步驟 8:禁用直接 root 訪問

現在你已經確認可以使用你的 sudo user 沒有問題,現在是第八步的禁用直接根訪問的時間。

首先打開 /etc/ssh/sshd_config 使用你喜歡的文本編輯器,並找到包含以下字符串的行。它可能有一個前綴#字符。

PermitRootLogin
Bash

無論前綴或該選項的值 /etc/ssh/sshd_config 你需要將該行更改為以下內容:

PermitRootLogin no
Bash

最后,重新啟動你的 SSHD 服務器。

注意:不要忘了通過嘗試將 SSH 更改為服務器來測試你的更改 root。如果你無法這樣做,這意味着你已成功完成所有必要的步驟。

我們的教程結束了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM