Dynamic DNS op Sophos Firewall configureren en controleren
Onder Network > Dynamic DNS > Add koppel je een hostnaam van de DDNS-provider aan de juiste WAN-interface. Als de Sophos Firewall zelf het publieke IPv4-adres heeft, kies je Use port IP. Staat de firewall met een privé-WAN-adres achter een router, dan is NATed public IP de juiste keuze.
Dynamic DNS werkt alleen het DNS-record bij. Het opent geen poorten en maakt geen NAT- of firewallregels aan. Als een interne server achter de firewall bereikbaar moet zijn, moeten daarom ook de stappen in Een server via DNAT publiceren correct zijn uitgevoerd.
Dezelfde hostnaam kan ook een dynamisch publiek WAN-adres voor een Sophos DNS Protection Location vertegenwoordigen. Eerst moet de hieronder beschreven externe A-recordquery het huidige WAN-IPv4-adres retourneren; daarna controleer je de locatiespecifieke toewijzing zoals beschreven in Sophos DNS Protection Locations veilig beheren. Alleen de DDNS-vermelding wijst nog geen Filtering Policy toe en wijzigt het DNS-pad van de clients niet.
Dynamic DNS configureren
Vooraf zijn bij de provider een hostnaam zoals vpn.example.net en geldige updategegevens nodig. De firewall moet DNS-namen kunnen omzetten en internet en de provider kunnen bereiken. Dynamic DNS werkt daarom niet in een air-gapomgeving.
- Open Network > Dynamic DNS en klik op Add.
- Voer onder Hostname de bij de provider aangemaakte naam in, bijvoorbeeld
vpn.example.net. Gebruik de door de provider vereiste schrijfwijze voor het domein en de subdomeinen; het formaat is niet bij elke provider hetzelfde. Controleer vóór het opslaan ook de vereisten voor de aanmeldnaam. - Selecteer de bijbehorende WAN-Interface, bijvoorbeeld
Port2 - WAN. - Kies onder IPv4 address voor Use port IP of NATed public IP.
- Selecteer de Service provider.
- Voer Login name en Password of de providerspecifieke updatesleutel in.
- Sla de configuratie op met Save en controleer de status.
In het huidige SFOS-venster kun je kiezen uit DynDNS, DynAccess, EasyDNS, ZoneEdit, Google DDNS, Namecheap, DNS-O-Matic, No-IP, FreeDNS en Cloudflare. De voormalige Sophos-dienst myfirewall.co is stopgezet. Afhankelijk van de provider betekent Password niet het normale accountwachtwoord: DynDNS gebruikt de Updater Client Key, terwijl ZoneEdit en EasyDNS een Dynamic Token gebruiken. DynAccess, No-IP, DNS-O-Matic, Google DDNS en Namecheap gebruiken een gebruikersnaam en wachtwoord. Als een provider geen gebruikersnaam vereist, voer je volgens Sophos het domein in als Login name. Bij FreeDNS mag het wachtwoord in SFOS maximaal 15 tekens lang zijn; Cloudflare vormt de uitzondering met een e-mailadres en Global API Key.
Bereid vóór stap 6 de hostnaam en updategegevens voor in het provideraccount:
- DynDNS: In het DynDNS-account maak je via My Services > DynDNS Pro > Add New Hostname een hostnaam met het gewenste providerdomein aan. De updatesleutel staat onder Account Settings > Updater Client Key. Gebruik Generate Key als het veld leeg is. Let op: een nieuw gegenereerde sleutel vervangt de eerdere aanmeldingsgegevens van bestaande DDNS-updateclients; ook die clients moeten de nieuwe sleutel krijgen. Voer in SFOS de DynDNS-gebruikersnaam in als Login name en de sleutel als Password, niet het accountwachtwoord.
- ZoneEdit: Open in het ZoneEdit-controlepaneel DNS en selecteer het moersleutelpictogram bij DYN RECORDS. Stel HOST en TTL in, klik op ENABLE voor DYN AUTHENTICATION TOKEN, ga verder met NEXT en bevestig de wijzigingen. Gebruik in SFOS de ZoneEdit-gebruikersnaam en het dynamische token in plaats van het accountwachtwoord.
- EasyDNS: Open in het EasyDNS-controlepaneel voor het domein MANAGE > DNS SETTINGS > MODULAR EDITOR en bewerk DYNAMIC RECORDS. Stel de hostnaam en TTL in, maak het Dynamic Authenticated Token aan met ENABLE, selecteer NEXT en bevestig de wijzigingen. De afgenomen dienst moet Dynamic DNS ondersteunen. Als er al een A-record bestaat, bevestig de omzetting alleen als die daadwerkelijk dynamisch moet worden. Gebruik in SFOS de EasyDNS-gebruikersnaam en het token in plaats van het accountwachtwoord.
- FreeDNS: Controleer de benodigde hostnamen onder FreeDNS-subdomeinen. Voor SFOS blijven de hierboven genoemde aanmeldingsgegevens en de wachtwoordlimiet van 15 tekens gelden.
Updatesleutels en tokens horen, net als wachtwoorden, niet thuis in screenshots of supporttickets.
Use port IP of NATed public IP
- Use port IP: De geselecteerde WAN-interface heeft zelf het publieke IPv4-adres.
- NATed public IP: De WAN-interface heeft een privéadres en een voorliggende router voert NAT uit. Om het publieke adres te bepalen, moet de firewall bovendien
checkip.cyberoam.comvia TCP80kunnen bereiken.
Bridge-interfaces ondersteunen geen Dynamic DNS. Als WAN-interfaces worden omgebouwd of vervangen, controleer je de afhankelijkheden via Object usage en daarna de DDNS-vermelding. Meer beperkingen van interfaces staan in Zones en interfaces correct gebruiken.
Cloudflare veilig koppelen
De geïntegreerde Cloudflare-provider verwacht het e-mailadres van het account en de Global API Key. Een beperkt API-token wordt in de huidige Sophos-documentatie niet als compatibele aanmeldingsmethode vermeld.
Cloudflare classificeert de Global API Key als verouderd: deze heeft dezelfde rechten als de gebruiker en toegang tot diens resources. Voor de SFOS-integratie moet daarom een afzonderlijke Cloudflare-gebruiker worden gebruikt die alleen toegang heeft tot de benodigde zone en daarvoor alleen de DNS-rol krijgt. De sleutel hoort niet thuis in screenshots of tickets. Als een Global API Key niet binnen het beveiligingsbeleid past, gebruik je in plaats daarvan een externe updater met een beperkt API-token of een andere ondersteunde provider.
Voor VPN en andere diensten waarbij clients rechtstreeks verbinding maken met het publieke firewall-IP, moet het Cloudflare-record op DNS only staan. Als de proxy bewust is ingeschakeld, geeft de DNS-query in plaats daarvan Cloudflare Anycast-adressen terug; controleer dan het DDNS-oorsprongsadres in het Cloudflare-dashboard.
DDNS-resolutie en dienst controleren
SFOS controleert elke vijf minuten of het publieke IP-adres is gewijzigd. Na het opslaan controleer je onder Network > Dynamic DNS de kolommen Last updated IP, Last updated status, Last updated time en bij een fout Failure reason. Last updated IP is het adres dat het laatst naar de provider is gestuurd; alleen een externe DNS-query toont welk adres publiek wordt teruggegeven.
Vervolgens vraag je de hostnaam op buiten de eigen DNS-cache. Onder Linux en macOS:
dig @1.1.1.1 vpn.example.net A +short
Onder Windows:
nslookup vpn.example.net 1.1.1.1
Het antwoord moet overeenkomen met het verwachte publieke IPv4-adres. Direct na een wijziging kan een resolver door de DNS-TTL en cache nog het oude adres teruggeven.
Test ten slotte de eigenlijke dienst vanuit een ander netwerk, bijvoorbeeld via mobiel internet. Een correct DNS-antwoord bewijst alleen dat de naamomzetting werkt, niet dat de dienst bereikbaar is.
Een wijziging terugdraaien
Werkt de vermelding niet zoals verwacht, bewerk deze dan onder Network > Dynamic DNS via Manage en herstel de vorige interface, IP-keuze, provider en aanmeldingsgegevens. Als DDNS niet meer nodig is, verwijder je de vermelding en herstel je handmatig de gewenste DNS-waarde bij de provider. Verwijderen stopt alleen toekomstige DDNS-updates; DNAT- en firewallregels worden niet verwijderd en de door de provider gepubliceerde DNS-record wordt niet automatisch hersteld. Controleer daarna opnieuw het externe DNS-antwoord en de dienst.
Multi-WAN, HA en CGNAT
Controleer na een WAN- of HA-failover altijd de DDNS-status, het externe DNS-antwoord en de dienst.
- Multi-WAN: Elke DDNS-vermelding is aan een geselecteerde interface gekoppeld. Ga er niet van uit dat één hostnaam automatisch de actieve gateway volgt. Plan voor gepubliceerde diensten een unieke hostnaam per WAN.
- HA: Diagnoselogboeken worden niet tussen de knooppunten gesynchroniseerd. De volledige failovertest staat in High Availability op Sophos Firewall configureren.
- CGNAT: NATed public IP kan het gedeelde provideradres publiceren, maar maakt de firewall niet van buitenaf bereikbaar. Daarvoor is bijvoorbeeld een echt publiek IPv4-adres, een afzonderlijk bijgehouden AAAA-record met passende IPv6-firewall- en dienstconfiguratie, of een van binnenuit opgebouwde tunnel- of relayoplossing nodig. De hier beschreven SFOS-DDNS werkt alleen IPv4 bij.
Problemen oplossen
Selecteer in Log Viewer Events en System en zoek naar de component DDNS. De technische veldwaarden zijn log_type=Event, log_subtype=System en log_component=DDNS; vooral Status, Message en Failure reason zijn relevant. De laatste vermeldingen worden ook weergegeven via optie 4 Device Console:
show logs ddc.log lines 100
Voor een liveanalyse kun je in het SSH-menu onder Device Management > Advanced Shell de volgende opdracht uitvoeren en deze daarna met Ctrl+C stoppen:
tail -f /log/ddc.log
De opdrachten en de koppeling aan ddc.log zijn voor SFOS 22 gedocumenteerd, maar zijn hier niet op een klantfirewall uitgevoerd. Meer logbestanden en toegangsmethoden staan in Servicelogs van Sophos Firewall.
Invalid Configuration or bad authorization: Controleer hostnaam, provider en aanmeldingsgegevens. Voor Cloudflare zijn het e-mailadres van het account en de Global API Key vereist.- Invalid IP: Controleer de interface en de keuze Use port IP of NATed public IP.
- DNS Error of Connect Failed: Controleer DNS, Default Route en de bereikbaarheid van internet en de provider. Controleer bij NATed public IP bovendien de hierboven genoemde bereikbaarheid van de Check-IP-dienst.
- Invalid Response of Reported Abuse: Controleer de providerstatus, het account, blokkeringen en limieten bij de provider.
- Success, maar verkeerd IP-adres: Vergelijk het providerdashboard, de geselecteerde interface, de IP-optie en het externe DNS-antwoord.
- FQDN klopt, maar de dienst is niet bereikbaar: Controleer de poortdoorschakeling op de voorliggende router, DNAT, de firewallregel en de betreffende VPN- of dienstconfiguratie.
Als Cloudflare-DDNS pas sinds de upgrade naar SFOS 22.0 MR1 uitvalt, werk dan bij naar SFOS 22.0 MR2 Build 546 of nieuwer en test opnieuw. Sophos lost daarmee NC-180219 op; de details staan in het artikel over SFOS 22 MR2.