nl2go.vpn_gateway
Ansible Rola: Brama VPN
Rola Ansible, która zarządza ustawieniem tunelu VPN między dwoma punktami opartym na IPsec / strongSwan i zapewnia konfigurację routingu związaną z bramą.
Zmienne Roli
Dostępne zmienne są wymienione poniżej, wraz z wartościami domyślnymi (zobacz defaults/main.yml
):
vpn_gateway_configs:
- name: domyślny
psk: tajny
Zestawy konfiguracji muszą być zdefiniowane za pomocą zmiennej vpn_gateway_configs
. Nazwa zestawu konfiguracji jest obowiązkowa i służy do identyfikacji. Klucz wstępnie udostępniony można określić za pomocą psk
.
vpn_gateway_configs:
- name: domyślny
state: brak
Konkretną konfigurację bramy można usunąć, używając state: brak
.
vpn_gateway_configs:
- name: domyślny
psk: tajny
params:
lifetime: 8h
Ogólne parametry połączenia, takie jak lifetime
, mogą być ustawiane w sekcji params
(zobacz ipsec.conf dla pełnego opisu parametrów).
vpn_gateway_configs:
- name: domyślny
psk: tajny
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
Zestaw konfiguracji zawiera część konfiguracji punktów local
i remote
.
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: 'tak'
compress: 'nie'
rekey: 'nie'
fragmentation: 'tak'
forceencaps: 'tak'
Parametry params
w vpn_gateway_configs
rozszerzają/przesłaniają domyślne parametry połączenia podane powyżej.
vpn_gateway_config_dir: "/etc/ipsec.d/{{ role_name }}"
Określa niestandardowy katalog konfiguracji IPsec w celach izolacyjnych.
Tag
Tagi mogą być używane do ograniczenia wykonania roli do konkretnego modułu zadania. Dostępne tagi to:
vpn_gateway
: Obejmuje cały cykl życia roli.vpn_gateway_validate
,validate
: Waliduje daną konfigurację.vpn_gateway_install
,install
: Instaluje wymagane pakiety.vpn_gateway_config
,config
: Konfiguruje wymagane pakiety.
Zależności
Brak.
Przykładowy Playbook
- hosts: all
roles:
- nl2go.vpn_gateway
Rozwój
Użyj docker-molecule zgodnie z instrukcjami, aby uruchomić Molecule lub zainstaluj Molecule lokalnie (niezalecane, mogą wystąpić konflikty wersji).
Podaj token Hetzner Cloud:
export HCLOUD_TOKEN=123abc456efg
Użyj następującego polecenia do uruchomienia testów:
molecule test --all
Utrzymujący
Licencja
Zobacz plik LICENSE.md w celu uzyskania szczegółowych informacji.
Informacje o autorze
Ta rola została stworzona w 2020 roku przez Newsletter2Go GmbH.
Manages a VPN tunnel setup between two peers based on IPsec/strongSwanand provides gateway related routing configuration.
ansible-galaxy install nl2go.vpn_gateway