Publiczne IP · iptables DNAT · socat · Tailscale tunnel
# Włącz routing pakietów na żywo $ sudo sysctl -w net.ipv4.ip_forward=1 # Utrwal zmiany w pliku konfiguracyjnym $ sudo nano /etc/sysctl.conf # → dodaj lub odkomentuj: net.ipv4.ip_forward=1 # Przeładuj sysctl i zastosuj zmiany $ sudo sysctl -p
# Przekieruj cały ruch do home serwera przez Tailscale $ sudo iptables -t nat -A PREROUTING -j DNAT --to-destination 100.96.49.10 # Alternatywnie — konkretny port (np. Minecraft 25565): # sudo iptables -t nat -A PREROUTING -p tcp --dport 25565 \ # -j DNAT --to-destination 100.96.49.10:25565
# Zezwól na forward pakietów do home serwera $ sudo iptables -A FORWARD -d 100.96.49.10 -j ACCEPT # Zezwól na powrotny ruch z aktywnych połączeń $ sudo iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
# Podmień źródłowy adres — pakiety odpowiedzi muszą wrócić przez VPS $ sudo iptables -t nat -A POSTROUTING -j MASQUERADE
# Zainstaluj pakiet do trwałego zapisu reguł $ sudo apt install iptables-persistent # Zapisz reguły do /etc/iptables/rules.v4 i rules.v6 $ sudo netfilter-persistent save # Sprawdź że reguły zostały zapisane: $ cat /etc/iptables/rules.v4
| Rola | Adres IP | Typ | Usługa / Uwagi |
|---|---|---|---|
| VPS — Proxy / Bramka | 217.154.216.165 | PUBLIC | Wejście zewnętrzne, iptables |
| Home Server | 100.96.49.10 | TAILSCALE | Cel DNAT, serwer docelowy |
| Minecraft Server | 217.154.216.165:25565 | TCP | play.mikolajfiuk.xce.pl |
| Crafty Controller | 100.96.49.10:8443 | HTTPS | Panel zarządzania MC |
| Proxmox VE | 100.96.49.10:8006 | HTTPS | Wirtualizacja / Hypervisor |
| Immich | 100.96.49.10:2283 | HTTP | Galeria zdjęć / self-hosted Photos |
DNAT --to-destination 100.96.49.10 przekierowuje cały ruch TCP/UDP.100.96.49.10 to adres Tailscale — VPS i home serwer muszą być w tej samej sieci Tailscale. Bez aktywnego połączenia Tailscale pakiety wylatują w próżnię.