matthiaslohr.tincvpn

Rôle Ansible pour VPN tinc

Ceci est un rôle Ansible pour configurer un ou plusieurs réseaux VPN tinc (https://www.tinc-vpn.org/).

Utilisation

Ajoutez le rôle à votre fichier requirements.yml :

- src: https://github.com/MatthiasLohr/ansible-role-tincvpn
  name: matthiaslohr.tincvpn

Vous pouvez également spécifier la version à installer en utilisant le paramètre version. Veuillez lire la documentation d'Ansible Galaxy pour plus de détails.

Définissez tincvpn_default_ip pour vos hôtes dans le fichier d'inventaire :

[all]
node1 tincvpn_default_ip=192.168.255.1
node2 tincvpn_default_ip=192.168.255.2
node3 tincvpn_default_ip=192.168.255.3

Exemple simple de playbook :

- hosts: all
  roles:
    - matthiaslohr.tincvpn

Pour des exemples sur la manière de configurer plusieurs réseaux tinc en parallèle, consultez la documentation.

Variables d'Hôte

Nom de la Variable Valeur par Défaut Description
tincvpn_{{ tincvpn_network }}_ip none Adresse IP tinc de ce nœud (doit faire partie de tincvpn_subnet)

Variables de Rôle

Nom de la Variable Valeur par Défaut Description
tincvpn_network "default" Nom du réseau tinc (par exemple, nom du dossier de configuration tinc).
tincvpn_interface "tincvpn-{{ tincvpn_network }}" Nom de l'interface réseau utilisée par tinc.
tincvpn_subnet "192.168.255.0/24" Sous-réseau utilisé par tinc.
tincvpn_mode "switch" Paramètre Mode de tinc.
tincvpn_port 655 Port d'écoute de tinc.
tincvpn_extra_hosts [] Hôtes tinc supplémentaires disponibles (non couverts par le playbook, voir Hôtes supplémentaires).
tincvpn_key_bits 2048 Longueur de la clé privée RSA.
tincvpn_connect_to [] Nœuds auxquels se connecter par défaut. Vous pouvez donner un seul nom de nœud en tant que chaîne ou plusieurs nœuds en tant que liste de chaînes.
tincvpn_routes [] Ajoutez des routes en utilisant l'interface réseau VPN tinc.
tincvpn_local_directory "{{ inventory_dir }}/tincvpn-hosts/{{ tincvpn_network }}" Où enregistrer les clés publiques des hôtes localement.
tincvpn_custom_config {} Dictionnaire avec des paramètres de configuration personnalisés pour le VPN tinc. ex.: PingInterval: "60"
tincvpn_custom_up_scripts [] Commandes personnalisées définies pour le modèle de script tinc-up.
tincvpn_custom_down_scripts [] Commandes personnalisées définies pour le modèle de script tinc-down.

Ajustements de Configuration

Hôtes Supplémentaires

Dans le cas où vous souhaitez vous connecter à un nœud qui n'est pas inclus dans l'inventaire Ansible (par exemple, un routeur central auquel vous souhaitez vous connecter), il est possible de configurer des hôtes supplémentaires via des variables de playbook :

tincvpn_extra_hosts:
  - name: externalnode1
    address: externalnode1.example.com
    public_key: |
      -----BEGIN RSA PUBLIC KEY-----
      ...
      -----END RSA PUBLIC KEY-----

  - name: externalnode2
    address: externalnode2.example.com
    public_key: |
      -----BEGIN RSA PUBLIC KEY-----
      ...
      -----END RSA PUBLIC KEY-----

Routes Personnalisées

tincvpn_routes:
  - network: "192.168.254.0/24"
    gateway: "192.168.255.1"
À propos du projet

Ansible role for setting up one or many tinc VPN networks (https://www.tinc-vpn.org/).

Installer
ansible-galaxy install matthiaslohr.tincvpn
Licence
mit
Téléchargements
121
Propriétaire
Enterprise Software Architect