2.7 KiB
Accès aux machines virtuelles de l'infrastructure
Via SSH
Configuration SSH serveur
En règle générale, l'accès aux machines virtuelles ne se fait pas directement. Il faut passer par une machine physique.
Pour qu'une nouvelle personne puisse accéder à des machines, il faut :
-
Sur la machine physique hypervisant la machine, ajouter la clé publique (ssh) de la nouvelle personne dans
/home/cominfra/.ssh/authorized_keys
-
Sur chaque machine virtuelle concernée, ajouter la clé publique (ssh) de la nouvelle personne dans
/home/admin666/.ssh/authorized_keys
Notes :
- en IPV6, bien qu'en règle générale la connexion directe soit désactivée, elle peut être autorisée au cas par cas.
- penser à remplacer
machine_physique
par un nom de machine physique existante de l'infrastructure de Libre en Communs - penser à remplacer le
user
dansmachine_physique-proxy.libre-en-communs.org
parcomchalec
Configuration SSH client (dans ~/.ssh/config
)
Une personne souhaitant se connecter à une machine virtuelle doit configurer son
client SSH, généralement dans le fichier ~/.ssh/config
.
La configuration met en jeu un proxy, obligatoire pour IPv4 (en raison du partage d'adresse IP et du port unique) et servant de sécurité supplémentaire avec IPv6. Le proxy peut être n'importe quelle machine physique de l'infrastructure, le mieux étant d'utiliser la machine qui hypervise la machine virtuelle visée, mais ce n'est pas nécessaire. Une machine d'un site différent peut aussi être utilisée (mais cela ajoute de la latence).
La configuration suivante permet l'accès à toute machine virtuelle des domaines
a-lec.org
et chalec.org
:
host <machine_physique>-proxy.libre-en-communs.org
Hostname <machine_physique>.libre-en-communs.org
User cominfra
Port <port>
SendEnv GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL
host *.a-lec.org
User admin666
Port 22
ProxyJump <machine_physique>-proxy.libre-en-communs.org
SendEnv GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL
host *.chalec.org
User admin666
Port 22
ProxyJump <machine_physique>-proxy.libre-en-communs.org
SendEnv GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL
Pour fixer les variables Git directement dans la conf, il est possibe d'ajouter
un SetEnv
avant SendEnv
:
SetEnv GIT_AUTHOR_NAME="<nom>" GIT_AUTHOR_EMAIL="<courriel>"
Procédure de connexion avec config dans ~/.ssh/config
Il suffit d'utiliser ssh <nom de vm>
pour accéder à la machine virtuelle.
Procédure de connexion sans config
Il est également possible d'utiliser :
ssh -i 'CLE_PRIV' -J cominfra@machine_physique.libre-en-communs.org:<port> admin666@<nom de vm> -p 22