enix.teleport
enix.teleport
Un rol para desplegar y configurar teleport y extensiones en hosts unix utilizando Ansible.
[!WARNING] Este rol de Ansible ya no se mantiene y el proyecto ahora es de solo lectura. Gracias.
Requisitos
Plataformas soportadas:
- Ubuntu 18.04 "Bionic"
- Ubuntu 20.04 "Focal"
- Ubuntu 22.04 "Jammy"
- Debian 7 "Wheezy"
- Debian 8 "Jessie"
- Debian 9 "Stretch"
- Debian 10 "Buster"
- Debian 11 "Bullseye"
- Debian 12 "Bookworm"
Variables del Rol
Este rol viene precargado con casi todos los valores predeterminados disponibles. Puedes sobreescribir cada uno en las variables de tus hosts/grupos, en tu inventario o en tu playbook. Consulta los valores predeterminados anotados en defaults/main.yml
para obtener ayuda en la configuración. Todas las variables proporcionadas comienzan con teleport__
.
teleport__version: 10
- Versión principal del binario a instalar y mantener, la versión del repositorio predeterminado es 8. Disponibles ahora: 8, 9, 10, 11.teleport__agent: false
- Configurar y habilitar el software del agente de teleport.teleport__bind_addr: 0.0.0.0
- Dirección de enlace utilizada para configurar todas las demás direcciones de enlace.teleport__nodename
- Nombre con el que el agente de teleport se reporta a su proxy conectado. Si no se define, no se configurará ningún nombre de nodo y Teleport utilizará el nombre del host de la máquina.teleport__diag: false
- Habilitar el endpoint de monitoreo HTTP de teleport.teleport__diag_addr: "127.0.0.1"
- Dirección de enlace para el endpoint de monitoreo HTTP.teleport__diag_port: 3000
- Puerto para el endpoint de monitoreo HTTP.teleport__node: false
- Configurar y habilitar el rol de nodo de teleport.teleport__node_token: ""
- Token utilizado para unirse al proxy.teleport__node_server: ""
- URL del servidor proxy.teleport__proxy: false
- Habilitar el modo proxy en teleport.teleport__proxy_public_addr: ""
- Dirección pública que expone el proxy.teleport__proxy_acme: false
- Habilitar el protocolo ACME para certificado público. Cuando está deshabilitado, Teleport buscará el certificado en/etc/letsencrypt/live/{{ teleport__proxy_public_addr }}
teleport__proxy_acme_email: ""
- Email para la solicitud ACME.teleport__auth: false
- Habilitar el rol de autenticación de teleport.teleport__auth_cluster_name: ""
- Nombre del clúster de autenticación de teleport.teleport__auth_u2f: false
- Habilitar U2F (configuración no webauthn de estilo antiguo).teleport__auth_addr: {{ teleport__bind_addr }}
- Dirección de enlace para el servicio de autenticación de teleport.teleport__auth_port: 3025
- Puerto para el servicio de autenticación de teleport.teleport__ssh_addr: {{ teleport__bind_addr }}
- Dirección de enlace para el servicio SSH de teleport.teleport__ssh_port: 3022
- Puerto para el servicio SSH de teleport.teleport__ssh: false
- Habilitar el módulo SSH de teleport.teleport__ssh_labels: ''
- Agregar etiquetas al módulo SSH (formato yaml).teleport__ssh_pam_enabled: true
- Habilitar PAM.teleport__ssh_pam_service: 'sshd'
- Nombre del servicio PAM.teleport__app: false
- Habilitar el módulo de aplicación de teleport.teleport_applications: []
- Lista de aplicaciones, definidas como un diccionario con las siguientes claves:name
- Nombre de la aplicación.uri
- URI para la reversa del proxy.skip_verify: false
- Si se debe omitir la verificación del certificado en la URI de destino.
teleport__web_addr: {{ teleport__bind_addr }}
- Dirección de enlace para el servicio web de teleport.teleport__web_port: 443
- Puerto para el servicio web de teleport.teleport__tunnel_addr: {{ teleport__bind_addr }}
- Dirección de enlace para el servicio de túnel.teleport__tunnel_port: 3024
- Puerto para el servicio de túnel de teleport.teleport__binary_compat: false
- Si es verdadero, desplegará una versión binaria junto con el paquete con más compatibilidad de glibc. (Hecho automáticamente en las versiones debian anteriores a buster (10)).teleport__install_repo: true
- Configúralo en falso si deseas evitar la instalación del repositorio (útil para entornos aislados - instala manualmente y luego usa este rol para configurar todo).
Dependencias
- Ninguna
Uso
Usa Ansible galaxy requirements.yml
# teleport de enix
# rol privado
- src: git+ssh://[email protected]/ansible/ansible-teleport.git
name: enix.teleport
Y añádelo a los roles de tu playbook:
# Ejemplo de nodo
- hosts: all
roles:
- role enix.teleport:
teleport__agent: true
teleport__version: 9
teleport__nodename: "test.node"
teleport__node: true
teleport__node_token: "gjlksfdjglkfsdjlkgfds9423"
teleport__node_server: "https://toto.tp.com:3025"
teleport__ssh: true
teleport__ssh_labels:
tenant: toto.com
# Ejemplo de Proxy
- hosts: all
roles:
- role enix.teleport:
teleport__agent: true
teleport__version: 10
teleport__nodename: "toto.proxy"
teleport__proxy: true
teleport__proxy_public_addr: "toto.tp.com"
teleport__proxy_acme: false
teleport__proxy_acme_email: "[email protected]"
teleport__auth: true
teleport__auth_cluster_name: "toto.tp.com"
teleport__ssh: true
teleport__ssh_labels:
tenant: toto.com
Registro de Cambios
1.9.1
Agregar soporte para PAM.
1.9.0
Corregir problema con package UnHold. Cambiar la versión predeterminada a 10. Agregar pruebas molecule
.
1.8.2
Soporte para VyOS. Permitir sobrescribir ansible_distribution
en la URL del repositorio APT.
1.8.1
Agregar etiqueta de Ansible config
.
1.8.0
Hacer que el nombre de nodo sea opcional (Teleport utilizará el nombre del host por defecto).
1.7.1
Corregir mensaje de error cuando el objetivo no es similar a debian. Usar un nuevo método de verificación de firma de paquete cuando sea aplicable, y limpiar la gestión de repositorios.
1.7.0
Agregar soporte para configuración de estilo antiguo U2F (no webauthn).
1.6.1
Corregir configuración duplicada de diag.
1.6.0
Agregar soporte para el endpoint HTTP diag.
1.5.2
Corregir error de linting en YAML.
1.5.1
Cambio estético en la plantilla teleport.yaml
para evitar diferencias innecesarias.
1.5.0
Soporte para servicio de aplicación.
1.4.0
Soporte para certificados LE generados fuera de teleport (ACME deshabilitado).
1.3.1
Corregir falta de barra inclinada al final en el repositorio legado de debian.
1.3.0
Agregar soporte para actualizaciones de teleport usando teleport (el manejador esperará a que la conexión esté activa). Forzar la eliminación del repositorio APT antiguo. Actualizar automáticamente el paquete de teleport si hay una versión más nueva disponible.
1.2.0
Agregar soporte para dirección de enlace de proxy.
1.1.0
Revertir al repositorio debian de teleport con versiones principales.
1.0.0
Usar el repositorio debian de Enix por defecto.
0.9.2
Actualizar la versión del binario compatible a 8.3.8.
0.9.1
Agregar compatibilidad con binario de centos 6 (debian 8 jessie).
0.9.0
Versión inicial.
Licencia
GPLv2
Información del Autor
Laurent Corbes laurent.corbes@enix.fr - http://www.enix.io
ansible-galaxy install enix.teleport