Starten und verwenden Sie das IPython-Notebook im Netzwerk

Was du machen willst

Ich möchte den ipython Notebook-Server auf einem Computer im Netzwerk starten und über den Browser auf dem lokalen Computer verwenden.

Der lokale Computer ist ein schwaches MacBook Air, daher möchte ich mit einem leistungsstarken Computer im Internet arbeiten. Wenn Sie dies tun können, können Sie auch überall arbeiten.

Ipython Notebook ist jedoch eine interaktive und grafische REPL, sodass Sie jeden Code ausführen können. Dies ist auch eine große Sicherheitslücke, daher möchte ich Maßnahmen ergreifen, die beruhigt werden können.

Lösung

Der Remote-Computer blockiert alle bis auf den SSH-Port mit einer Firewall, und auf das Notebook wird über den SSH-Tunnel zugegriffen.

Es gibt eine Methode namens Passwortschutz, die jedoch nicht übernommen wird.

Spezifische Verbindung / Start

Es wird die Methode auf dem Mac sein (ich denke, es kann unter Windows gleichwertig sein).

Verwenden Sie für Remotecomputer eine Firewall, um andere Verbindungen als ssh zu verhindern.

Ssh zu einer entfernten Maschine. Zu diesem Zeitpunkt wird auch ein "Tunnel" geöffnet. Das ist,

[local-machine]$ ssh -L 8080:127.0.0.1:8888 remotemachine

Verbinden Sie sich als ssh [^ 1]. Zur gleichen Zeit, in der die übliche SSH-Sitzung im Terminal verfügbar ist, wird ein "Tunnel" geöffnet, sodass Sie auf "localhost: 8080" zugreifen können, um über die SSH-Sitzung auf den Remote-Port 8888 zuzugreifen. Beachten Sie, dass 8888 der Standardport für Notebooks ist.

[^ 1]: Angenommen, die Remotemaschine ist bereits in "~ / .ssh / config" definiert, und normalerweise ist "ssh-Remotemaschine" so eingestellt, dass eine SSH-Verbindung möglich ist.

Darüber hinaus

[remote-machine]$ ipython notebook --profile=nbserver --no-browser

Starten Sie den Notebook-Server [^ 2].

[^ 2]: Wenn ich versuche, ein Notizbuch ohne die Option "--no-browser" auf einem Computer mit einer grafischen Benutzeroberfläche zu starten, wird der Browser gestartet und versucht, das Notizbuch zu öffnen.

Greifen Sie nach dem Starten des Servers mit dem Browser auf Ihrem lokalen Computer auf localhost: 8080 zu, um das Notebook zu öffnen. Auf der anderen Seite wird der Zugriff auf * IP-Adresse des Remote-Computers *: 8888 verweigert.

Schwächen dieser Methode

SSH-Verbindung unterbrochen. Sie können verhindern, dass der Notebook-Server ausfällt, indem Sie den Notebook-Server in einer Bildschirm- oder tmux-Sitzung starten. Sie müssen ihn jedoch erneut ssh, um eine Verbindung zum Browser herzustellen. Ist die offizielle Methode (Zertifikat + Passwort) schließlich besser?


Recommended Posts

Starten und verwenden Sie das IPython-Notebook im Netzwerk
Starten Sie den IPython-Notebook-Server
Verwenden Sie AppSync am vorderen und hinteren Ende
Starten Sie das Jupyter Notebook ganz einfach unter AWS und greifen Sie lokal zu
[Windows] [Python3] Installieren Sie Python3 und Jupyter Notebook (ehemals Ipython Notebook) unter Windows
Anzeigen von Zeichenfolgen in IPython Notebook
Verwendung von IPython Notebook
Führen Sie IPython Notebook auf Docker aus
Verwenden von Bokeh mit IPython Notebook
Ich habe versucht, den Ipython-Cluster unter AWS auf das Minimum zu starten
Sakura Verwenden von Python im Internet
Installieren Sie Anaconda auf Ihrem Mac und laden Sie Ihr Jupyter (IPython) -Notebook in die Anaconda Cloud hoch
Verwenden Sie den Metabolic Disassembler in Google Colaboratory
IPython Notebook wird jetzt gerendert und auf GitHub angezeigt!
Verwenden von Apache Spark mit Jupyter Notebook (IPython Notebook)
Geben Sie den Browser an, der mit Jupyter Notebook verwendet werden soll. Besonders Mac. (Und Vivaldi)
Verwenden Sie Jupyter Lab und Jupyter Notebook mit EC2
Installieren und starten Sie k3s unter Manjaro Linux
Verwenden Sie den Grove-Sensor mit Raspberry Pi
Klonen Sie das Github-Repository auf dem Jupyter-Notizbuch
Stellen Sie das in Python unter SQL Server erstellte Vorhersagemodell bereit und verwenden Sie es
Verwenden Sie vim-Tastenkombinationen in Jupyter Notebook, das mit Docker gestartet wurde
Verwendung des IPython-Debuggers (ipdb)
Fügen Sie dem Bild Linien und Text hinzu
Verwenden Sie Python auf Raspberry Pi 3, um die LED zu beleuchten, wenn es dunkel wird!
Installieren Sie matplotlib und zeigen Sie das Diagramm in Jupyter Notebook an
Code-Server-Online-Umgebung (4) Starten Sie den Code-Server auf der EC2-Instanz
Verwenden Sie die neueste Version von PyCharm unter Ubuntu
Suchen und Löschen von speicherhungrigen Variablen auf Jupyter (IPython)
Verwenden Sie Emacs oder Vim-Tastenkombinationen in IPython Notebook
Ich habe das neuronale Netzwerk auf dem eigentlichen FPGA betrieben
Öffnen Sie das auf dem Server gestartete Jupyter-Notizbuch aus der Ferne
Einführung in Spark in EC2 und Verknüpfung von iPython Notebook
Die Geschichte vom Starten des Jupyter-Notizbuchs von python2.x mit Docker (am Samstag und Sonntag zerquetscht)
Ich habe versucht zu verstehen, wie Pandas und multiple Co-Linearität unter Verwendung des Affairs-Datensatzes als Thema verwendet werden.
Bis Sie Anaconda für die Datenanalyse auf Ihrem Mac installieren und die IDE starten
[Python] Ein Notizbuch, das die ipynb-Datei von GitHub ins Japanische übersetzt und herunterlädt.
ipython notebook Installation
IPython Notebook-Empfehlungen
Lesen Sie die CSV-Datei mit dem Jupiter-Notizbuch und schreiben Sie die Grafik übereinander
Führen Sie die Kolben-App auf Cloud 9 und Apache Httpd aus
Geben Sie die Lautstärke unter Linux an und spielen Sie den Sound ab
Visualisieren Sie Netzwerkdaten aus IPython Notebook mit Cytoscape Part 1
Überwachen Sie das Trainingsmodell mit TensorBord auf Jupyter Notebook
EC2-Bereitstellung mit Vagrant + Jupyter (IPython Notebook) auf Docker
Verwendung des Befehls grep und häufiger Samples
So starten Sie Jupyter Notebook sofort vom Terminal aus
Ubuntu 20.04 auf Himbeer-Pi 4 mit OpenCV und mit Python verwenden
Führen Sie einen Befehl auf dem Webserver aus und zeigen Sie das Ergebnis an
Wie man Argparse benutzt und den Unterschied zwischen Optparse
Installieren Sie django auf Python + Anaconda und starten Sie den Server
Verwenden Sie Python, um Windows und Mac zu überwachen und Informationen zu den Apps zu sammeln, an denen Sie arbeiten