Linux
rsync 沒有密碼,Google(伺服器故障)教程都沒有工作
我需要使用 rsync 進行日常備份操作,過去(在不同的伺服器上)我設法只使用 rsa 密鑰等,但現在Google(伺服器故障)教程根本不起作用。
它一直要求我輸入密碼。
我對兩台伺服器都有 webmin 和 ssh/root 訪問權限。
我的步驟:
- 在伺服器 1 上創建密鑰
- 發送
key.pub
到伺服器 2- 添加
key.pub
到.ssh/authorized_keys
chmod 700 .ssh/authorized_keys
- 返回伺服器 1 並嘗試 rsync 並不斷詢問密碼…
rsync 命令:
rsync -avz -e ssh file.txt root@server2:/root
編輯:好吧,我清理了所有東西,這一次,我沒有在密鑰中插入自定義名稱,而是在 server1 上使用了標準名稱。將 .pub 發送到 server2,它就像一個魅力……所以答案是 server1 的 ssh 甚至沒有使用正確的密鑰……
檢查您的新伺服器是否允許 root 登錄並接受公鑰身份驗證。
在
/etc/ssh/sshd_config
確保PermitRootLogin yes
和
PubkeyAuthentication yes
兩者的預設值都是yes,所以除非它們被列出而不是yes,否則你很好。如果您更改任何一個,請重新啟動 sshd。
還要檢查
~/.ssh
目錄權限是否為 700要檢查的另一件事是它不是它要求的私鑰的本地密碼,是嗎?如果是,您可能想要刪除密碼,然後採取措施通過鎖定可以使用它執行的命令來保護公鑰。
首先,您需要第一次通過 ssh 連接。這將提示您將新的伺服器指紋儲存在 .ssh/known_hosts 上。然後,一旦你回答肯定,它應該連接。
由於許多原因,連接可能會失敗。例如,如果您在
.ssh/config
文件中為該特定主機添加了選項,或者您的 ssh 程序不同意身份驗證模式。為了更好地檢查發生了什麼,您可以使用 option 通過 ssh 連接-v
。這將在您的螢幕上列印一些資訊。請在此處張貼這些行。