CentOS 7 添加具有 root 權限的新使用者
我正在閱讀本教程,並嘗試創建一個具有 root 權限的新使用者,然後在 CentOS 7 伺服器中通過 ssh 阻止 root 訪問。問題是新使用者被阻止執行 root 操作,例如
nano /etc/sudoers
. 另外,我似乎無法刪除 root 登錄的阻止。因此,我預先存在的開放根會話是我必須訪問根功能的唯一訪問權限,直到它終止。 如何成功地將 root 權限添加到 newuser?以及如何成功打開/關閉 root 登錄?這是我到目前為止所擁有的:
在
/etc/sudoers
中,我有:## Allow root to run any commands anywhere root ALL=(ALL) ALL newusername ALL=(ALL) ALL
請注意,我編輯
/etc/sudoers
是因為/usr/sbin/visudo
沒有工作。
/etc/ssh/sshd_config
我有,PermitRootLogin yes
因為我想重新打開 root 登錄,直到我可以讓 newusername 擁有 root 權限。此外,文件的最後一行是AllowUsers newusername
.然後我輸入了
systemctl reload sshd.service
因為/etc/init.d/sshd reload
在CentOS 7
.問題是目前
newusername
沒有root
權限,但我也無法登錄root
。所以我預先存在的連接root
是我控制機器的唯一方式。編輯#1
我能夠授予新使用者
sudo
權限,gpasswd -a newusername wheel
但即使我擁有PermitRootLogin yes
. 我怎樣才能尊重中的設置?我應該能夠隨意打開root登錄然後再次關閉,並且設置確實有效。/etc/ssh/sshd_config
CentOS 7``/etc/ssh/sshd_config
我正在閱讀本教程,並嘗試創建一個具有 root 權限的新使用者,然後在 CentOS 7 伺服器中通過 ssh 阻止 root 訪問。問題是新使用者被阻止執行諸如 nano /etc/sudoers 之類的 root 操作。另外,我似乎無法刪除 root 登錄的阻止。因此,我預先存在的開放根會話是我必須訪問根功能的唯一訪問權限,直到它終止。如何成功地將 root 權限添加到 newuser?以及如何成功打開/關閉 root 登錄?
- 嚴格來說,真正的用途
sudo
是配置對某些特定使用者或組執行某些特定命令。在某些發行版中分發和配置的方式sudo
可能會有些誤導,因為要成為 root 使用者,我們只需鍵入su -
而不涉及sudo
. 這需要輸入使用者的密碼root,而不是使用者的密碼。所以你可以使用這個。visudo
除了直接編輯之外,盡量不要使用任何東西/etc/sudoers
。否則,您可能會完全破壞身份驗證,直到您將其權限更改回0400
(如果不使用某種救援系統,您將無法在註銷後執行此操作)。(使用的編輯器visudo
可以由VISUAL
環境變數控制。要與 一起使用nano
,一個選項是VISUAL=nano visudo
。)- 新使用者已經可以成為root(第1點),但是要讓這個使用者通過sudo成為root,只需將使用者添加到正確的組中即可。在 CentOS 7 上,傳統的組名wheel用於允許該組的成員通過 sudo:成為root
usermod -a -G wheel codemedic
。使用man usermod
以獲取更多詳細資訊。您可以通過讀取配置文件來確定該組名:cat /etc/sudoers
.- 要拒絕通過 SSH 訪問root,請編輯
/etc/ssh/sshd_config
並確保只有一個未註釋的實例PermitRootLogin
可用,並將其設置為值no :PermitRootLogin no
。保存文件並重新啟動 Secure Shell 守護程序:systemctl restart sshd
.請注意,我編輯了 /etc/sudoers 因為 /usr/sbin/visudo 不起作用。
怎麼不
visudo
工作?
CentoOS 授予使用者 root(all) 權限的方式是將他們放在
wheel
組中。當您創建使用者帳戶並選擇使該使用者成為管理員的框時,就會發生這種情況。您可以將使用者放入一個組中:
sudo usermod -aG wheel username
要禁用帳戶登錄,包括該
root
帳戶,您可以通過設置一個不可用的密碼來鎖定它。
sudo passwd -l username