CentOS 配置 Sudo
使用 sudo 用戶訪問服務器並在根級別執行命令是 Linux 和 Unix 系統管理員中非常常見的做法。使用 asudo 用戶通常通過禁用對其服務器的直接根訪問來防止未經授權的訪問。
在本教程中,我們將介紹禁用直接 root 訪問,創建 sudo 用戶以及在 CentOS 上設置 sudo 組的基本步驟。
1. 步驟 1:安裝 sudo
2. 步驟 2:添加 sudo 用戶
一個 sudo 用戶是 Linux 機器上的普通用戶帳戶。
3. 步驟 3:將新用戶添加到 wheel 組(可選的)
wheel 組是一個用戶組,只有屬於 wheel 組的用戶才可以用 su 登錄為 root,添加你的 sudo 用戶到 wheel 組是完全可選的,但建議。
在 CentOS 中,屬於的 wheel 組的用戶可以執行 su
直接上升到 root。同時,sudo 用戶將會使用 sudo su
。基本上除了語法之外沒有什么真正的區別成為 root,而屬於這兩個組的用戶可以使用 sudo 命令。
4. 步驟 4:確保你的 sudoers 文件設置正確
確保這一點很重要 sudoers 文件位於 /etc/sudoers 正確設置為了允許 sudo users 有效使用 sudo 命令。為了達到這個目標,我們將會看到內容 /etc/sudoers 並在適用的地方進行編輯。
開始審查和編輯下面這行:
這一節 /etc/sudoers 經常看起來像這樣:
在某些系統中,你可能找不到 %wheel 代替 %sudo; 在這種情況下,這將是你將開始修改的行。
如果行開始 %sudo 在 Debian 或 %wheel 在 CentOS 中沒有注釋掉(前綴為#),這意味着 sudo 已經被設置並啟用了。然后,你可以轉到下一步。
5. 步驟 5:允許不屬於的用戶 wheel 也不是 sudo 組執行 sudo 命令
可以允許不在用戶組中的用戶執行 sudo 只需將它們添加到命令中即可 /etc/sudoers 如下:
6. 步驟 6:重新啟動 SSHD 服務器
為了應用你所做的更改 /etc/sudoers,你需要重新啟動 SSHD 服務器,如下所示:
CentOS 6
CentOS 7
7. 步驟 7:測試
重新啟動 SSH 服務器后,請注銷,然后重新登錄 sudo user,然后嘗試執行一些測試命令,如下所示:
任何以下命令將允許 sudo user 成為 root。
筆記:
該 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
使用你喜歡的文本編輯器,並找到包含以下字符串的行。它可能有一個前綴#字符。
無論前綴或該選項的值 /etc/ssh/sshd_config 你需要將該行更改為以下內容:
最后,重新啟動你的 SSHD 服務器。
注意:不要忘了通過嘗試將 SSH 更改為服務器來測試你的更改 root。如果你無法這樣做,這意味着你已成功完成所有必要的步驟。
我們的教程結束了。