首页 > 解决方案 > SSH 隧道访问

问题描述

再会

我为 ISP 工作,我们基本上通过 Jumpbox 的 CLI 管理所有交换机和路由器。

我想通过编写 Python 脚本等来自动化我在这些设备上的一些工作。

但是,这个 Jumpbox (Linux) 相当旧,Python 版本也很旧。我无法添加 Ansible、Netmiko 等。另外,我不是该框的管理员,因此无法升级它。

我的问题是,如果我使用所有必需的工具设置自己的 Linux VM,我将如何从本地 Linux VM 访问这些路由器和交换机?

我尝试设置到 Jumpbox 的本地/远程/动态 SSH 隧道,但我总是以 Jumpbox SSH 会话本身结束。

标签: pythonsshautomationtunneling

解决方案


您可以将 jumpbox 用作堡垒主机。将您的公钥复制到两个主机(跳转盒和设备)并在您的清单文件中使用ansible_ssh_common_args选项进行设置,如下所示:

[switches]
switch-01 ansible_host=192.168.0.1 ansible_ssh_common_args='-o ProxyCommand="ssh -W %h:%p -q user@ip-bastion"'

注意:您必须运行 Ansible 版本 2。

此致。


推荐阅读