nl2go.network_encryption
Ansible-Rolle: Netzwerkverschlüsselung
Eine Ansible-Rolle, die die Verschlüsselung des Netzwerks zwischen den angegebenen Hosts basierend auf IPsec / strongSwan verwaltet.
Anforderungen
Name | Typ | Version | Ort |
---|---|---|---|
ansible-filter | Python-Paket | 1.0.0 | Steuerknoten |
Rollenvariablen
Verfügbare Variablen sind unten aufgeführt, zusammen mit den Standardwerten (siehe defaults/main.yml
):
network_encryption_charon_port: 500
UDP-Port, der lokal verwendet wird. Wenn auf 0 gesetzt, wird ein zufälliger Port zugewiesen (s. strongswan.conf).
network_encryption_port_nat_t: 4500
UDP-Port, der lokal im Falle von NAT-T verwendet wird. Wenn auf 0 gesetzt, wird ein zufälliger Port zugewiesen. Muss anders als charon.port sein, sonst wird ein zufälliger Port zugewiesen (s. strongswan.conf).
network_encryption_configs:
- name: default
psk: secret
Konfigurationssets müssen mit der Variablen network_encryption_configs
konfiguriert werden. Der name
des Konfigurationssets ist verpflichtend und wird zur Identifizierung verwendet. Der vorab geteilte Schlüssel kann mit psk
angegeben werden.
network_encryption_host_configs:
- name: default
Hosts können mit der Variablen network_encryption_host_configs
einem Konfigurationsset zugeordnet werden. Konfigurationssets werden über name
referenziert.
network_encryption_host_configs:
- name: default
state: absent
Ein Host kann mit state: absent
vom Konfigurationsset getrennt werden.
network_encryption_configs:
- name: default
interface: eth0
psk: secret
Die Schnittstelle kann mit der Variablen interface
angegeben werden. Wenn nicht angegeben, wird standardmäßig ansible_default_ipv4.interface
verwendet.
network_encryption_configs:
- name: default
psk: secret
params:
lifetime: 8h
Allgemeine Verbindungsparameter wie lifetime
können im Abschnitt params
gesetzt werden (s. ipsec.conf für vollständige Parametrierung).
network_encryption_default_config_params:
ike: aes256gcm16-prfsha384-modp4096,aes256gcm16-prfsha384-ecp384!
esp: aes256gcm16-modp4096,aes256gcm16-ecp384!
keyingtries: 0
ikelifetime: 1h
lifetime: 8h
dpddelay: 30
dpdtimeout: 120
dpdaction: clear
authby: secret
keyexchange: ikev2
type: tunnel
Die params
innerhalb von network_encryption_configs
erweitern/überschreiben die oben angegebenen Standardverbindungsparameter.
network_encryption_config_dir: "/etc/ipsec.d/{{ role_name }}"
Definiert das benutzerdefinierte IPsec-Konfigurationsverzeichnis zu Isolationszwecken.
Tags
Tags können verwendet werden, um die Ausführung der Rolle auf ein bestimmtes Aufgabenmodul zu beschränken. Folgende Tags sind verfügbar:
network_encryption
: Deckt den gesamten Lebenszyklus der Rolle ab.network_encryption_install
,install
: Installiert benötigte Pakete.network_encryption_config
,config
: Konfiguriert benötigte Pakete.
Abhängigkeiten
Keine.
Beispiel-Playbook
- hosts: all
roles:
- nl2go.network_encryption
Entwicklung
Verwenden Sie docker-molecule gemäß den Anweisungen, um Molecule auszuführen oder installieren Sie Molecule lokal (nicht empfohlen, da Versionskonflikte auftreten können).
Verwenden Sie Folgendes, um Tests auszuführen:
molecule test --all
Maintainer
Lizenz
Siehe die Datei LICENSE.md für Details.
Autoreninformation
Diese Rolle wurde 2019 von Newsletter2Go GmbH erstellt.
Manage network encryption between inventory hosts based on[IPsec](https://de.wikipedia.org/wiki/IPsec) /[strongSwan](https://www.strongswan.org/).
ansible-galaxy install nl2go.network_encryption