root 密碼不起作用,但可以通過 sudo 使用者(centos)進行 ssh
我可以毫無問題地使用 RSA 密鑰將其放入我的 centos VPS。從那裡我可以
sudo
用來執行命令。但是我的root密碼不起作用。我想知道我是否在設置無密碼膩子登錄時沖洗了一些東西。當我做
su
任何事情時,我過去的幾個 root 密碼都不起作用。使用 sudo 我更改sshd_config
為允許:PermitRootLogin yes PasswordAuthentication yes
然後重新載入了 sshd 服務。但是也不能以 root 身份登錄。建議?
更新 1嘗試
sudo su
但結果是This account is currently not available.
但我的使用者密碼適用於
sudo nano /etc/ssh/sshd_config
. 我成功地編輯了那個文件。
聽起來你不知道你的root密碼,即使
su
你拒絕你的密碼。因此,您應該做的是重置您的root密碼。有
sudo su
,執行passwd
,在提示時輸入您的新密碼兩次,…現在您不一定需要知道您的 root 密碼。如果您已經在使用某些 RSA 密鑰登錄您的 VPS,您應該能夠授權該密鑰以 root 身份連接。
即使:您不一定需要以 root 身份登錄。如果您可以從管理使用者執行 sudo,為什麼要授權您的 root 帳戶登錄到您的 SSH 伺服器?
假設您只想使用 SSH 密鑰登錄,請更改
sshd_config
:PermitRootLogin without-password PasswordAuthentication no
假設您更喜歡阻止 root 使用 SSH,只需使用:
PermitRootLogin no PasswordAuthentication no
當且僅當,您確定希望通過 SSH 允許 root 密碼身份驗證,知道您的
su
密碼,您可以考慮使用:PermitRootLogin yes PasswordAuthentication yes
如果要確保在系統範圍內禁用 root 密碼身份驗證,可以執行(以 root 身份):
passwd -d
在您上次編輯時,關於
sudo su
失敗This account is currently not available.
: 這表明您的 root 帳戶外殼已更改為nologin
.試試這個:
sudo su -s /bin/bash
。假設它確實打開了一個根 shell,那麼您可能想要使用
chsh
.