kubernetes:nftables
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| kubernetes:nftables [2025/08/05 20:01] – denis | kubernetes:nftables [2025/08/05 20:10] (current) – denis | ||
|---|---|---|---|
| Line 44: | Line 44: | ||
| </ | </ | ||
| + | |||
| + | |||
| + | < | ||
| + | systemctl restart nftables | ||
| + | </ | ||
| + | |||
| + | |||
| + | --- | ||
| + | |||
| + | ### **Was macht diese Konfiguration? | ||
| + | |||
| + | #### **1. Filter-Table** | ||
| + | |||
| + | - **output: | ||
| + | Erlaubt alle ausgehenden Pakete vom Server selbst (Policy: accept). | ||
| + | |||
| + | - **input: | ||
| + | Erlaubt alle eingehenden Pakete auf die Interfaces `wg0` (WireGuard) und `eth0` (vermutlich dein öffentliches Interface). | ||
| + | |||
| + | - **forward: | ||
| + | Erlaubt das Weiterleiten von Paketen: | ||
| + | - Von `wg0` nach `eth0` (also von WireGuard ins Internet) | ||
| + | - Von `eth0` nach `wg0` (also vom Internet ins WireGuard-Netz) | ||
| + | |||
| + | #### **2. NAT-Table** | ||
| + | |||
| + | - **postrouting: | ||
| + | Alle Pakete, die den Server verlassen, werden mit `masquerade` versehen. Das heißt, ihre Quell-IP wird auf die öffentliche IP des Servers gesetzt (Source NAT). Das ist wichtig, damit Antworten an den Server zurückkommen. | ||
| + | |||
| + | - **prerouting: | ||
| + | Hier findet Destination NAT (DNAT) statt: | ||
| + | - Pakete, die an die öffentliche IP `128.140.47.251` auf Port 80 oder 443 gehen, werden an `192.168.8.10` weitergeleitet. | ||
| + | - Pakete, die an die öffentliche IP `116.202.187.170` auf Port 80 oder 443 gehen, werden an `192.168.8.22` weitergeleitet. | ||
| + | |||
| + | --- | ||
| + | |||
| + | ### **Wie funktioniert das Routing über WireGuard? | ||
| + | |||
| + | Angenommen, du hast zwei VServer: | ||
| + | |||
| + | - **VServer1: | ||
| + | - **VServer2: | ||
| + | |||
| + | Wenn jetzt jemand von außen (Internet) auf `128.140.47.251: | ||
| + | |||
| + | 1. Das Paket kommt auf `eth0` an. | ||
| + | 2. Die NAT-Regel in `prerouting` sorgt dafür, dass das Ziel von `128.140.47.251: | ||
| + | 3. Das Paket wird weitergeleitet (forward chain erlaubt das). | ||
| + | 4. Das Routing sorgt dafür, dass Pakete ins Netz `192.168.8.0/ | ||
| + | 5. Das Paket wird über das WireGuard-Interface an VServer2 (`192.168.8.10`) geschickt. | ||
| + | |||
| + | Die Antwortpakete von VServer2 gehen zurück über WireGuard zu VServer1, werden dort per `masquerade` mit der öffentlichen IP versehen und ins Internet zurückgeschickt. | ||
| + | |||
| + | --- | ||
| + | |||
| + | ### **Was musst du noch beachten?** | ||
| + | |||
| + | - **Routing: | ||
| + | Dein VServer1 muss wissen, dass das Netz `192.168.8.0/ | ||
| + | |||
| + | - **WireGuard-Konfiguration: | ||
| + | Die Peers müssen korrekt eingerichtet sein, damit die Pakete auch wirklich über das VPN gehen. | ||
| + | |||
| + | - **Firewall auf VServer2: | ||
| + | VServer2 muss Verbindungen von VServer1 (bzw. aus dem WireGuard-Netz) auf den gewünschten Ports erlauben. | ||
| + | |||
| + | --- | ||
| + | |||
| + | ### **Zusammengefasst: | ||
| + | |||
| + | Deine Konfiguration sorgt dafür, dass Traffic, der auf bestimmte öffentliche IPs und Ports ankommt, per DNAT ins WireGuard-Netz umgeleitet wird. Die Weiterleitung und das NAT sorgen dafür, dass die Pakete korrekt ankommen und die Antworten zurück ins Internet finden. | ||
| + | |||
| + | Wenn du noch Fragen hast oder ein konkretes Beispiel durchgehen willst (z.B. wie die WireGuard-Konfig aussehen muss), sag Bescheid! | ||
| + | |||
kubernetes/nftables.1754424093.txt.gz · Last modified: by denis
