Параметры платформы RouterOS
RouterOS входит в коллекцию community.network и поддерживает только подключения через CLI и прямой доступ к API. На этой странице приведены сведения об использовании ansible.netcommon.network_cli в RouterOS с Ansible. Дополнительную информацию можно найти в руководстве по SSH для коллекции community.routeros.
Сведения об использовании API RouterOS можно найти в руководстве по API для коллекции community.routeros.
Доступные подключения
CLI | |
|---|---|
Протокол | SSH |
Учетные данные |
используются ключи SSH / ssh-agent, если они доступны при использовании пароля принимается |
Непрямой доступ | через бастион (промежуточный узел) |
Параметры подключения |
|
Режим enable | не поддерживается RouterOS |
Формат возвращаемых данных |
|
Модули SSH для RouterOS не поддерживают ansible_connection: local. Необходимо использовать ansible_connection: ansible.netcommon.network_cli.
Модулям API для RouterOS требуется ansible_connection: local. Дополнительные сведения см. в руководстве по API для коллекции community.routeros.
Использование CLI в Ansible
Пример CLI group_vars/routeros.yml
ansible_connection: ansible.netcommon.network_cli ansible_network_os: community.network.routeros ansible_user: myuser ansible_password: !vault... ansible_become: true ansible_become_method: enable ansible_become_password: !vault... ansible_paramiko_proxy_command: '-o ProxyCommand="ssh -W %h:%p -q bastion01"'
- Если вы используете ключи SSH (включая ssh-agent), можно удалить конфигурацию
ansible_password. - Если вы подключаетесь к узлу напрямую (не через бастион/промежуточный узел), можно удалить конфигурацию
ansible_paramiko_proxy_command. - Если вы подключаетесь к узлу через бастион/промежуточный узел, нельзя указывать пароль SSH в директиве
ProxyCommand. Чтобы предотвратить утечку секретов (например, в выводеps), SSH не поддерживает передачу паролей через переменные среды. - Если возникают ошибки времени ожидания, можно добавить суффикс
+cet1024wк имени пользователя. Он отключит цвета консоли, включит режим «dumb», укажет RouterOS не определять возможности терминала и установит ширину терминала в 1024 столбца. Дополнительную информацию см. в статье Процесс входа в консоль в вики MikroTik. - Дополнительные примечания приведены в руководстве по SSH для коллекции community.routeros.
Пример задачи CLI
- name: Display resource statistics (routeros)
community.network.routeros_command:
commands: /system resource print
register: routeros_resources
when: ansible_network_os == 'community.network.routeros'
Предупреждение
Никогда не храните пароли в виде обычного текста. Для аутентификации SSH-подключений рекомендуется использовать ключи SSH. Ansible поддерживает ssh-agent для управления ключами SSH. Если для аутентификации SSH-подключений необходимо использовать пароли, рекомендуется зашифровать их с помощью Ansible Vault.
См. также
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/network/user_guide/platform_routeros.html