Linux

安全地設置 SSH 密鑰以使 SCP/rsync 無需密碼即可執行

  • December 4, 2012

這就是我目前的做法:

# ssh-keygen -t dsa -b 1024 -f /root/localhost-rsnapshot-key

Enter passphrase (empty for no passphrase): [press enter here]
Enter same passphrase again: [press enter here]

# if [ ! -d ~/.ssh ]; then mkdir ~/.ssh ; chmod 700 ~/.ssh ; fi
# cd ~/.ssh/
# if [ ! -f config ]; then touch config ; chmod 600 config ; fi
# echo Host server2 >> config
# echo Hostname server2.domain.tld >> config
# echo IdentityFile /root/localhost-rsnapshot-key >> config

現在當我像這樣執行 rsnapshop 時:

backup  server2@server2.domain.tld:/home/     localhost/server2/

我得到以下資訊:

rsnapshot hourly
reverse mapping checking getaddrinfo for server2-domain-tld.1-2-3-4 [1.2.3.4] failed - POSSIBLE BREAK-IN ATTEMPT!
server2@server2.domain.tld's password:

有沒有辦法在沒有密碼的情況下執行?

您可以ssh-copy-id server2@server2.domain.tld從 server1 執行命令將您的身份文件複製到遠端系統並允許 pubkey 身份驗證。您可能還需要確保在 sshd 配置中啟用了基於密鑰的身份驗證。

在 server2 上,您需要將生成的公鑰添加到/root/.ssh/authorized_keys

引用自:https://serverfault.com/questions/452674