enix.teleport

enix.teleport

=============

Eine Rolle zur Bereitstellung und Konfiguration von teleport und Erweiterungen auf Unix-Hosts mit Ansible.

[!WARNING] Diese Ansible-Rolle wird nicht mehr gewartet und das Projekt ist jetzt nur noch lesbar. Vielen Dank.

Anforderungen

Unterstützte Zielsysteme:

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

Rollenvariablen

Diese Rolle enthält bereits fast alle verfügbaren Standardwerte. Du kannst jeden einzelnen in deinen Hosts-/Gruppenvariablen, in deinem Inventar oder in deinem Play überschreiben. Siehe die kommentierten Standards in defaults/main.yml zur Hilfe bei der Konfiguration. Alle bereitgestellten Variablen beginnen mit teleport__.

  • teleport__version: 10 - Hauptversion / Branch der zu installierenden Binärdatei, standardmäßig Installationsrepo-Version 8. Verfügbar sind jetzt: 8, 9, 10, 11.
  • teleport__agent: false - Konfiguriere und aktiviere die Teleport-Agenten-Software.
  • teleport__bind_addr: 0.0.0.0 - Bind-Adresse, die für die Standardkonfiguration aller anderen Bind-Adressen verwendet wird.
  • teleport__nodename - Name, den der Teleport-Agent an seinen verbundenen Proxy meldet. Wenn undefiniert, wird kein Nodename konfiguriert und Teleport verwendet den Hostnamen des Geräts.
  • teleport__diag: false - Aktiviere den HTTP-Überwachungsendpunkt von Teleport.
  • teleport__diag_addr: "127.0.0.1" - Bind-Adresse für den HTTP-Überwachungsendpunkt.
  • teleport__diag_port: 3000 - Port, der für den HTTP-Überwachungsendpunkt verwendet wird.
  • teleport__node: false - Konfiguriere und aktiviere die Teleport-Knotenrolle.
  • teleport__node_token: "" - Token, das verwendet wird, um sich mit dem Proxy zu verbinden.
  • teleport__node_server: "" - URL des Proxy-Servers.
  • teleport__proxy: false - Aktiviere den Proxy-Modus in Teleport.
  • teleport__proxy_public_addr: "" - Öffentliche Adresse, die der Proxy bereitstellt.
  • teleport__proxy_acme: false - Aktiviere das ACME-Protokoll für das öffentliche Zertifikat. Wenn deaktiviert, sucht Teleport nach dem Zertifikat in /etc/letsencrypt/live/{{ teleport__proxy_public_addr }}
  • teleport__proxy_acme_email: "" - E-Mail für die ACME-Anfrage.
  • teleport__auth: false - Aktiviere die Teleport-Auth-Rolle.
  • teleport__auth_cluster_name: "" - Name des Teleport-Auth-Clusterr.
  • teleport__auth_u2f: false - Aktiviere U2F (ältere Nicht-Webauthn-Konfiguration).
  • teleport__auth_addr: {{ teleport__bind_addr }} - Bind-Adresse für den Auth-Teleport-Service.
  • teleport__auth_port: 3025 - Port, der für den Auth-Teleport-Service verwendet wird.
  • teleport__ssh_addr: {{ teleport__bind_addr }} - Bind-Adresse für den SSH-Teleport-Service.
  • teleport__ssh_port: 3022 - Port, der für den SSH-Teleport-Service verwendet wird.
  • teleport__ssh: false - Aktiviere das SSH-Modul von Teleport.
  • teleport__ssh_labels: '' - Füge dem SSH-Modul Labels hinzu (im YAML-Format).
  • teleport__ssh_pam_enabled: true - PAM aktivieren.
  • teleport__ssh_pam_service: 'sshd' - Name des PAM-Dienstes.
  • teleport__app: false - Aktiviere das App-Modul von Teleport.
  • teleport_applications: [] - Liste der Anwendungen, definiert als ein Dictionary mit den folgenden Schlüsseln:
    • name - Name der Anwendung.
    • uri - URI für den Reverse-Proxy.
    • skip_verify: false - Ob die Zertifikatüberprüfung der Ziel-URI übersprungen werden soll oder nicht.
  • teleport__web_addr: {{ teleport__bind_addr }} - Bind-Adresse für den Web-Teleport-Service.
  • teleport__web_port: 443 - Port, der für den Web-Teleport-Service verwendet wird.
  • teleport__tunnel_addr: {{ teleport__bind_addr }} - Bind-Adresse für den Tunnel-Service.
  • teleport__tunnel_port: 3024 - Port, der für den Tunnel-Teleport-Service verwendet wird.
  • teleport__binary_compat: false - Wenn wahr, wird eine Binärversion neben dem Paket mit mehr glibc-Kompatibilität bereitgestellt. (Automatisch für Debian-Versionen vor Buster (10) erledigt).
  • teleport__install_repo: true - Auf false setzen, wenn du die Repo-Installation verhindern möchtest (nützlich für isolierte Umgebungen - manuell installieren und dann diese Rolle verwenden, um alles zu konfigurieren).

Abhängigkeiten

  • Keine

Verwendung

Benutze Ansible Galaxy requirements.yml

# teleport von enix
# private Rolle
- src: git+ssh://[email protected]/ansible/ansible-teleport.git
  name: enix.teleport

Und füge es zu deinen Play-Rollen hinzu:

# Knotenbeispiel
- 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
# Proxybeispiel
- 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

Änderungsprotokoll

1.9.1

Unterstützung für PAM hinzugefügt.

1.9.0

Problem mit Paket UnHold behoben.
Standardversion auf 10 geändert.
molecule-Tests hinzugefügt.

1.8.2

Unterstützung für VyOS.
Erlaube das Überschreiben von ansible_distribution in der APT-Repository-URL.

1.8.1

Füge config Ansible-Tag hinzu.

1.8.0

Mache Nodename optional (Teleport wird den Hostnamen verwenden).

1.7.1

Fehlermeldung behoben, wenn das Ziel nicht debianähnlich ist.
Verwende neue Paket-Signaturprüfmethode, wenn anwendbar, und bereinige das Repositories-Management.

1.7.0

Unterstützung für U2F alte Konfiguration (nicht-Webauthn) hinzugefügt.

1.6.1

Doppelte Diag-Konfiguration behoben.

1.6.0

Unterstützung für Diag-HTTP-Endpunkt hinzugefügt.

1.5.2

Fehler bei der YAML-Formatierung behoben.

1.5.1

Kosmetische Änderung in der teleport.yaml-Vorlage zur Vermeidung unnötiger Unterschiede.

1.5.0

Unterstützung für App-Dienste hinzugefügt.

1.4.0

Unterstützung für LE-Zertifikate, die außerhalb von Teleport generiert wurden (ACME deaktiviert).

1.3.1

Fehlender abschließender Schrägstrich im Legacy-Debian-Repository behoben.

1.3.0

Unterstütze die Teleport-Aktualisierung mit Teleport (Handler wartet auf eine aktive Verbindung).
Zwinge die Entfernung des Legacy-Apt-Repositories.
Aktualisiere das Teleport-Paket automatisch, wenn eine neuere Version verfügbar ist.

1.2.0

Unterstützung für Proxy-Bindadresse hinzugefügt.

1.1.0

Wechsle zurück zum Teleport-Debian-Repository mit Hauptversionen.

1.0.0

Verwende standardmäßig das Enix-Debian-Repository.

0.9.2

Kompatibilitätsbinärdatei auf Version 8.3.8 aktualisiert.

0.9.1

Füge CentOS 6 Binärkompatibilität hinzu (Debian 8 Jessie).

0.9.0

Erste Version.

Lizenz

GPLv2

Autoreninformation

Laurent Corbes laurent.corbes@enix.fr - http://www.enix.io

Über das Projekt

Ansible role to deploy teleport software

Installieren
ansible-galaxy install enix.teleport
GitHub Repository
Lizenz
Unknown
Downloads
924
Besitzer
Enix