Linux
除root使用者外的所有使用者的SSH“伺服器拒絕我們的密鑰”
我按照本教程進行操作,密鑰身份驗證對 root 非常有用。但是當我創建使用者 xxx 並在 authorized_keys 添加不同的密鑰並嘗試使用 putty 登錄時,顯示錯誤“伺服器拒絕了我們的密鑰”。我將 .ssh/authorized_keys 更改為 /etc/ssh/keys/authorized_keys ,其中 chmod 700 用於密鑰,chomd 600 用於authorized_keys,因為我在網上找到了有關此問題的一些答案。我什至嘗試交換密鑰,但沒有任何效果!只有 root 可以使用密鑰登錄。
在authorized_keys 文件中:
ssh-rsa pub***key rsa-key-20140424 ssh-rsa pub***key rsa-key-20140426
在伺服器日誌中沒有顯示關於使用者 xxx 接受或拒絕的任何身份驗證。
膩子事件日誌
2014-04-26 13:28:02 Reading private key file "C:\mykey.ppk" 2014-04-26 13:28:04 Offered public key 2014-04-26 13:28:04 Server refused our key
伺服器作業系統:centos 6.5
聽起來您正在嘗試將使用者密鑰添加到根
authorized_keys
文件而不是使用者authorized_keys
文件中。只是為了澄清:
根鍵應該在
/root/.ssh/authorized_keys
使用者密鑰應該在
/home/USERNAME/.ssh/authorized_keys
可以按照您的建議將密鑰儲存在 /etc/ssh 中,但不能按照您的方式儲存。這通常在使用者主目錄被加密時完成。為了使其工作,您需要確保完成以下操作:
# mkdir /etc/ssh/USERNAME # chmod 755 /etc/ssh/USERNAME # chown USERNAME /etc/ssh/USERNAME # touch /etc/ssh/USERNAME/authorized_keys # chmod 644 /etc/ssh/USERNAME/authorized_keys # chown USERNAME /etc/ssh/USERNAME/authorized_keys # cat /home/USERNAME/.ssh/authorized_keys > /etc/ssh/USERNAME/authorized_keys # echo "AuthorizedKeysFile /etc/ssh/%u/authorized_keys" >> /etc/ssh/sshd_config
注意:您可能想要實際編輯 /etc/ssh/sshd_config 而不是僅僅追加到末尾,因為您可能已經有一個
AuthorizedKeysFile
集合。