Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédenteDernière révisionLes deux révisions suivantes | ||
connexion_ssh_a_travers_de_multiples_hotes_ssh_proxyjump [2023/01/01 00:44] – [Remarques] ps | connexion_ssh_a_travers_de_multiples_hotes_ssh_proxyjump [2023/10/12 00:02] – [Avant-propos] ps | ||
---|---|---|---|
Ligne 5: | Ligne 5: | ||
L' | L' | ||
- | < | + | Ici un client SSH **cli** souhaite se connecter à la machine **final-srv** en passant par deux machines **j1** et **j2** |
- | | + | |
- | | cli |-----| j1 |-----| j2 |-----| final-srv | | + | {{:ssh-jump.png? |
- | ------- | + | |
- | </code> | + | **Exemple** : schéma précédant au format **.png** obtenu à partir du fichier **.dot** pour **grafviz/ |
+ | <file dot ssh-jump.dot> | ||
+ | graph G { | ||
+ | rankdir = " | ||
+ | node [shape=box3d, | ||
+ | "cli" | ||
+ | } | ||
+ | </file> | ||
On utilisera les clés publiques SSH ainsi que la clause **ProxyJump** SSH | On utilisera les clés publiques SSH ainsi que la clause **ProxyJump** SSH | ||
Ligne 39: | Ligne 46: | ||
</ | </ | ||
- | - On doit d' | + | - On doit d' |
<code bash> | <code bash> | ||
user@cli:~$ ssh-keygen | user@cli:~$ ssh-keygen | ||
Ligne 52: | Ligne 59: | ||
</ | </ | ||
- | - enfin, on répète la manipulation la même clé publique sur la machine **final-srv.local** dans le fichier **~/ | + | - enfin, on répète la manipulation |
<code bash> | <code bash> | ||
user@cli:~$ ssh-copy-id final-srv | user@cli:~$ ssh-copy-id final-srv | ||
Ligne 61: | Ligne 68: | ||
* on peut également coller au bout du fichier **~/ | * on peut également coller au bout du fichier **~/ | ||
* l' | * l' | ||
+ | * on peut par ailleurs utiliser les options habituelles de **ssh_config** (**port** , ...) pour adapter aux conditions locales. | ||
==== Test ==== | ==== Test ==== | ||
Ligne 70: | Ligne 78: | ||
- La connexion à **final-srv** déclenche une connexion à **j2** via **ProxyJump** | - La connexion à **final-srv** déclenche une connexion à **j2** via **ProxyJump** | ||
- la connexion à **j2** déclenche une connexion à **j1** via **ProxyJump** | - la connexion à **j2** déclenche une connexion à **j1** via **ProxyJump** | ||
- | - la connexion | + | - la connexion |
==== Remarques ==== | ==== Remarques ==== | ||
Ligne 77: | Ligne 85: | ||
L' | L' | ||
- | En conséquence, | + | En conséquence, |
<code bash> | <code bash> | ||
user@cli: | user@cli: | ||
Ligne 89: | Ligne 97: | ||
Il est problématique en terme de sécurité de pouvoir ouvrir une session ssh sur les serveurs intermédiaires **j1** et **j2**. | Il est problématique en terme de sécurité de pouvoir ouvrir une session ssh sur les serveurs intermédiaires **j1** et **j2**. | ||
- | Pour éliminer le problème, on peut changer le shell de l' | + | Pour éliminer le problème, on peut changer le shell de l' |
<code bash> | <code bash> | ||
root@j1:~# chsh -s /bin/false monuser | root@j1:~# chsh -s /bin/false monuser |