clvx.easy-rsa

EASY-RSA

Rol de Ansible para generar un PKI de OpenVPN con easy-rsa

Trabajo Futuro

  • Soporte de contraseña para las claves del servidor y del cliente.
  • Soporte para revocar|eliminar certificados.
  • Soporte para obtener certificados de un CRS de cliente evitando generar claves en un servidor PKI definido.
  • Mejorar la documentación, por ahora consulta el uso en .gitlab-ci.yml

Requisitos

  • Ansible >= 2.1
  • Ubuntu >= 16.04

Variables del Rol

Aquí se debe incluir una descripción de las variables que se pueden configurar para este rol, incluyendo cualquier variable que esté en defaults/main.yml, vars/main.yml, y cualquier variable que se pueda/deba establecer a través de parámetros al rol. También se deben mencionar las variables que se leen de otros roles y/o del alcance global (es decir, hostvars, vars de grupo, etc.).

Variables Por Defecto Descripción
deploy_key_dir "{{ playbook_dir }}/files }}" Donde se almacenarán las claves
easy_rsa_dir /usr/share/easy-rsa Ruta a los ejecutables de easy-rsa
easy_rsa_keydir "{{ deploy_key_dir }}" Donde se almacenarán las claves
easy_rsa_key_size 2048 Tamaño de clave
easy_rsa_key_country "PE" País
easy_rsa_key_province "LIMA" Provincia
easy_rsa_key_city "LIMA" Ciudad
easy_rsa_key_org "BAR" Organización
easy_rsa_key_email "foo@example.com" Correo electrónico
easy_rsa_key_ou "IT" Unidad Organizativa
easy_rsa_force_pki "False" Si existe un PKI, elimina todo y crea uno nuevo
easy_rsa_inventory True Usa los nombres del inventario para los archivos PKI asociados con lab-servers y el grupo lab-clients
groups['lab-servers'] tus servidores del inventario Cuando easy_rsa_inventory es True, Grupo de Inventario que lista todos los servidores
groups['lab-clients'] tus clientes del inventario Cuando easy_rsa_inventory es True, Grupo de Inventario que lista todos los clientes
server_list [] Cuando easy_rsa_inventory es False, usará estos servidores en su lugar
client_list [] Cuando easy_rsa_inventory es False, usará estos clientes en su lugar

Dependencias

Ninguna

Ejemplo de Playbook

Este playbook funciona de 2 maneras:

  1. Puedes construir y mantener tu PKI con Ansible utilizando hosts del inventario para referenciar tus claves y certificados.

Inventario:

[lab-clients]
localhost

Playbook:

- hosts: lab-clients
  roles:
     - clvx.easy-rsa
  1. Puedes definir tus propios clientes y variables con server_list y client_list.

Playbook:

- hosts: lab
  vars:
    - server_list:
        - servidor1
        - servidor2
    - client_list:
        - cliente1
        - cliente2
  roles:
    - clvx.easy-rsa

Licencia

GPLv3

Información del Autor

Luis Michael Ibarra

clvx: irc, twitter, reddit, etc.

Acerca del proyecto

Role to generate an openvpn pki.

Instalar
ansible-galaxy install clvx.easy-rsa
Licencia
gpl-3.0
Descargas
149
Propietario
Linux, Networking and sometimes a coder.