使用 ansible SSH 到远程服务器

2024-04-24

我正在使用 ansible 来自动化一些任务。其中之一要求我ssh到服务器A,然后从A到B,然后从B到C。我似乎找不到任何方法来做到这一点。有什么建议么?


鉴于您不使用 Paramiko 进行 ssh (transport = ssh https://docs.ansible.com/ansible/latest/reference_appendices/config.html#default-transport),Ansible将充分利用您的~/.ssh/config。因此,您可以在 ssh 配置中全局定义所有连接规则。

如果由于某种原因您希望 Ansible 不使用默认的 ssh 配置而是提供单独的配置,您可以在您的ansible.cfg:

[ssh_connection]
ssh_args= -F "/path/to/ssh/config/specifically/for/ansible"

然后在您的 ssh 配置中设置连接规则。坚持你的例子:

Host HostA
  HostName real-host-name-A.com

Host HostB
  HostName real-host-name-B.com
  ProxyCommand ssh -q HostA nc %h %p

Host HostC
  HostName real-host-name-C.com
  ProxyCommand ssh -q HostB nc %h %p
  • 与 A 的连接是直接的
  • 到 B 的连接经过 A
  • 到 C 的连接经过 B,B 又经过 A
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 ansible SSH 到远程服务器 的相关文章

随机推荐