documentation/procédures/acces_vm.md

77 lines
2.4 KiB
Markdown

## Accès aux machines virtuelles de l'infrastructure
### Configuration SSH côté infra
En règle générale, l'accès aux machines virtuelles ne se fait pas directement. Il faut passer par `mother` ou `aunt`.
Pour qu'un nouvel administrateur puisse accéder à des machines, il faut :
- Sur `mother` ou `aunt`, ajouter la clé publique (ssh) du nouvel admin dans `/home/cominfra/.ssh/authorized_keys`
- Sur chaque machine virtuelle concernée, ajouter la clé publique (ssh) du nouvel admin dans `/home/admin666/.ssh/authorized_keys`
Note : en IPV6, la connexion directe peut être possible. A voir au cas par cas.
**Attention** : les noms de machines virtuelles de Chalec contiennent ".chalec.org" en suffixe.
### Configuration SSH client
Soit en passant par `mother`
host mother.libre-en-communs.org
User cominfra
Port 222
SendEnv GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL
match host *.a-lec.org
User admin666
Hostname %h
Port 22
ProxyJump mother.libre-en-communs.org
SendEnv GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL
host *.chalec.org
User admin666
Port 22
ProxyJump mother.libre-en-communs.org
SendEnv GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL
Ou bien en passant par `aunt`
host aunt.libre-en-communs.org
User cominfra
Port 223
SendEnv GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL
match host *.a-lec.org
User admin666
Hostname %h
Port 22
ProxyJump aunt.libre-en-communs.org
SendEnv GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL
host *.chalec.org
User admin666
Port 22
ProxyJump aunt.libre-en-communs.org
SendEnv GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL
Pour fixer les variables Git directement dans la conf, ajouter un `SetEnv` avant `SendEnv` :
```
SetEnv GIT_AUTHOR_NAME="Moi" GIT_AUTHOR_EMAIL="moncourriel"
```
Note : avoir les deux configurations peut être utile en cas de panne de l'un ou l'autre des serveurs.
### Procédure de connexion avec config dans ~/.ssh/config
Le nouvel admin n'a plus qu'à utiliser `ssh NOM_DE_VM.a-lec.org` pour accéder à la machine virtuelle
### Procédure de connexion sans config
Le nouvel admin peut utiliser au choix :
- `ssh -i 'CLE_PRIV' -J cominfra@mother.libre-en-communs.org:222 admin666@NOM_DE_VM.a-lec.org -p 22`
- `ssh -i 'CLE_PRIV' -J cominfra@aunt.libre-en-communs.org:223 admin666@NOM_DE_VM.a-lec.org -p 22`