nl2go.vpn_gateway

Travis (.org) branch Ansible Galaxy GitHub tag (latest by date) Ansible Galaxy Downloads

Ansible Rolle: VPN-Gateway

Eine Ansible Rolle, die eine VPN-Tunnel-Verbindung zwischen zwei Partnern basierend auf IPsec / strongSwan verwaltet und routingbezogene Gateway-Konfigurationen bereitstellt.

Rollenvariablen

Verfügbare Variablen sind unten aufgeführt, zusammen mit den Standardwerten (siehe defaults/main.yml):

vpn_gateway_configs:
  - name: default
    psk: geheim
    

Konfigurationssets müssen mit der Variable vpn_gateway_configs definiert werden. Der name des Konfigurationssets ist obligatorisch und dient zur Identifizierung. Der vorab geteilte Schlüssel kann mit psk angegeben werden.

vpn_gateway_configs:
  - name: default
    state: absent

Die spezifische Gateway-Konfiguration kann mit state: absent entfernt werden.

vpn_gateway_configs:
  - name: default
    psk: geheim
    params:
      lifetime: 8h

Allgemeine Verbindungsparameter wie lifetime können im Abschnitt params festgelegt werden (siehe ipsec.conf für eine vollständige Parameterbeschreibung).

vpn_gateway_configs:
  - name: default
    psk: geheim
    local:
      public: 1.1.1.1
      networks:
        - 172.4.0.0/21
    remote:
      public: 1.2.3.4
      networks:
        - 172.240.0.0/21
        - 10.2.0.0/16

Ein Konfigurationsset enthält die local und remote Konfiguration für die Partner.

vpn_gateway_default_config_params:
  type: tunnel
  keyingtries: 0
  ikelifetime: 1h
  lifetime: 8h
  dpddelay: 300s
  dpdtimeout: 120
  dpdaction: clear
  authby: secret
  auto: start
  esp: aes256-sha256-modp3072
  ike: aes256-sha256-modp3072
  keyexchange: ikev2
  leftfirewall: 'ja'
  compress: 'nein'
  rekey: 'nein'
  fragmentation: 'ja'
  forceencaps: 'ja'

Die params innerhalb von vpn_gateway_configs erweitern bzw. überschreiben die oben angegebenen Standardverbindungsparameter.

vpn_gateway_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:

  • vpn_gateway: Deckt den gesamten Lebenszyklus der Rolle ab.
  • vpn_gateway_validate, validate: Überprüft die gegebene Konfiguration.
  • vpn_gateway_install, install: Installiert die erforderlichen Pakete.
  • vpn_gateway_config, config: Konfiguriert die erforderlichen Pakete.

Abhängigkeiten

Keine.

Beispiel-Playbook

- hosts: all
  roles:
     - nl2go.vpn_gateway
          

Entwicklung

Verwenden Sie docker-molecule und folgen Sie den Anweisungen, um Molecule auszuführen oder installieren Sie Molecule lokal (nicht empfohlen, es könnten Versionskonflikte auftreten).

Stellen Sie ein Hetzner Cloud-Token bereit:

export HCLOUD_TOKEN=123abc456efg

Verwenden Sie Folgendes, um Tests auszuführen:

molecule test --all

Wartung

Lizenz

Siehe die Datei LICENSE.md für Einzelheiten.

Autor Informationen

Diese Rolle wurde 2020 von Newsletter2Go GmbH erstellt.

Über das Projekt

Manages a VPN tunnel setup between two peers based on IPsec/strongSwanand provides gateway related routing configuration.

Installieren
ansible-galaxy install nl2go.vpn_gateway
GitHub Repository
Lizenz
mit
Downloads
5.1k