场景:
    在ansible的使用过程中,存在这样的场景,ansible所在的管理节点与被管理的机器需要 通过一个跳板机才能连接,无法直接连接。要解决这个问题,并不需要在 ansible里做什么处理,而是在ssh连接层面解决这个问题。
 
1,ansible服务器公钥至堡垒机
 
2,导出堡垒机公钥至内网机
 
3,配置/root/.ssh/config
Host bastion
HostName xx.xx.xx.xx
Port
IdentityFile /root/.ssh/id_rsa
ProxyCommand none
User xiaoer
Host mtr_ops
HostName 192.168.4.241
ServerAliveInterval
TCPKeepAlive yes
#ProxyCommand connect-proxy -S 192.168.1.126: %h %p #这种方法需要安装connect-proxy,并配置ssh端口转发:ssh -NfD 0.0.0.0: bastion
ProxyCommand ssh bastion -W %h:%p # bastion对应 Host bastion
ControlMaster auto
ControlPersist
User opadmin
IdentityFile /root/.ssh/id_rsa_aly_opadmin
Port

4,配置/etc/ansible/ansible.cfg

[defaults]
transport = ssh #通信机制.默认 值为smart,如果本地系统支持 ControlPersist技术的话,将会使用(基于OpenSSH)'ssh',如果不支持将使用'paramiko',其他传输选项‘local’,‘chroot’,’jail’等等
ssh_args = -o ControlMaster=auto -o ControlPersist=5d
host_key_checking = False
remote_user = root
private_key_file = /root/.ssh/id_rsa_aly_opadmin #指定用来访问服务器的私钥
deprecation_warnings = False [ssh_connection]
ssh_args = -F /root/.ssh/config #指定ssh配置文件
pipelining = True
scp_if_ssh = True

5,hosts配置

[mtr]
x.x.x.x ansible_ssh_host=mtr_ops #mtr_ops 对应/root/.ssh/config 中的Host mtr_ops

6,测试

ansible x.x.x.x -m ping

x.x.x.x | SUCCESS => {
"changed": false,
"ping": "pong"
}

(四)ansible 通过堡垒机访问内网服务器的更多相关文章

  1. ansible 访问内网服务器

    ssh https://medium.com/@paulskarseth/ansible-bastion-host-proxycommand-e6946c945d30#.rauzlfv0z http: ...

  2. 使用pycharm、跳板机连接内网服务器

    使用pycharm.跳板机连接内网服务器 接手实验室服务器后,大部分同学在GPU集群上跑程序都是直接在ssh界面上跑,这里想着通过pycharm通过跳板机来连接服务器. 总体就是实验室服务器仅限内网访 ...

  3. centos7下安装openvpn,访问内网服务器 (二) windows访问

    一.简介 在上一章中已经安装好了openvpn,并且已经启动成功,现在就可以通过openvpn的客户端进行连接访问内网服务器了. 二.安装openvpn客户端 下载地址: https://www.te ...

  4. Nginx反向代理访问内网服务器

    Nginx反向代理访问内网服务器 问题描述 ​ 公司给配的台式机太垃圾了,不能访问外部网络就算了,还没有maven私服.近期项目不光得使用maven还得使用内网中的数据库之类,台式机太卡只能用自己的笔 ...

  5. H3C SecPath U200-S 如何在内网使用外网IP地址访问内网服务器

    H3C SecPath U200-S 如何在内网使用外网IP地址访问内网服务器 ------------------------------------------------------------ ...

  6. 浏览器 Proxy SwitchyOmega 插件设置代理访问内网服务器

    使用Proxy SwitchyOmega 插件通过代理 直接访问到内网网站 一.使用场景 如下图所示,如果在电脑的网络设置中开启代理,每次更换代理就需要进入这里设置改变代理.且我们可能回需求到两个网页 ...

  7. centos7下配置iptables实现外网访问内网服务器

    说明:Centos 7 默认的防火墙是 firewall,安装iptables之前需关闭Firewall 外网机器:外网ip:120.25.71.183内网ip:10.1.1.23 内网机器:内网ip ...

  8. 建立SSH隧道从外网访问内网服务器

    http://blog.trackets.com/2014/05/17/ssh-tunnel-local-and-remote-port-forwarding-explained-with-examp ...

  9. centos7下安装openvpn,访问内网服务器 (三)证书取消授权

    1.创建临时证书 使用easy-rsa创建额外的证书: [root@origalom openvpn]# cd /usr/share/easy-rsa/2.0/ [root@origalom 2.0] ...

随机推荐

  1. java实现第六届蓝桥杯居民集会

    居民集会 蓝桥村的居民都生活在一条公路的边上,公路的长度为L,每户家庭的位置都用这户家庭到公路的起点的距离来计算,第i户家庭距起点的距离为di. 每年,蓝桥村都要举行一次集会.今年,由于村里的人口太多 ...

  2. java实现第四届蓝桥杯错误票据

    错误票据 题目描述 某涉密单位下发了某种票据,并要在年终全部收回. 每张票据有唯一的ID号.全年所有票据的ID号是连续的,但ID的开始数码是随机选定的. 因为工作人员疏忽,在录入ID号的时候发生了一处 ...

  3. Linux帮助命令man详解

    命令man详解 命令man,可以获得命令(使用whatis命令可以得到一个命令的简短介绍,可以使用:命令 --help 来获得命令的选项说明)或配置文件的帮助信息(可以使用apropos命令仅查看配置 ...

  4. 如何在交互式环境中执行Python程序

    相信接触过Python的小伙伴们都知道运行Python脚本程序的方式有多种,目前主要的方式有:交互式环境运行.命令行窗口运行.开发工具上运行等,其中在不同的操作平台上还互不相同.今天,小编讲些Pyth ...

  5. 重学 Java 设计模式:实战组合模式(营销差异化人群发券,决策树引擎搭建场景)

    作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 小朋友才做选择题,成年人我都要 头几年只要群里一问我该学哪个开发语言,哪个语言最好. ...

  6. zabbix 监控https URL

    由于生产环境的需要,zabbix 需要监控https的url,但是因为zabbix 是aws ec2 zabbix web绑定了域名,所以没有办法所代理. 有兴趣的可以看官方文档 https://ww ...

  7. Flask flush 闪现

    闪现 要用必须导入 flash , get_flashed_messages flash 用于存闪现的值.他有两个参数,1 messsage,用来存储信息 2 category ,用于给信息分类,该参 ...

  8. 1.vue的基础认识

    vue 1.基于MvvM MVC--MVVM,是MVC的改进版      MVVM主要是将视图的状态和行为抽象化,把视图和业务逻辑分开      M:模型--存放状态的容器,是以数据为中心的      ...

  9. String 的格式化

    使用场景 用于生成redis等key-value 结构的key的格式化,方便管理 eg: String.format(RedisKeys.PURCHASE_ADD_BABY_LOCK,form.get ...

  10. @atcoder - AGC024F@ Simple Subsequence Problem

    目录 @description@ @solution@ @accepted code@ @details@ @description@ 给定由若干长度 <= N 的 01 字符串组成的集合 S. ...