Варианты платформы IOS
IOS поддерживает режим Enable (эскалация привилегий). Эта страница содержит информацию о том, как использовать режим Enable на IOS в Ansible.
Доступные соединения
| CLI | |
|---|---|
| Протокол | SSH |
| Данные для входа |
использует ключи SSH / SSH-agent, если они присутствуют принимает |
| Непосредственный доступ | через бастион (прокси-хост) |
| Настройки подключения | ansible_connection: network_cli |
| Режим Enable (эскалация привилегий) | поддерживается: используйте ansible_become: yes с ansible_become_method: enable и ansible_become_password:
|
| Формат возвращаемых данных | stdout[0]. |
Для устаревших playbooks IOS все еще поддерживает ansible_connection: local. Рекомендуется как можно скорее перейти на использование ansible_connection: network_cli.
Использование CLI в Ansible
Пример CLI group_vars/ios.yml
ansible_connection: network_cli ansible_network_os: ios ansible_user: myuser ansible_password: !vault... ansible_become: yes ansible_become_method: enable ansible_become_password: !vault... ansible_ssh_common_args: '-o ProxyCommand="ssh -W %h:%p -q bastion01"'
- Если вы используете ключи SSH (включая ssh-agent), вы можете удалить конфигурацию
ansible_password. - Если вы подключаетесь к хосту напрямую (не через бастион/прокси-хост), вы можете удалить конфигурацию
ansible_ssh_common_args. - Если вы подключаетесь к хосту через бастион/прокси-хост, вы не можете включать свой пароль SSH в директиву
ProxyCommand. Для предотвращения утечки секретов (например, в выводеps), SSH не поддерживает предоставление паролей через переменные окружения.
Пример задачи CLI
- name: Backup current switch config (ios)
ios_config:
backup: yes
register: backup_ios_location
when: ansible_network_os == 'ios'
Предупреждение
Никогда не храните пароли в открытом виде. Рекомендуется использовать ключи SSH для аутентификации подключений SSH. Ansible поддерживает ssh-agent для управления вашими ключами SSH. Если вы должны использовать пароли для аутентификации подключений SSH, рекомендуем шифровать их с помощью Ansible Vault.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.9/network/user_guide/platform_ios.html