如何在Ubuntu台服务器之间传输文件,让A用key登录B,B不登录A就获取文件?

How to transfer files between Ubuntu servers so that A logs to B with key and gets the file without B logging to A?

  1. 我在机器 B 上有一个密钥,用它可以登录到机器 A
  2. 在机器 A 上,我可以运行一个脚本来从数据库创建存档转储
  3. 现在我希望将此存档从 A 返回到 B

问题!我想在机器 B 上只有一个密钥文件连接到机器 A 并避免在机器 A 上有另一个密钥连接回机器 B

我正在尝试使用 scp 命令执行此操作,

scp -i key_file `date +"%m-%d-%y".gz` ubuntu@xxx.xxx.xxx.xxx:`date +"%m-%d-%y".gz`

这里的问题是,当我登录到机器 B 时,我 运行 这需要另一个 key_file 机器A.

我能不能通过在机器 B 上只有一个密钥来实现这个,用它在机器 A 上操作并在没有另一个密钥的情况下取出文件?

我想限制安全威胁并且没有两个密钥,这样如果机器 A 被劫持,它就无法访问 B。

如果您可以从计算机 B ssh 进入计算机 A,那么您也可以从计算机 B 执行 scp 命令以将文件从计算机 A 检索回计算机 B。 运行 来自计算机 B 的此命令:

scp -i your_key computerA@XXX.XXX.XXX.XXX:/path_to_file_in_comp_A/file /path_in_comp_B/

您需要在其中替换正确的密钥文件、用户名、IP 地址和命令路径。