Si hallas algún fallo en tu código o trabajo, recuerda probar siempre en un entorno de testing antes añadir el código al trabajo final.
RouterOS es parte de la comunidad.red colección y solo admite conexiones CLI en la actualidad. httpapi
Es posible que se agreguen módulos en el futuro. Esta página ofrece detalles sobre cómo usar ansible.netcommon.network_cli
en RouterOS en Ansible.
- Conexiones disponibles
-
Uso de la CLI en Ansible
- CLI de ejemplo
group_vars/routeros.yml
- Ejemplo de tarea CLI
- CLI de ejemplo
Conexiones disponibles
CLI |
|
---|---|
Protocolo |
SSH |
Cartas credenciales |
utiliza SSH keys / SSH-agente si está presente acepta |
Acceso indirecto |
a través de un bastión (host de salto) |
Configuración de conexión |
|
Habilitar modo |
no es compatible con RouterOS |
Formato de datos devueltos |
|
RouterOS no es compatible ansible_connection: local
. Debes usar ansible_connection: ansible.netcommon.network_cli
.
Uso de la CLI en Ansible
CLI de ejemplo group_vars/routeros.yml
ansible_connection: ansible.netcommon.network_cli ansible_network_os: community.network.routeros 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"'
- Si está utilizando SSH keys (incluido un ssh-agent) puede eliminar el
ansible_password
configuración. - Si está accediendo a su host directamente (no a través de un bastión/host de salto), puede eliminar el
ansible_ssh_common_args
configuración. - Si está accediendo a su host a través de un bastión/host de salto, no puede incluir su contraseña SSH en el
ProxyCommand
directiva. Para evitar que se filtren secretos (por ejemplo, enps
salida), SSH no admite proporcionar contraseñas a través de variables de entorno. - Si recibe errores de tiempo de espera, es posible que desee agregar
+cet1024w
sufijo a su nombre de usuario que deshabilitará los colores de la consola, habilitará el modo “tonto”, le indicará a RouterOS que no intente detectar las capacidades de la terminal y establecerá el ancho de la terminal en 1024 columnas. ver artículo Proceso de inicio de sesión de la consola en la wiki de MikroTik para obtener más información.
Ejemplo de tarea CLI
-name: Display resource statistics (routeros) community.network.routeros_command:commands: /system resource print register: routeros_resources when: ansible_network_os == 'community.network.routeros'
Advertencia
Nunca almacene contraseñas en texto sin formato. Recomendamos usar SSH keys para autenticar las conexiones SSH. Ansible admite ssh-agent para administrar su SSH keys. Si debe utilizar contraseñas para autenticar las conexiones SSH, le recomendamos cifrarlas con Bóveda de Ansible.
Ver también
Configuración de opciones de tiempo de espera