weareinteractive.ufw
Ansible weareinteractive.ufw Rolle
weareinteractive.ufw
ist eine Ansible Rolle, die:
- ufw installiert
- ufw konfiguriert
- ufw-Regeln konfiguriert
- Dienste konfiguriert
Installation
Mit ansible-galaxy
:
$ ansible-galaxy install weareinteractive.ufw
Mit requirements.yml
:
- src: weareinteractive.ufw
Mit git
:
$ git clone https://github.com/weareinteractive/ansible-ufw.git weareinteractive.ufw
Abhängigkeiten
- Ansible >= 2.10
Variablen
Hier ist eine Liste aller Standardvariablen für diese Rolle, die auch in defaults/main.yml
verfügbar sind.
---
# Den Dienst starten und beim Systemstart aktivieren
ufw_enabled: true
# Liste der zu installierenden Pakete
ufw_packages: ["ufw"]
# Name des Dienstes
ufw_service: ufw
# Liste der anzuwendenden Regeln
# siehe https://docs.ansible.com/ansible/latest/collections/community/general/ufw_module.html für Dokumentation
ufw_rules:
- rule: allow
to_port: 22
# Konfigurationsdatei verwalten
ufw_manage_config: false
# Konfigurationseinstellungen für die Konfigurationsdatei
ufw_config:
IPV6: "ja"
DEFAULT_INPUT_POLICY: DROP
DEFAULT_OUTPUT_POLICY: ACCEPT
DEFAULT_FORWARD_POLICY: DROP
DEFAULT_APPLICATION_POLICY: SKIP
MANAGE_BUILTINS: "nein"
IPT_SYSCTL: /etc/ufw/sysctl.conf
IPT_MODULES: ""
# Pfad zur Konfigurationsdatei
ufw_config_file: /etc/default/ufw
Handler
Dies sind die Handler, die in handlers/main.yml
definiert sind.
---
- name: ufw zurücksetzen
community.general.ufw:
state: reset
- name: ufw neu laden
community.general.ufw:
state: reloaded
when: ufw_enabled | bool
Verwendung
Dies ist ein Beispiel-Playbook:
# @see https://docs.ansible.com/ansible/latest/collections/community/general/ufw_module.html#examples
---
- hosts: alle
become: true
roles:
- weareinteractive.ufw
vars:
ufw_rules:
# Logging aktivieren
- logging: "voll"
# OpenSSH erlauben
- rule: allow
name: OpenSSH
# OpenSSH-Regel löschen
- rule: allow
name: OpenSSH
delete: true
# Allen Zugriff auf TCP-Port 80 erlauben
- rule: allow
to_port: '80'
proto: tcp
# Konfigurationsdatei verwalten
ufw_manage_config: true
# Konfigurationseinstellungen für die Konfigurationsdatei
ufw_config:
IPV6: "ja"
DEFAULT_INPUT_POLICY: DROP
DEFAULT_OUTPUT_POLICY: ACCEPT
DEFAULT_FORWARD_POLICY: DROP
DEFAULT_APPLICATION_POLICY: SKIP
MANAGE_BUILTINS: "nein"
IPT_SYSCTL: /etc/ufw/sysctl.conf
IPT_MODULES: ""
Testen
$ git clone https://github.com/weareinteractive/ansible-ufw.git
$ cd ansible-ufw
$ make test
Mitwirken
Ohne einen formalen Stilrichtlinie, achte darauf, den bestehenden Code-Stil beizubehalten. Füge Unit-Tests und Beispiele für neue oder geänderte Funktionen hinzu.
- Forke es
- Erstelle deinen Feature-Branch (
git checkout -b mein-neues-feature
) - Committe deine Änderungen (
git commit -am 'Füge ein Feature hinzu'
) - Push zu dem Branch (
git push origin mein-neues-feature
) - Erstelle eine neue Pull-Anfrage
Hinweis: Um die README.md
-Datei zu aktualisieren, installiere und führe ansible-readme
aus:
$ gem install ansible-readme
$ ansible-readme
Lizenz
Copyright (c) We Are Interactive unter der MIT-Lizenz.
Installieren
ansible-galaxy install weareinteractive.ufw
Lizenz
mit
Downloads
240.4k
Besitzer