yurihs.autossh
Ansible Rolle: autossh
- Installiert autossh und systemd-Dienste, um SSH-Tunnel offen zu halten.
- Scannt nach Host-Schlüsseln, um Eingaben zur Host-Schlüsselprüfung zu vermeiden.
Fork von memiah/ansible-role-autossh, um die Zielsysteme auf Debian anstelle von RedHat zu ändern.
Wir gehen davon aus, dass der SSH-Benutzer existiert und die richtigen Berechtigungen hat, um auf den Remote-Server zuzugreifen. Ein entsprechender SSH-Schlüssel muss ebenfalls auf dem lokalen Server vorhanden und verfügbar sein.
Rollenvariablen (Standardwerte)
autossh_connections:
- id: "beispiel" # Einfacher eindeutiger Verbindungsbezeichner (Zeichen: "a-z,0-9,-").
user: "" # Benutzername für die Verbindung zum Remote-Server.
server: "" # IP / Hostname des Remote-Servers.
server_key_type: "" # Schlüsselt des Remote-Servers, standardmäßig auf autossh_default_server_key_type. (Optional)
local_port: "" # Lokaler Port zum Weiterleiten.
dest_server: "" # IP / Hostname, die auf dem Remote-Server verwendet werden soll, standardmäßig auf autossh_default_dest_server. (Optional)
dest_port: "" # Port auf dem Remote-Server, zu dem verbunden werden soll.
identity_file: "" # Pfad zur SSH-Privatdatei, standardmäßig auf autossh_default_ssh_key_path. (Optional)
Fügen Sie eine Reihe von SSH-Verbindungseigenschaften pro Verbindung hinzu. Mehrere Verbindungen können hier aufgelistet werden.
autossh_path: "/usr/bin/autossh"
Pfad zu autossh.
autossh_ssh_dir: "/root/.ssh"
Verzeichnis zur Speicherung der SSH-Konfiguration.
autossh_systemd_dir: "/etc/systemd/system/"
Pfad zum systemd-Systemverzeichnis.
autossh_known_hosts_file: "{{ autossh_ssh_dir }}/known_hosts"
Pfad zur Datei mit bekannten Hosts.
autossh_default_server_key_type: "ecdsa"
Standard-Schlüsseltyp des Remote-Servers. Überschreiben Sie diesen Wert für eine einzelne Verbindung mithilfe der Option server_key_type
in der Liste autossh_connections
.
autossh_default_dest_server: "127.0.0.1"
Standard-IP / Hostname, die auf dem Remote-Server verwendet werden soll, dies wird höchstwahrscheinlich localhost / 127.0.0.1 sein. Überschreiben Sie diesen Wert für eine einzelne Verbindung mithilfe der Option dest_server
in der Liste autossh_connections
.
autossh_default_identity_file: "/root/.ssh/id_rsa"
Pfad zur Datei, aus der die Identität (Private Key) für die Authentifizierung per Public Key gelesen wird. Der Standardwert ist /root/.ssh/id_rsa
für Protokollversion 2. Überschreiben Sie diesen Wert für eine einzelne Verbindung mithilfe der Option identity_file
in der Liste autossh_connections
.
Beispiel
Leitet den lokalen Port 33061
auf den Port 3306
auf db.example.com
weiter und verbindet sich über SSH als [email protected]
.
- hosts: backup
vars:
autossh_connections:
- id: mysql
user: backup
server: db.example.com
local_port: '33061'
dest_port: '3306'
roles:
- role: yurihs.autossh
become: true
Dies erstellt einen neuen Dienst namens autossh-backup.service
, der mit systemctl verwaltet werden kann:
systemctl status autossh-backup.service
systemctl restart autossh-backup.service
...
Autoren
Diese Rolle wurde 2016 von Memiah Limited erstellt.
Die Debian-Anpassung erfolgte 2019 durch yurihs.