Geo-Blocking einrichten
🔒 Sicherheit
·
Updated vor 1 Monat
Einrichtung
Über die UI
Der Toggle sitzt im Route-Wizard in Step 4 — Access (zusammen mit Peer ACL, Rate Limiting und Uptime Monitoring).
- Route erstellen oder bearbeiten
- In Step 4 IP Access Control Toggle aktivieren
- Modus wählen: Whitelist oder Blacklist
- Regeln hinzufügen:
- Typ auswählen (IP, CIDR, Country)
- Wert eingeben (z.B.
203.0.113.50,10.0.0.0/8,DE)
- Speichern
Für Country-basierte Filterung: Settings → Advanced → ip2location.io API Key eintragen. Country-Matching erfordert zusätzlich, dass das License-Feature geo_ip_filtering für die Installation freigeschaltet ist; ohne Key protokolliert der Server eine Warnung und ignoriert die Country-Regel.
Über die API
# IP-Filter aktivieren mit Whitelist
curl -X PUT https://gatecontrol.example.com/api/v1/routes/1 \
-H "Authorization: Bearer gc_..." \
-H "Content-Type: application/json" \
-d '{
"ip_filter_enabled": true,
"ip_filter_mode": "whitelist",
"ip_filter_rules": [
{ "type": "cidr", "value": "185.10.20.0/24" },
{ "type": "ip", "value": "203.0.113.50" }
]
}'
# IP-Filter mit Country-Blacklist
curl -X PUT https://gatecontrol.example.com/api/v1/routes/1 \
-H "Authorization: Bearer gc_..." \
-H "Content-Type: application/json" \
-d '{
"ip_filter_enabled": true,
"ip_filter_mode": "blacklist",
"ip_filter_rules": [
{ "type": "country", "value": "CN" },
{ "type": "country", "value": "RU" }
]
}'
Wichtige Hinweise
- Unterschied zu Peer ACL: ACL filtert nur WireGuard-Peer-IPs (10.8.0.x). IP Access Control filtert jede beliebige IP-Adresse.
- Country-Lookup erfordert einen ip2location.io API Key. Ohne Key werden Country-Regeln ignoriert.
- Der GeoIP-Cache speichert bis zu 10.000 Einträge für 24 Stunden. Bei Cache-Miss wird ein API-Call ausgeführt (max 5 Sekunden Timeout).
- IPv6-mapped IPv4-Adressen (
::ffff:192.168.1.1) werden automatisch auf IPv4 reduziert. - IP Access Control funktioniert nur mit Route Auth oder als eigenständiger Forward-Auth-Check. Bei Basic Auth ist der IP-Filter nicht verfügbar.
- Eine leere Whitelist erlaubt niemanden. Eine leere Blacklist blockiert niemanden.
- IP-Filter ist nur für HTTP-Routen verfügbar, nicht für L4 (TCP/UDP).
Siehe auch
- PEER-ACCESS-CONTROL.md — ACL auf WireGuard-Peer-Ebene
- RATE-LIMITING.md — ergänzend pro Client-IP
- concepts/routing.md — Einordnung in die Access-Stufen