jaredzieche.sshuttle

Rolle: sshuttle

Installiert sshuttle als Systemdienst

Ansible Rolle

Voraussetzungen

SSH-Verbindung zu einem entfernten Host, wo der Tunnel eingerichtet wird Linux-Host

Variablen der Rolle

  • sshuttle_user: Der Benutzer, unter dem der Dienst ausgeführt wird
  • sshuttle_group: Die Gruppe, unter der der Dienst ausgeführt wird
  • sshuttle_package: Name des zu installierenden sshuttle-Pakets
  • sshuttle_hosts: Ein Wörterbuch von entfernten Servern und deren zugeordneten Subnetzen. Dies wird in JSON für die Konfigurationsdatei des Dienstes umgewandelt
    sshuttle_hosts:
      "{{ remote_hostname }}":
        - 10.0.0.0/24
        - 172.16.0.0/24
        - 192.168.0.0/24
    
  • sshuttle_options: Optionen aus der Man-Seite, um die sshuttle-Verbindungen in shuttle.py zu beschreiben.
  • sshuttle_args: Optionen aus der Man-Seite, um zusätzliche Argumente in shuttle.py zu beschreiben.
  • ssh_cmd_args: Optionen aus der Man-Seite, um den SSH-Befehl in shuttle.py zu beschreiben.
  • remote_auth: wahr/falsch, wenn wahr, wird die Rolle versuchen, den Benutzer für den entfernten Tunnel-Host zu autorisieren. Standard ist falsch.
  • remote_ip: IP-Adresse des entfernten Hosts, über den sshuttle eine Verbindung herstellen wird.
  • remote_user: Benutzername, der zur Autorisierung beim remote_host verwendet werden kann.
  • remote_hostname: Name für den Eintrag des entfernten Hosts in Ihrer .ssh/config.

Beispiel-Playbooks

Führen Sie es aus, ohne eine SSH-Konfigurationsdatei zu erstellen:

- name: Converge
  hosts: all
  vars:
    remote_hostname: "remote-host"
    remote_auth: false
  tasks:
    - name: "Inklusive ansible-role-sshuttle"
      include_role:
        name: "ansible-role-sshuttle"

Führen Sie es aus und erstellen Sie die Remote-Authentifizierungseinrichtung (Erstellen einer .ssh/config und Hinzufügen eines autorisierten Schlüssels zum entfernten Host). Ansible wird add_host als Gruppe remote ausführen:

- name: Converge
  hosts: all
  vars:
    remote_ip: "10.0.0.1"
    remote_user: "Benutzer, der sich mit dem entfernten System authentifizieren kann"
    remote_password: "{{ remote_auth_password }}"
    remote_hostname: "remote-host"
    remote_auth: true
  tasks:
    - name: "Inklusive ansible-role-sshuttle"
      include_role:
        name: "ansible-role-sshuttle"

- name: Remote_auth
  hosts: remote
  vars:
    remote_ip: "10.0.0.1"
    remote_user: "Benutzer, der sich mit dem entfernten System authentifizieren kann"
    remote_password: "{{ remote_auth_password }}"
    remote_hostname: "remote-host"
    remote_auth: true
  tasks:
    - name: "Inklusive ansible-role-sshuttle"
      include_role:
        name: "ansible-role-sshuttle"
        tasks_from: remote_auth

Lizenz

MIT

Autorinformationen

Jared Zieche

Über das Projekt

Install sshuttle as a service

Installieren
ansible-galaxy install jaredzieche.sshuttle
GitHub Repository
Lizenz
mit
Downloads
383
Besitzer