我有类似服务器的机器(它们不是工作站,而是全自动的),我需要它们能够运行打开客户端 ssh 连接的脚本(到第三方服务器,如 github),并且我需要它以自动化方式运行。
我可以使用私有 ssh 密钥执行此操作,但问题是机器将私有 ssh 密钥存储在具有用户权限的用户目录中,需要用户运行脚本。我尝试更改 ssh 密钥的权限,但 ssh 客户端抱怨这不安全。
无论我最终是否使用 ssh 密钥,我都需要一种方法来从启动时安全地打开客户端 ssh 连接,而无需任何本地操作系统登录。
我对如何在 Linux 和/或 Windows 上实现这一点的答案很感兴趣。
答案1
答案2
我可以使用私有 ssh 密钥来做到这一点,但问题是机器将私有 ssh 密钥存储在具有用户权限的用户目录中,需要用户运行该脚本。
不对。请查看 SSH 客户端的文档,了解如何使用存储在文件系统中任意位置的私钥文件。
对于 OpenSSH 检查ssh_config(5) - 身份文件
此外,任何自动化流程都以特定用户的身份在任何操作系统中运行。因此,只需确保为此服务用户/工具帐户(或无论您如何称呼它)正确设置私钥文件的所有权和权限即可。