Ma réponse est en fait la même que toutes les autres réponses ici, mais, je voulais clarifier l'utilité de ~/.ssh/config
et ProxyJump.
Imaginons que je doive atteindre une destination en trois sauts et que, pour chaque saut, j'aie besoin d'un nom d'utilisateur, d'un hôte, d'un port et d'une identité spécifiques. En raison des critères d'identité, ceci ne peut être fait qu'avec la fonction ~/.ssh/config
fichier de configuration :
Host hop1
User user1
HostName host1
Port 22
IdentityFile ~/.ssh/pem/identity1.pem
Host hop2
User user2
HostName host2
Port 22
IdentityFile ~/.ssh/pem/identity2.pem
ProxyJump hop1
Host hop3
User user3
HostName host3
Port 22
IdentityFile ~/.ssh/pem/identity3.pem
ProxyJump hop2
Depuis votre ordinateur, vous pouvez tester chaque saut individuellement, c'est-à-dire
[yourpc] $ ssh hop1 # will go from your PC to host1 in a single step
[host1] $ exit
[yourpc] $ ssh hop2 # will go from your PC to host2 via host1 (i.e. two steps)
[host2] $ exit
[yourpc] $ ssh hop3 # will go from your PC to host3 via host1 and host2 (i.e. three steps)
[host3] $ exit
[yourpc] $
Une autre chose cool à propos du ~/.ssh/config
est que cela permettra également sftp
transferts de fichiers via n'importe quelle série de sauts, par ex.
[yourpc] $ sftp hop1 # for file transfers between your PC and host1
Connected to hop1.
sftp> quit
[yourpc] $ sftp hop2 # for file transfers between your PC and host2
Connected to hop2.
sftp> quit
[yourpc] $ sftp hop3 # for file transfers between your PC and host3
Connected to hop3.
sftp> quit
2 votes
Pour quoi l'avez-vous utilisé ? Je veux l'utiliser pour la procuration de chaussettes. Cela fonctionnera-t-il ?
2 votes
Oui, vous devriez pouvoir utiliser la connexion tunnelée comme un proxy SOCKS, à moins que
host2
refuse le transfert0 votes
J'ai pensé à créer une enveloppe sur SSH qui permettrait de mettre en place ce système en utilisant plusieurs fois ProxyCommand.
0 votes
@prongs Avez-vous réussi à l'utiliser pour le proxy SOCKS (il y a tant d'années) ?