当我使用 SCP 将文件从另一台计算机拉到我的计算机时遇到问题。文件传输成功,但每次都要求输入密码。我想将此SCP
命令作为运行cronjob
,如何保存此自动化的密码?
scp [email protected]:/usr/etc/Output/*.txt /usr/abc/
[email protected]'s password:
答案1
你可以做:
(如果尚未完成)在您的计算机上为您的用户生成一组公钥和私钥 ssh 密钥:
$ ssh-keygen
回答问题以生成密钥集。
将您的公钥复制到远程主机:
$ ssh-copy-id remote-user@remote-host
username@host
这将使您能够在remote-user@remote-host
不提示密码身份验证的情况下登录。
答案2
您可以使用这个: 但请记住您以明文形式存储密码。sshpass -p 'your_password' scp [email protected]:/usr/etc/Output/*.txt /usr/abc/
答案3
我的 ssh-copy-id 版本需要“-i”选项才能工作,否则它将假定从 ssh-agent 复制凭据,如果您不使用它,这将不起作用。
ssh-copy-id -i $myfile.pub remote-user@remote-host