Einer der Vorteile der Anmeldung bei einem Server mit Portweiterleitung besteht in der Erleichterung der Verwendung von Jupyter Notebook. Dieser Link bietet eine hervorragende Beschreibung der Vorgehensweise. Hier möchte ich eine Zusammenfassung und Erweiterung machen, auf die sich alle beziehen können.
Situation 1. Melden Sie sich von einem lokalen Computer mit dem Namen Host-A (z. B. Ihrem eigenen Laptop) bei einem Remote-Arbeitscomputer mit dem Namen Host-B an.
ssh user@Host-B -L port_A:localhost:port_B
jupyter notebook --NotebookApp.token='' --no-browser --port=port_B
Dann können Sie einen Browser öffnen und Folgendes eingeben: http: // localhost: port_A / , um Ihre Arbeit auf Host-B auszuführen , aber in Host-A sehen.
Situation 2. Melden Sie sich von einem lokalen Computer mit dem Namen Host-A (z. B. Ihrem eigenen Laptop) bei einem Remote-Anmeldecomputer mit dem Namen Host-B und von dort aus mit dem Remote-Arbeitscomputer mit dem Namen Host-C an. Dies ist normalerweise bei den meisten Analyseservern an Universitäten der Fall und kann durch die Verwendung von zwei ssh -L
verbundenen Servern erreicht werden -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
Dann können Sie einen Browser öffnen und Folgendes eingeben: http: // localhost: port_A / , um Ihre Arbeit auf Host-C auszuführen , aber in Host-A sehen.
Situation 3. Melden Sie sich von einem lokalen Computer mit dem Namen Host-A (z. B. Ihrem eigenen Laptop) bei einem Remote-Anmeldecomputer mit dem Namen Host-B an und von dort aus mit dem Remote-Arbeitscomputer mit dem Namen Host-C und schließlich mit dem Remote-Arbeitscomputer Host-. D. D. Dies ist normalerweise nicht der Fall, kann aber irgendwann passieren. Es ist eine Erweiterung von Situation 2 und dieselbe Logik kann auf mehrere Maschinen angewendet werden.
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
Dann können Sie einen Browser öffnen und Folgendes eingeben: http: // localhost: port_A / , um Ihre Arbeit auf Host-D auszuführen , aber in Host-A sehen.
Beachten Sie, dass port_A, port_B, port_C, port_D Zufallszahlen sein können, mit Ausnahme der hier aufgeführten allgemeinen Portnummern . In Situation 1 können port_A und port_B identisch sein, um die Prozedur zu vereinfachen.