Mit Port Forwarding (auch Portweiterleitung genannt) leitet ihr eingehende Verbindungen aus dem Internet direkt an euren Raspberry Pi weiter. So könnt ihr von überall per SSH auf den Pi zugreifen, eine selbst gehostete Website erreichbar machen oder andere Dienste bereitstellen.
Voraussetzungen
- DynDNS-Adresse eingerichtet (→ Teil 5: DynDNS)
- Raspberry Pi mit fester IP-Adresse im Heimnetzwerk
- Zugang zur Router-Oberfläche
Schritt 1: Feste IP-Adresse für den Pi reservieren
Damit der Router immer weiß, an welche IP-Adresse er Pakete weiterleiten soll, sollte der Pi immer dieselbe lokale IP-Adresse haben. Es gibt zwei Möglichkeiten:
Option A: DHCP-Reservierung im Router (empfohlen)
Die einfachste Methode: Im Router die MAC-Adresse des Pi einer festen IP zuordnen. Die MAC-Adresse des Pi ermittelt ihr mit:
|
1 |
ip link show eth0 |
Bei FritzBox: Heimnetz → Netzwerk → IP-Adressen → [Pi auswählen] → Häkchen „Diesem Netzwerkgerät immer die gleiche IPv4-Adresse zuweisen“
Option B: Statische IP am Pi setzen (Raspberry Pi OS Bookworm)
Seit Raspberry Pi OS Bookworm wird NetworkManager verwendet. Eine statische IP setzt ihr mit:
|
1 2 3 4 5 |
sudo nmcli con mod "Wired connection 1" ipv4.addresses 192.168.1.42/24 sudo nmcli con mod "Wired connection 1" ipv4.gateway 192.168.1.1 sudo nmcli con mod "Wired connection 1" ipv4.dns "1.1.1.1 8.8.8.8" sudo nmcli con mod "Wired connection 1" ipv4.method manual sudo nmcli con up "Wired connection 1" |
Den tatsächlichen Verbindungsnamen prüft ihr mit: nmcli con show
Schritt 2: Port Forwarding im Router einrichten
FritzBox
- Router-Oberfläche öffnen: fritz.box im Browser
- Internet → Freigaben → Portfreigaben
- Klick auf Gerät für Freigaben hinzufügen
- Raspberry Pi aus der Liste wählen
- Freigabe hinzufügen: Protokoll TCP, Port von/bis eintragen
- Speichern
Andere Router
Bei anderen Routern findet ihr die Portweiterleitung meist unter Erweitert → NAT → Portweiterleitung oder ähnlich. Die Einstellungen sind:
- Externer Port: Port, der aus dem Internet erreichbar sein soll
- Interne IP: IP-Adresse des Raspberry Pi
- Interner Port: Port auf dem Pi (meist identisch)
- Protokoll: TCP (bei SSH, HTTP, HTTPS)
Wichtige Ports
| Dienst | Port | Protokoll |
|---|---|---|
| SSH | 22 (besser: 2222 o.ä.) | TCP |
| HTTP (Webserver) | 80 | TCP |
| HTTPS (Webserver) | 443 | TCP |
| VNC | 5900 | TCP |
| Nextcloud | 443 | TCP |
Sicherheitshinweis: SSH-Port ändern
Wer SSH aus dem Internet erreichbar macht, sollte den Standard-Port 22 ändern, um automatisierte Angriffe zu reduzieren. In /etc/ssh/sshd_config die Zeile Port 22 auf einen anderen Port ändern (z.B. 2222) und danach entsprechend im Router weiterleiten.
|
1 2 3 |
sudo nano /etc/ssh/sshd_config # Port 22 → Port 2222 sudo systemctl restart ssh |
Außerdem empfehlen wir die Einrichtung einer Firewall – mehr dazu in Teil 9 dieses Guides.
Verbindung testen
Nach dem Einrichten könnt ihr von einem anderen Netzwerk (z.B. Mobilfunk) testen:
|
1 |
ssh -p 2222 benutzer@euredomain.duckdns.org |
