yurihs.autossh
Rôle Ansible : autossh
- Installe autossh et les services systemd pour le faire fonctionner et maintenir les tunnels SSH ouverts.
- Scanne les clés d'hôtes pour éviter les invites de vérification des clés d'hôtes.
Dérivé de memiah/ansible-role-autossh pour changer les systèmes cibles de RedHat à Debian.
Nous supposons que l'utilisateur SSH existe et a les permissions nécessaires pour accéder au serveur distant. Une clé SSH correspondante doit également être présente et disponible sur le serveur local.
Variables de rôle (valeurs par défaut)
autossh_connections:
- id: "exemple" # Identifiant unique de connexion (caractères : "a-z,0-9,-").
user: "" # Nom d'utilisateur utilisé pour se connecter au serveur distant.
server: "" # IP / nom d'hôte du serveur distant.
server_key_type: "" # Type de clé du serveur distant, par défaut autossh_default_server_key_type. (Facultatif)
local_port: "" # Port local à transférer.
dest_server: "" # IP / nom d'hôte à utiliser sur le serveur distant, par défaut autossh_default_dest_server. (Facultatif)
dest_port: "" # Port sur le serveur distant pour se connecter.
identity_file: "" # Chemin vers la clé privée SSH, par défaut autossh_default_ssh_key_path. (Facultatif)
Ajoutez un ensemble de propriétés de connexion SSH par connexion. Plusieurs connexions peuvent être listées ici.
autossh_path: "/usr/bin/autossh"
Chemin vers autossh.
autossh_ssh_dir: "/root/.ssh"
Répertoire pour stocker la configuration SSH.
autossh_systemd_dir: "/etc/systemd/system/"
Chemin vers le répertoire système systemd.
autossh_known_hosts_file: "{{ autossh_ssh_dir }}/known_hosts"
Chemin vers le fichier known_hosts.
autossh_default_server_key_type: "ecdsa"
Type de clé par défaut du serveur distant. Remplacez cette valeur pour une connexion unique en utilisant l'option server_key_type
dans la liste autossh_connections
.
autossh_default_dest_server: "127.0.0.1"
IP / nom d'hôte par défaut à utiliser sur le serveur distant, qui sera très probablement localhost / 127.0.0.1. Remplacez cette valeur pour une connexion unique en utilisant l'option dest_server
dans la liste autossh_connections
.
autossh_default_identity_file: "/root/.ssh/id_rsa"
Chemin vers le fichier à partir duquel l'identité (clé privée) pour l'authentification par clé publique est lue. La valeur par défaut est /root/.ssh/id_rsa
pour la version de protocole 2. Remplacez cette valeur pour une connexion unique en utilisant l'option identity_file
dans la liste autossh_connections
.
Exemple
Transférez le port local 33061
au port 3306
sur db.example.com
, en se connectant via SSH en tant que [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
Cela créera un nouveau service nommé autossh-backup.service
, qui peut être géré par systemctl :
systemctl status autossh-backup.service
systemctl restart autossh-backup.service
...
Auteurs
Ce rôle a été créé en 2016 par Memiah Limited.
Adaptation pour Debian en 2019 par yurihs.