SCP 的 Bash 脚本——SSH 密钥

BSc*_*ker 3 ssh bash terminal scp passphrase

我目前是一名程序员,因此需要不断将我的软件上传到远程系统进行测试。我有大约 7 台机器需要接收所有内容的副本。

目前,我有一个简短的 bash 脚本,其中有一个 scp 为每台远程机器执行传输:

echo -e "\nUpdating Taiwan Machine"
scp {file1,file} bschlinker@taiwan:/home/bschlinker/
echo -e "\nUpdating Wisconsin Machine"
scp -P 2400 {file1,file2} bschlinker@wisconsin:/home/bschlinker/
Run Code Online (Sandbox Code Playgroud)

我痛苦地被提示输入每台机器的密码。我知道我可以用 SSH 密钥解决这个问题——但我不想通过密钥对远程机器进行无密码身份验证。因此,我在 SSH 密钥上设置了密码。我读过一次输入密码后,它将在当前终端会话的其余部分保持活动状态。真的吗?如果没有,有什么想法吗?

Ign*_*ams 7

如果您有一个 SSH 代理正在运行(例如巧妙命名的ssh-agent),那么您可以将密钥添加到该代理,SSH 客户端将与该代理通信以从中获取密钥

  • 我不使用钥匙扣。从来不需要它。 (2认同)