openvpn
Ansible роль openvpn
Установите и настройте сервер или клиент openvpn на вашей системе.
GitHub | GitLab | Скачивания | Версия |
---|---|---|---|
Пример плейбука
Этот пример взят из molecule/default/converge.yml
и тестируется на каждом пуше, запросе на вытягивание и релизе.
---
- name: Converge
hosts: all
become: true
gather_facts: true
tasks:
- name: Создать сервер openvpn
ansible.builtin.include_role:
name: robertdebock.openvpn
vars:
openvpn_role: "server"
- name: Скопировать сертификаты и ключи с сервера на клиент
ansible.builtin.copy:
src: /etc/openvpn/easy-rsa/pki/{{ item }}
dest: /etc/openvpn/client/{{ item | basename }}
mode: "0640"
remote_src: true
loop:
- ca.crt
- issued/client.crt
- private/client.key
- ta.key
- name: Создать клиент openvpn
ansible.builtin.include_role:
name: robertdebock.openvpn
vars:
openvpn_role: "client"
openvpn_client_server: "127.0.0.1"
Машину нужно подготовить. В CI это делается с помощью molecule/default/prepare.yml
:
---
- name: Подготовить
hosts: all
become: true
gather_facts: false
roles:
- role: robertdebock.bootstrap
- role: robertdebock.epel
Смотрите также полное объяснение и пример о том, как использовать эти роли.
Переменные роли
Значения по умолчанию для переменных установлены в defaults/main.yml
:
---
# файл по умолчанию для openvpn
# Вы можете настроить как клиент, так и сервер с помощью этой роли.
# Используйте `server` или `client` для `openvpn_role`.
openvpn_role: server
# Если вы настраиваете клиент, установите эти переменные:
# openvpn_role: client
# openvpn_client_server: vpn.example.com
Требования
- Пакеты pip, указанные в requirements.txt.
Состояние используемых ролей
Для подготовки системы используются следующие роли. Вы можете подготовить вашу систему другим способом.
Требование | GitHub | GitLab |
---|---|---|
robertdebock.bootstrap | ||
robertdebock.epel |
Контекст
Эта роль является частью многих совместимых ролей. Ознакомьтесь с документацией этих ролей для получения дополнительной информации.
Вот обзор связанных ролей:
Совместимость
Эта роль была протестирована на следующих образах контейнеров:
контейнер | теги |
---|---|
EL | 9 |
Debian | все |
Ubuntu | focal |
Минимальная версия Ansible, которая требуется — 2.12, тесты проводились на:
- Предыдущей версии.
- Текущей версии.
- Версии разработки.
Если вы найдете проблемы, пожалуйста, сообщите о них в GitHub.
Лицензия
Информация об авторе
Пожалуйста, подумайте о спонсировании меня.
ansible-galaxy install robertdebock/ansible-role-openvpn