问题
管理外部环境时,会遇到服务器不开外网访问的情况,可通过跳板机器管理
ssh跳板
ssh -i /path/.keys/id_rsa -o ProxyCommand="ssh -W %h:%p -i /path/.keys/id_rsa user1@jump_host" user1@dest_host
注意
刚开始以为跳板是Client->Jump_host->Dest_host
即登录跳板机再通过跳板机登录目标机器,但事实是Jump_host仅提供了一个通道,认证信息都是使用ssh客户端的认证信息,所有要保证客户端的key同时做了跳板机和目标机器的免认证
ansible如何使用
增加参数
ansible_ssh_common_args = '-o ProxyCommand="ssh -i /path/.keys/id_rsa user1@jump_host -W %h:%p"'