L'un des avantages de la connexion à un serveur avec la redirection de port est de faciliter l'utilisation de Jupyter Notebook. Ce lien fournit une excellente description de la façon de procéder. Ici, je voudrais faire un résumé et une extension pour que vous puissiez tous vous référer.
Situation 1. Connectez-vous à partir d'une machine locale nommée Host-A (par exemple votre propre ordinateur portable) à une machine de travail distante nommée Host-B.
ssh user@Host-B -L port_A:localhost:port_B
jupyter notebook --NotebookApp.token='' --no-browser --port=port_B
Ensuite, vous pouvez ouvrir un navigateur et entrer: http: // localhost: port_A / pour faire votre travail sur l'hôte-B mais le voir dans l'hôte-A.
Situation 2. Connectez-vous à partir d'une machine locale nommée Host-A (par exemple votre propre ordinateur portable) à une machine de connexion distante nommée Host-B et de là, connectez-vous à la machine de travail distante nommée Host-C. C'est généralement le cas pour la plupart des serveurs analytiques au sein des universités et peut être réalisé en utilisant deux ssh -L
connectés avec -t
.
ssh -L port_A:localhost:port_B user@Host-B -t ssh -L port_B:localhost:port_C user@Host-C
jupyter notebook --NotebookApp.token='' --no-browser --port=port_C
Ensuite, vous pouvez ouvrir un navigateur et entrer: http: // localhost: port_A / pour faire votre travail sur l'hôte-C mais le voir dans l'hôte-A.
Situation 3. Connectez-vous à partir d'une machine locale nommée Host-A (par exemple votre propre ordinateur portable) à une machine de connexion distante nommée Host-B et de là connectez-vous à la machine de travail distante nommée Host-C et enfin connectez-vous à la machine de travail distante Host- RÉ. Ce n'est généralement pas le cas, mais cela peut arriver parfois. C'est une extension de la situation 2 et la même logique peut être appliquée sur plus de machines.
ssh -L port_A:localhost:port_B user@Host-B -t ssh -L port_B:localhost:port_C user@Host-C -t ssh -L port_C:localhost:port_D user@Host-D
jupyter notebook --NotebookApp.token='' --no-browser --port=port_D
Ensuite, vous pouvez ouvrir un navigateur et entrer: http: // localhost: port_A / pour faire votre travail sur l'hôte-D mais le voir dans l'hôte-A.
Notez que port_A, port_B, port_C, port_D peuvent être des nombres aléatoires à l'exception des numéros de port communs listés ici . Dans la situation 1, port_A et port_B peuvent être identiques pour simplifier la procédure.