Подключение к локальному коммутатору через Jumphost маршрутизатора Mikrotik с использованием Ansible

Я использую Ansible на своей клиентской машине Debian. Я пытаюсь настроить файл инвентаря и ansible playbook для показа простой версии локальных устройств с удаленного сайта, находящегося за NAT, с помощью jumphost (бастиона), который является моим микротиком/маршрутизатором, используя ssh под названием «jumphost», а затем подключаюсь к конечному локальному микротику-маршрутизатору. переключатель под названием «localswitch». Я получаю следующую ошибку: «msg»: «Ошибка соединения ssh: ошибка соединения ssh: ошибка сокета: сброс соединения по узлу»

Пожалуйста, помогите, используя ansible_ssh_common_args для routeros в качестве jumphost.

инвентарь.yaml

      all:
  switches:
    hosts:
      localswitch.company.local:
        vars:
          ansible_ssh_common_args: '-o ProxyCommand="ssh -W %h:%p -q myuser@jumphost.company.com"'

playbook.yaml:

      - hosts: all
  connection: network_cli
  gather_facts: true
  vars:
    ansible_network_os: routeros
  tasks:
    - name: Print RouterBoard version
      routeros_command:
        commands:
          - /system routerboard print
      register: result

    - name: Display command output
      debug: 
        var: result.stdout_lines

1 ответ

Такое ощущение, что он не улавливает переменную и не знает, как ее правильно использовать. Вот еще один пример, который стоит попробовать:

      ansible_ssh_common_args='-o ProxyCommand="ssh -p 2222 -W %h:%p -q username@bastion.example.com"'

Открыт ли порт SSH для устройства? Пробовали ли вы добавить переменную на уровне книги или инвентаря и посмотреть, работает ли она таким образом?

смотрите также

Другие вопросы по тегам