madnessy.ansible_mikrotik
Avertissement :
Ce playbook est encore en cours d’élaboration.
Je l'ai créé pour ma propre situation à la maison, n’hésitez pas à ajouter, améliorer, etc.
Ce playbook a été réalisé avec la version 6.44.3 de RouterOs.
Comment utiliser :
Ajoutez ceci dans votre configuration Ansible :
[paramiko_connection]
pty=False
Ajoutez ceci dans vos variables d'hôte :
ansible_network_os: routeros
Et ensuite copiez les variables (la manière la plus simple) :
Il suffit de copier le fichier par défaut (defaults/main.yml) dans votre répertoire de variables d'hôte et de renommer l'original main.yml (dans defaults/) à un nom qui ne sera pas traité.
Exemple de playbook :
- hosts: hosts
remote_user: admin
connection: network_cli
gather_facts: false
roles:
- ansible-mikrotik
Que peut vraiment faire ce playbook :
Renforcement
Quelques éléments de renforcement basiques recommandés par Mikrotik.
Pare-feu
Ajouter des politiques, sans supprimer.
Interfaces
Créer un bond 802.3ad ou un bond balance-xor.
Désactiver des interfaces.
Créer des listes d'interfaces.
VLAN
Créer des VLAN en fonction du filtrage par pont.
Assigner des interfaces au VLAN (taguées / non taguées).
Assigner des réseaux / serveurs DHCP au VLAN.
Sans fil
Créer un profil de sécurité (plutôt basique).
Créer une interface WLAN virtuelle.
Définir l'interface VLAN maître (et définir les canaux, etc.).
Général :
Ajouter un script de sauvegarde et un script de mise à jour (pas testé pour voir si les scripts fonctionnent réellement).
Définir le client NTP.
VPN :
Encore à faire.
Autres remarques :
Jetez simplement un œil au fichier par défaut, cela pourrait expliquer certaines choses que j'ai oubliées.
À faire :
Retravailler la création de bond, de manière statique, nécessitera une solution comme l'ajout de politiques de pare-feu.
Tests :
Notes :
- Utilisation de Pipenv pour la gestion des paquets.
- Exécution de Molecule avec un créateur de VM QEMU personnalisé et MikroTik RouterOs.
Exemple :
$ pipenv update
$ pipenv shell
$ molecule create
$ molecule converge
$ molecule destroy
Licence :
MIT
ansible-galaxy install madnessy.ansible_mikrotik