Linux

SCP沒有密碼提示使用不同的使用者名

  • February 2, 2015

我有 2 台伺服器,Server1並且Server2. 在Server1我有一個名為user1. 在Server2我有名為的使用者user2

我需要能夠編寫一個在 上執行的腳本,Server1它將scp一些文件放到user2@Server2. 有沒有辦法在不提示輸入密碼的情況下做到這一點?如果需要,我可以將密碼放入配置文件或其他文件中。

順便說一句,我無法創建user2@Server1使用者。

您想要的是 ssh 密鑰對,它們創建允許無密碼身份驗證的“可信網路”:

在您的客戶端(server1)上:

[user@server1]# ssh-keygen -t rsa -b 2048
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): # Hit Enter
Enter passphrase (empty for no passphrase): # Hit Enter
Enter same passphrase again: # Hit Enter
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.

現在將您的公鑰複製到您的遠端伺服器(server2):

ssh-copy-id user2@server2
[OR]
cat ~/.ssh/id_rsa.pub | ssh user2@server2 "mkdir -p ~/.ssh \
   && cat >>  ~/.ssh/authorized_keys"

現在,當您執行scp(或任何其他 ssh)命令時,不應提示您輸入密碼:

scp file user2@server2:/drop/location

引用自:https://unix.stackexchange.com/questions/182483