Verbindung per SSH
Schlüssel erzeugen, IP freigeben, als ubuntu verbinden. JupyterLab über SSH auf Secure, im Browser auf Community. Tunnel und Fehler.
Jede Secure-Maschine nimmt aus dem Internet genau eines an: SSH auf Port 22, von der Adresse, die Sie angeben, mit dem Schlüssel, den Sie angeben. Community-Sitzungen übernehmen Ihren Schlüssel und brauchen keine IP-Regel.
Die Firewall einer Secure-Maschine lehnt jede andere eingehende Verbindung ab: JupyterLab und andere Weboberflächen öffnen sich über SSH auf Ihrem Computer, wie unten gezeigt.
Schlüssel erzeugen
Verwenden Sie einen Ed25519-Schlüssel:
ssh-keygen -t ed25519 -C "you@laptop"
cat ~/.ssh/id_ed25519.pub
Fügen Sie die einzelne Zeile aus der .pub-Datei ein. Fügen Sie niemals den privaten Schlüssel ein.
Akzeptierte Schlüsseltypen:
| Typ | Beginnt mit |
|---|---|
| Ed25519 | ssh-ed25519 |
| ECDSA P-256 | ecdsa-sha2-nistp256 |
| RSA | ssh-rsa |
IP freigeben
Geben Sie auf Secure die öffentliche IPv4-Adresse des Computers ein, von dem aus Sie sich verbinden. So finden Sie sie:
curl -4 https://ifconfig.me
Regeln:
- Eine einzelne Adresse (
198.51.100.7) oder ein Bereich bis höchstens/24(198.51.100.0/24). - Nur öffentliches IPv4. Private Bereiche (
10.0.0.0/8,192.168.0.0/16, …) und0.0.0.0/0werden abgelehnt. - Die Adresse gilt fest für die gesamte Sitzung.
Ihr Netzwerk wechselt oft die öffentliche Adresse? Geben Sie seinen /24-Bereich ein.
Community-Sitzungen
Die Sitzungsseite liefert den SSH-Befehl zum Einfügen und öffnet JupyterLab mit einem Terminal im Browser. Die Maschine des Anbieters öffnet keinen Port: Verbindungen erreichen Ihre VM über Node Lodge.
Verbinden
Die Sitzungsseite zeigt den Befehl, sobald die Maschine bereit ist:
ssh ubuntu@203.0.113.42
- Benutzer:
ubuntu, mitsudo. - Port: 22.
- Image: Ubuntu 24.04 LTS, NVIDIA-Treiber R570, CUDA 12.8.
Einen bestimmten Schlüssel verwenden:
ssh -i ~/.ssh/id_ed25519 ubuntu@203.0.113.42
JupyterLab öffnen
Jede Secure-Maschine führt JupyterLab aus, bereit, sobald die Sitzung bereit ist. Es lauscht nur auf der Maschine. Die Sitzungsseite zeigt den Befehl, der Ihre Shell öffnet und JupyterLab auf Ihren Computer bringt:
ssh -L 8888:127.0.0.1:8888 ubuntu@203.0.113.42
Solange diese Verbindung offen ist, öffnen Sie http://localhost:8888/ und fügen den Token von der Sitzungsseite auf der Anmeldeseite ein. Der Token gilt für die ganze Sitzung. Notebooks werden in /home/ubuntu gespeichert, und %pip install in einem Notebook installiert Pakete für dessen Kernel.
Port 8888 auf Ihrem Computer schon belegt? Nehmen Sie einen anderen lokalen Port: ssh -L 8899:127.0.0.1:8888 ubuntu@203.0.113.42, dann öffnen Sie http://localhost:8899/.
Web-UI oder API erreichen
Eingehend ist nur Port 22 offen. Leiten Sie andere Ports über SSH weiter:
ssh -N -L 8000:localhost:8000 ubuntu@203.0.113.42
Öffnen Sie dann http://localhost:8000 auf Ihrem Computer. Dasselbe gilt für ComfyUI (8188), Jupyter (8888) oder TensorBoard (6006).
Jobs nach dem Trennen weiterlaufen lassen
Führen Sie lange Jobs in tmux aus:
tmux new -s work
# start your job, then detach with Ctrl+b d
tmux attach -t work
Dateien übertragen
# Upload
rsync -avz ./data/ ubuntu@203.0.113.42:~/data/
# Download
rsync -avz ubuntu@203.0.113.42:~/results/ ./results/
scp funktioniert ebenfalls. Beide laufen über denselben SSH-Zugang.
Netzwerkregeln
| Richtung | Regel |
|---|---|
| Eingehend | TCP 22 nur von Ihrer Adresse. Alles andere wird verworfen. |
| Ausgehend | IPv4 offen, außer TCP 25 (kein direktes SMTP). |
| IPv6 | Kein ausgehendes IPv6. |
Paketspiegel, Hugging Face, PyPI, GitHub und Container-Registries sind erreichbar. Versenden Sie E-Mails über ein authentifiziertes Relay auf Port 587.
Fehlerbehebung
Connection timed out
Ihre öffentliche IP weicht von der eingegebenen ab. Prüfen Sie sie mit curl -4 https://ifconfig.me. VPNs und mobile Hotspots ändern sie.
Permission denied (publickey)
Der Schlüssel auf Ihrem Computer passt nicht zum eingefügten Schlüssel. Übergeben Sie ihn explizit mit ssh -i. Verwenden Sie den Benutzer ubuntu, nicht root.
Connection refused direkt nach dem Start der Maschine
SSH startet noch. Warten Sie 30 Sekunden und versuchen Sie es erneut.
„Waiting for its public address“ Der Anbieter weist die Adresse zu. Sie erscheint innerhalb von Sekunden.
REMOTE HOST IDENTIFICATION HAS CHANGED
Eine neue Sitzung verwendet eine Adresse, mit der Sie schon einmal verbunden waren. Entfernen Sie den alten Eintrag:
ssh-keygen -R 203.0.113.42
Weiterhin blockiert? Schreiben Sie an support@nodelodge.com mit Ihrer Sitzungsnummer.