Ansible:如何在没有ssh密钥的情况下配置跳转主机?

时间:2017-05-31 18:15:37

标签: passwords ansible ssh-keys openssh

我看了[问] [1],但我的任务没有答案。

如何使用Ansible密码访问堡垒(跳转框)主机?我们不考虑使用SSH密钥。对于这种情况,SSH配置(或Ansible配置)将如何? 例如,使用SSH密钥,配置如下所示:

ansible_ssh_common_args: '-o ProxyCommand="ssh -W %h:%p -q user@gateway.example.com"'

如何使用密码实现相同的结果?

2 个答案:

答案 0 :(得分:2)

您可以使用ProxyJump ssh选项,该选项不需要在跳转主机上安装netcat / nc。

因此,在用于运行Ansible命令的用户的~/.ssh/config文件中,添加类似的内容

Host jumphost
  HostName 1.1.1.1  # use actual ip address or fqdn

Host *
  ProxyJump jumphost

答案 1 :(得分:0)

在我的~/.ssh/config文件中,我已经像这样配置了堡垒主机:

##### Private hosts access through bastion host #####
Host bastion-host
  HostName 52.13.2.54
  ForwardAgent yes

Host 10.10.*
  ProxyCommand ssh -q bastion-host nc -q0 %h %p

然后我可以通过私有子网中的主机直接运行Ansible。希望可以帮到你