在执行 shell 脚本时,我的脚本需要使用 ssh 连接登录到另一台服务器(也需要提供正确的密码)并在该服务器中执行脚本的某些步骤,然后再返回主服务器。我该怎么做?
答案1
实现此目标的正确解决方案是在向远程端点进行身份验证时使用 SSH 密钥。这消除了使用密码的要求,但仍提供了一种通过 SSH 在远程系统上执行命令的安全方法。互联网上有很多很好的教程来实现这一点,数字海洋例如有一个。
基本步骤是使用ssh-keygen
创建密钥对,然后将公钥复制到远程系统。远程系统通常会.ssh
在用户的主目录中有一个文件夹。在该文件夹中,您可以创建一个文件authorized_keys
,将先前生成的公钥的内容粘贴到其中。