115 lines
3.8 KiB
Markdown
115 lines
3.8 KiB
Markdown
## Accès aux machines virtuelles de Chalec
|
||
|
||
### 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/comchalec/.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.
|
||
|
||
A noter également : les administrateurs d'infrastructure peuvent également accéder aux machines Chalec (si leur clé privée est présente dans lesdites machines) via l'utilisateur cominfra.
|
||
|
||
**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 comchalec
|
||
Port 222
|
||
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 comchalec
|
||
Port 223
|
||
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
|
||
|
||
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` pour accéder à la machine virtuelle
|
||
|
||
### Procédure de connexion sans config
|
||
|
||
Le nouvel admin peut utiliser au choix :
|
||
|
||
- `ssh -J comchalec@mother.libre-en-communs.org:222 admin666@NOM_DE_VM:22`
|
||
|
||
- `ssh -J comchalec@aunt.libre-en-communs.org:223 admin666@NOM_DE_VM:22`
|
||
|
||
|
||
### Configuration par machine avec config dans ~/.ssh/config
|
||
|
||
Cette configuration prend en compte une authentification avec deux fichiers clef dédiés pour le chalec, mais le nombre de clef peut être modulé à volonté. (Bien sur votre administrateur favori ne sera pas content de devoir déployer des clefs par milliers)
|
||
|
||
Cette configuration permet également d'avoir de l'autocompletion dans le terminal et de se retrouver avec des commandes de connexion de ce type :
|
||
```bash
|
||
ssh chalec-service-un
|
||
|
||
```
|
||
Sachant que chalec-service-un est un choix a la discretion de l'utilisateur, tant que c'est cohérent avec le fichiers de configuration.
|
||
|
||
|
||
# Définition du proxy principal
|
||
host mother.libre-en-communs.org
|
||
User comchalec
|
||
Port 222
|
||
SendEnv GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL
|
||
# Fichiers de clef
|
||
IdentityFile ~/.ssh/chalec-ed25519
|
||
|
||
# Définition du proxy secondaire
|
||
host aunt.libre-en-communs.org
|
||
User comchalec
|
||
Port 223
|
||
SendEnv GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL
|
||
# Fichiers de clef
|
||
IdentityFile ~/.ssh/chalec-ed25519
|
||
|
||
# Définition du service un sur une première machine
|
||
host chalec-service-un
|
||
User admin666
|
||
Port 22
|
||
ProxyJump mother.libre-en-communs.org
|
||
SendEnv GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL
|
||
# Nom de domaine ou ip de la machine a joindre
|
||
HostName serviceun.chalec.org
|
||
# Fichiers de clef spécifique
|
||
IdentityFile ~/.ssh/chalec-serviceun-ed25519
|
||
|
||
# Définition du service deux sur une seconde machine
|
||
host chalec-service-deux
|
||
User admin666
|
||
Port 22
|
||
ProxyJump mother.libre-en-communs.org
|
||
SendEnv GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL
|
||
# Nom de domaine ou ip de la machine a joindre
|
||
HostName servicedeux.chalec.org
|
||
# Fichiers de clef spécifique
|
||
IdentityFile ~/.ssh/chalec-servicedeux-ed25519
|
||
|
||
|
||
|
||
|
||
|