tincvpn

Ansible Роль для tinc VPN

Это Ansible роль для настройки одной или нескольких сетей tinc VPN (https://www.tinc-vpn.org/).

Использование

Добавьте роль в ваш requirements.yml:

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

Также можно указать версию для установки, используя параметр version. Пожалуйста, прочитайте документацию Ansible Galaxy для получения дополнительной информации.

Установите tincvpn_default_ip для ваших хостов в файле инвентаря:

[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

Простой пример плейбука:

- hosts: all
  roles:
    - matthiaslohr.tincvpn

Для примеров, как настроить несколько сетей tinc параллельно, посмотрите документацию.

Переменные Хоста

Имя переменной Значение по умолчанию Описание
tincvpn_{{ tincvpn_network }}_ip none tinc IP-адрес этого узла (должен быть частью tincvpn_subnet)

Переменные Роли

Имя переменной Значение по умолчанию Описание
tincvpn_network "default" Имя сети tinc (например, имя папки конфигурации tinc).
tincvpn_interface "tincvpn-{{ tincvpn_network }}" Имя сетевого интерфейса, используемого tinc.
tincvpn_subnet "192.168.255.0/24" Подсеть, используемая tinc.
tincvpn_mode "switch" Настройка Mode для tinc.
tincvpn_port 655 Порт прослушивания tinc.
tincvpn_extra_hosts [] Дополнительные доступные хосты tinc (не охваченные плейбуком, смотрите Дополнительные Хосты).
tincvpn_key_bits 2048 Длина RSA приватного ключа.
tincvpn_connect_to [] Узлы, к которым следует подключаться по умолчанию. Вы можете указать одно имя узла как строку или несколько узлов как список строк.
tincvpn_routes [] Добавьте маршруты, используя интерфейс сети tinc VPN.
tincvpn_local_directory "{{ inventory_dir }}/tincvpn-hosts/{{ tincvpn_network }}" Где сохранить публичные ключи хостов локально.
tincvpn_custom_config {} Словарь с пользовательскими параметрами конфигурации tinc vpn. например: PingInterval: "60"
tincvpn_custom_up_scripts [] Пользовательские команды для шаблона скрипта tinc-up.
tincvpn_custom_down_scripts [] Пользовательские команды для шаблона скрипта tinc-down.

Настройки конфигурации

Дополнительные Хосты

Если вы хотите подключиться к узлу, который не включен в инвентарь Ansible (например, к центральному маршрутизатору, к которому вы хотите подключиться), можно настроить дополнительные хосты через переменные плейбука:

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

Пользовательские Маршруты

tincvpn_routes:
  - network: "192.168.254.0/24"
    gateway: "192.168.255.1"
О проекте

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

Установить
ansible-galaxy install MatthiasLohr/ansible-role-tincvpn
Лицензия
mit
Загрузки
103
Владелец
Enterprise Software Architect