securCom.nftables
Gestion des nftables
Ce rôle gère les nftables.
Comme il est très difficile d'écrire un modèle nftables générique, ce rôle se contente de déplacer des extraits de configuration nftables définis par l'utilisateur vers le serveur et de les exécuter. Vous devez toujours comprendre la syntaxe nftables.
Exigences
- ansible : 2.4
Variables du Rôle
Variables basées sur le système d'exploitation
Certaines variables sont basées sur le système d'exploitation. Ces variables se trouvent dans les fichiers vars/os-<OS>.yml
.
Variables Génériques
nftables_dir
: répertoire de configuration nftables, par défaut /etc/nftablesnftables_service_state
: si le service doit être démarrénftables_service_enabled
: si le service doit être activé au démarrage
Règles du pare-feu
nftables_rules_directory
: où je dois chercher les fichiers de règles du pare-feu, par défaut dans le répertoire des modèles du playbooknftables_families
: à quelle version IP générer les règles, par défaut IPv4 et IPv6nftables_rules
: liste des règles à appliquer. Par défaut, seuls SSH et ICMP sont autorisés, voir des exemples de règles dans le répertoire templates/rules
Ce rôle utilise le moteur de templating pour générer les règles. Le travail difficile d'écriture des règles reste à votre charge, mais vous avez tout sous contrôle.
Exemple
Variables d'hôte/groupe
nftables_rules_directory: {{ playbook_dir }}/files/nftables
nftables_rules:
- default_rules
- connection_tracking
- input_icmp
- management
Dans ce cas, vous devez créer les fichiers suivants :
{{ playbook_dir }}/files/nftables/rules/default_rules.conf.j2
{{ playbook_dir }}/files/nftables/rules/connection_tracking.conf.j2
...
Vous devez réécrire les nftables_rules
dans group_var ou host_vars pour chaque groupe ou serveur selon les besoins.
Playbook
- hosts: ferm
roles:
- securcom.nftables
Dépendances
Aucune
Licence
BSD
Informations sur l'auteur
Peter Hudec (@hudecof)
ansible-galaxy install securCom.nftables