Aktivieren der DNSSEC-Signierung und Aufbau einer Vertrauenskette - Amazon Route 53

Aktivieren der DNSSEC-Signierung und Aufbau einer Vertrauenskette

Die inkrementellen Schritte gelten für den Besitzer der gehosteten Zone und den übergeordneten Zonenbetreuer. Dies kann dieselbe Person sein, aber falls nicht, sollte der Zonenbesitzer den übergeordneten Zonenbetreuer benachrichtigen und mit ihm arbeiten.

Wir empfehlen, die Schritte in diesem Artikel zu befolgen, damit Ihre Zone signiert und in die Vertrauenskette aufgenommen wird. Die folgenden Schritte minimieren das Risiko des Onboardings auf DNSSEC.

Es müssen drei Schritte durchgeführt werden, um die DNSSEC-Signatur zu aktivieren, indem Sie wie in den folgenden Abschnitten beschrieben vorgehen.

Schritt 1: Vorbereiten der Aktivierung der DNSSEC-Signatur

Die Vorbereitungsschritte helfen Ihnen, das Risiko eines Onboardings bei DNSSEC zu minimieren, indem Sie die Zonenverfügbarkeit überwachen und die Wartezeiten zwischen dem Aktivieren der Signierung und dem Einfügen des Delegation Signer (DS)-Datensatzes senken.

So bereiten Sie sich auf das Aktivieren der DNSSEC-Signierung vor

  1. Überwachen Sie die Verfügbarkeit der Zone.

    Sie können die Zone auf die Verfügbarkeit Ihrer Domänennamen überwachen. Dies kann Ihnen helfen, alle Probleme zu beheben, die einen Schritt zurücksetzen könnten, nachdem Sie die DNSSEC-Signatur aktiviert haben. Sie können Ihre Domänennamen mit dem größten Datenverkehr überwachen, indem Sie die Abfrageprotokollierung verwenden. Für weitere Informationen zum Einrichten einer Abfrage-Protokollierung siehe Amazon Route 53 überwachen.

    Die Überwachung kann über ein Shell-Skript oder über einen Drittanbieterdienst erfolgen. Dies sollte jedoch nicht das einzige Signal sein, um festzustellen, ob ein Rollback erforderlich ist. Möglicherweise erhalten Sie auch Feedback von Ihren Kunden, da eine Domäne nicht verfügbar ist.

  2. Senken Sie die maximale TTL der Zone.

    Die maximale TTL der Zone ist der längste TTL-Datensatz in der Zone. In der folgenden Beispielzone beträgt die maximale TTL der Zone 1 Tag (86 400 Sekunden).

    Name TTL Datensatz-Klasse Datensatztyp Datensatz-Daten

    example.com.

    900

    IN

    SOA

    ns1.example.com. hostmaster.example.com. 2002022401 10800 15 604800 300

    example.com.

    900

    IN

    NS

    ns1.example.com.

    route53.example.com.

    86400

    IN

    TXT

    some txt record

    Die Senkung der maximalen TTL der Zone trägt dazu bei, die Wartezeit zwischen dem Aktivieren der Signatur und dem Einfügen des Delegation Signer (DS)-Datensatzes zu verkürzen. Wir empfehlen, die maximale TTL der Zone auf eine Stunde (3 600 Sekunden) zu senken. Auf diese Weise können Sie sie nach nur einer Stunde zurücksetzen, wenn ein Resolver Probleme beim Zwischenspeichern signierter Datensätze hat.

    Rollback: Machen Sie die TTL-Änderungen rückgängig.

  3. Senken Sie das SOA-TTL- und SOA-Mindestfeld.

    Das SOA-Mindestfeld ist das letzte Feld in den SOA-Datensatzdaten. Im folgenden SOA-Beispieldatensatz hat das Mindestfeld den Wert 5 Minuten (300 Sekunden).

    Name TTL Datensatz-Klasse Datensatztyp Datensatz-Daten

    example.com.

    900

    IN

    SOA

    ns1.example.com. hostmaster.example.com. 2002022401 10800 15 604800 300

    Das SOA-TTL- und SOA-Mindestfeld bestimmt, wie lange Resolver sich an negative Antworten erinnern. Nachdem Sie die Signierung aktiviert haben, geben die Nameserver der Route 53 NSEC-Datensätze für negative Antworten zurück. Die NSEC enthält Informationen, die Resolver verwenden könnten, um eine negative Antwort zu synthetisieren. Wenn Sie ein Rollback durchführen müssen, weil die NSEC-Informationen dazu geführt haben, dass ein Resolver eine negative Antwort für einen Namen annimmt, müssen Sie nur auf das Maximum des SOA-TTL- und SOA-Mindestfeldes warten, damit der Resolver die Annahme stoppt.

    Rollback: Machen Sie die SOA-Änderungen rückgängig.

  4. Stellen Sie sicher, dass die Änderungen an den Mindestfeldern TTL und SOA wirksam sind.

    Verwenden Sie GetChange, um sicherzustellen, dass Ihre Änderungen bisher an alle Route-53-DNS-Server weitergegeben wurden.

Schritt 2: Aktivieren der DNSSEC-Signatur und Erstellen einer KSK

Sie können die DNSSEC-Signatur aktivieren und einen Schlüsselsignaturschlüssel (KSK), mithilfe AWS CLI erstellen oder auf der Route-53-Konsole verwenden.

Wenn Sie einen vom Kunden verwalteten KMS-Schlüssel bereitstellen oder erstellen, gelten mehrere Anforderungen. Weitere Informationen finden Sie unter Arbeiten mit vom Kunden verwalteten Schlüsseln für DNSSEC.

CLI

Sie können einen Schlüssel verwenden, den Sie bereits zur Verfügung haben, oder Sie erstellen einen, indem Sie einen AWS CLI-Befehl wie den folgenden mit eigenen Werten für hostedzone_id, cmk_arn, ksk_name, und unique_string (um die Anfrage eindeutig zu machen) verwenden:

aws --region us-east-1 route53 create-key-signing-key \ --hosted-zone-id $hostedzone_id \ --key-management-service-arn $cmk_arn --name $ksk_name \ --status ACTIVE \ --caller-reference $unique_string

Weitere Informationen zu den vom Kunden verwalteten Schlüsseln finden Sie unter Arbeiten mit vom Kunden verwalteten Schlüsseln für DNSSEC. Weitere Informationen finden Sie auch unter CreateKeySigningKey.

Um DNSSEC-Signatur zu aktivieren, führen Sie einen AWS CLI-Befehl wie den folgenden aus, indem Sie Ihren eigenen Wert für die hostedzone_id verwenden:

aws --region us-east-1 route53 enable-hosted-zone-dnssec \ --hosted-zone-id $hostedzone_id

Weitere Informationen finden Sie unter enable-hosted-zone-dnssec und EnableHostedZoneDNSSEC.

Console

So aktivieren Sie die DNSSEC-Signatur und erstellen eine KSK

  1. Melden Sie sich bei der AWS Management Console-Managementkonsole an und öffnen Sie die Route-53-Konsole unter https://console.aws.amazon.com/route53/.

  2. Wählen Sie im NavigationsbereichGehostete ZonenWählen Sie dann eine gehostete Zone aus, für die Sie die DNSSEC-Signatur aktivieren möchten.

  3. Klicken Sie auf derDNSSECWählen Sie auf der RegisterkarteDNSSEC-Signatur aktivierenaus.

    Anmerkung

    Wenn die Option in diesem AbschnittDNSSEC-Signatur deaktivierenDer erste Schritt zur Aktivierung der DNSSEC-Signatur ist bereits abgeschlossen. Stellen Sie sicher, dass Sie eine Vertrauenskette für die gehostete Zone für DNSSEC einrichten oder bereits vorhanden sind, und Sie sind fertig. Weitere Informationen finden Sie unter Schritt 3: Erstellen einer Vertrauenskette.

  4. Wählen Sie im Abschnitt Schlüsselsignaturschlüsselerstellung (KSK) Create new KSK (Neuen KSK erstellen), aus und geben Sie unter Provide KSK name (KSK-Namen angeben) einen Namen für den KSK ein, den Route 53 für Sie erstellen wird. Namen können nur Buchstaben, Zahlen und Unterstriche enthalten. Dieser Wert muss eindeutig sein.

  5. UNDERKundenverwalteter CMKden vom Kunden verwalteten Schlüssel für Route 53 aus, der beim Erstellen des KSK für Sie verwendet werden soll. Sie können einen vorhandenen vom Kunden verwalteten Schlüssel verwenden, der für die DNSSEC-Signatur gilt, oder einen neuen, vom Kunden verwalteten Schlüssel erstellen.

    Wenn Sie einen vom Kunden verwalteten Schlüssel bereitstellen oder erstellen, gibt es mehrere Anforderungen. Weitere Informationen finden Sie unter Arbeiten mit vom Kunden verwalteten Schlüsseln für DNSSEC.

  6. Geben Sie den Alias für einen vorhandenen, vom Kunden verwalteten Schlüssel ein. Wenn Sie einen neuen vom Kunden verwalteten Schlüssel verwenden möchten, geben Sie einen Alias für einen vom Kunden verwalteten Schlüssel ein, und Route 53 erstellt einen für Sie.

    Anmerkung

    Wenn Sie sich dafür entscheiden, dass Route 53 einen vom Kunden verwalteten Schlüssel erstellt, beachten Sie, dass für jeden vom Kunden verwalteten Schlüssel separate Gebühren anfallen. Weitere Informationen finden Sie unter AWS Key Management Service – Preise.

  7. Klicken Sie auf DNSSEC-Signatur aktivieren.

Führen Sie nach dem Aktivieren der Zonensignierung die folgenden Schritte aus (egal, ob Sie die Konsole oder CLI verwendet haben):

  1. Stellen Sie sicher, dass die Zonensignatur effektiv ist.

    Verwenden Sie die ID aus dem EnableHostedZoneDNSSEC()-Aufruf, um GetChange auszuführen und sicherzustellen, dass alle Route-53-DNS-Server Antworten signieren (Status = INSYNC).

  2. Warten Sie mindestens auf die maximale TTL der vorherigen Zone.

    Warten Sie, bis Resolver alle nicht signierten Datensätze aus ihrem Cache leeren. Um dies zu erreichen, sollten Sie mindestens auf die maximale TTL der vorherigen Zone warten. In der example.com-Zone oben beträgt Wartezeit 1 Tag.

  3. Überwachen Sie Berichte über Kundenprobleme.

    Nachdem Sie die Zonensignierung aktiviert haben, sehen Ihre Kunden möglicherweise Probleme im Zusammenhang mit Netzwerkgeräten und Resolvern. Der empfohlene Überwachungszeitraum beträgt 2 Wochen.

    Im Folgenden finden Sie Beispiele für Probleme, die möglicherweise auftreten:

    • Einige Netzwerkgeräte können die DNS-Antwortgröße auf unter 512 Byte beschränken, was für einige signierte Antworten zu klein ist. Diese Netzwerkgeräte sollten neu konfiguriert werden, um größere DNS-Antwortgrößen zu ermöglichen.

    • Einige Netzwerkgeräte führen eine gründliche Untersuchung der DNS-Antworten durch und entfernen bestimmte Datensätze, die sie nicht verstehen, wie die für DNSSEC verwendeten. Diese Geräte sollten neu konfiguriert werden.

    • Die Resolver einiger Kunden behaupten, dass sie eine größere UDP-Antwort akzeptieren können, als ihr Netzwerk unterstützt. Sie können Ihre Netzwerkfähigkeit testen und Ihre Resolver entsprechend konfigurieren. Weitere Informationen finden Sie unter DNS-Antwortgröße-Testserver.

Rollback: Rufen Sie DisableHostedZoneDNSSEC auf und setzen Sie dann die Schritte in Schritt 1: Vorbereiten der Aktivierung der DNSSEC-Signatur zurück.

Schritt 3: Erstellen einer Vertrauenskette

Nachdem Sie die DNSSEC-Signatur für eine gehostete Zone in Route 53 aktiviert haben, richten Sie eine Vertrauenskette für die gehostete Zone ein, um die DNSSEC-Signatureinrichtung abzuschließen. Dazu erstellen Sie einen Delegation Signer (DS) -Datensatz imparent-gehostete Zone für Ihre gehostete Zone mit den Informationen, die Route 53 zur Verfügung stellt. Je nachdem, wo Ihre Domain registriert ist, fügen Sie den Datensatz der übergeordneten gehosteten Zone in Route 53 oder bei einer anderen Domänenregistrierungsstelle hinzu.

So richten Sie eine Vertrauenskette für die DNSSEC-Signatur ein

  1. Melden Sie sich bei der AWS Management Console-Managementkonsole an und öffnen Sie die Route-53-Konsole unter https://console.aws.amazon.com/route53/.

  2. Wählen Sie im NavigationsbereichGehostete Zonen, und wählen Sie dann eine gehostete Zone aus, für die Sie eine DNSSEC-Vertrauenskette einrichten möchten. Sie müssen zuerst die DNSSEC-Signatur aktivieren.

  3. Klicken Sie auf der DNSSEC unter DNSSEC, wählen Sie Anzeigen von Informationen zum Erstellen von DS-Datensätzen aus.

    Anmerkung

    Wenn Sie nicht sehenAnzeigen von Informationen zum Erstellen von DS-Datensätzenin diesem Abschnitt müssen Sie die DNSSEC-Signatur aktivieren, bevor Sie die Vertrauenskette einrichten. Wählen Sie Enable DNSSEC signing (DNSSEC-Signatur aktivieren) aus, führen Sie die unter beschriebenen Schritte in Schritt 2: Aktivieren der DNSSEC-Signatur und Erstellen einer KSK aus und kehren Sie dann zu diesen Schritten zurück, um die Vertrauenskette einzurichten.

  4. UNDERErstellen einer Vertrauenskette, wählen Sie entwederRegistrant Route 53oderEine andere Domänenvergabestelle, je nachdem, wo Ihre Domain registriert ist.

  5. Verwenden Sie die bereitgestellten Werte ab Schritt 3 , um einen DS-Datensatz für die übergeordnete gehostete Zone in Route 53 zu erstellen. Wenn Ihre Domäne nicht bei Route 53 gehostet wird, verwenden Sie die bereitgestellten Werte, um einen DS-Datensatz auf der Website Ihres Domänen-Registrars zu erstellen.

    • Wenn die übergeordnete Zone über Route 53 registriert und verwaltet wird, führen Sie die folgenden Schritte aus:

      Stellen Sie sicher, dass Sie den korrekten Signaturalgorithmus (ECDSAP256SHA256 und Typ 13) und den Digest-Algorithmus (SHA-256 und Typ 2) konfigurieren.

      Wenn Route 53 Ihr Registrar ist, gehen Sie in der Route-53-Konsole wie folgt vor:

      1. Beachten Sie dieSchlüsseltyp,Signaturalgorithmus, undDer öffentliche Schlüssel-Werte. Klicken Sie im Navigationsbereich auf Registered domains (Registrierte Domänen).

      2. Wählen Sie eine Domäne aus, und klicken Sie dann neben DNSSEC, wählen Sie Verwalten von Schlüsseln aus.

      3. Wählen Sie im Dialogfeld Manage DNSSEC keys (DNSSEC-Schlüssel verwalten) den entsprechenden Key type (Schlüsseltyp) und Algorithm (Algorithmus) für Route 53 registrar (Route-53-Registrar) aus den Dropdown-Menüs aus.

      4. Kopieren Sie dieDer öffentliche Schlüsselfür den Registrar der Route 53. Wählen Sie in Manage DNSSEC keys (DNSSEC-Schlüssel verwalten) den Wert in dem Feld Public key (Öffentlicher Schlüssel) aus.

      5. Wählen Sie Add (Hinzufügen) aus.

        Route 53 fügt den DS-Datensatz der übergeordneten Zone aus dem öffentlichen Schlüssel hinzu. Beispiel: Wenn Ihre Domäne lautetexample.comDer DS-Eintrag wird der DNS-Zone .com hinzugefügt.

    • Wenn die übergeordnete Zone auf Route 53 oder einer anderen Registrierung gehostet wird, kontaktieren Sie den Besitzer der übergeordneten Zone, um diese Anweisungen zu befolgen:

      Um sicherzustellen, dass die folgenden Schritte reibungslos verlaufen, führen Sie eine niedrige DS-TTL in die übergeordnete Zone ein. Wir empfehlen, den DS TTL auf 5 Minuten (300 Sekunden) für eine schnellere Wiederherstellung einzustellen, wenn Sie Ihre Änderungen zurücksetzen müssen.

      • Wenn Ihre übergeordnete Zone von einer anderen Registrierung verwaltet wird, kontaktieren Sie Ihren Registrar, um den DS-Datensatz für Ihre Zone einzuführen. In der Regel können Sie die TTL des DS-Datensatzes nicht anpassen.

      • Wenn Ihre übergeordnete Zone auf Route 53 gehostet wird, kontaktieren Sie den Besitzer der übergeordneten Zone, um den DS-Datensatz für Ihre Zone einzuführen.

        Geben Sie die $ds_record_value für den Besitzer der übergeordneten Zone an. Sie können es abrufen, indem Sie in der Konsole auf View Information to create DS record (Informationen anzeigen, um einen DS-Datensatz zu erstellen) klicken und das Feld DS record (DS-Datensatz) kopieren, oder indem Sie die GetDNSSEC-API aufrufen und den Wert des Felds „DSRecord“ abrufen:

        aws --region us-east-1 route53 get-dnssec --hosted-zone-id $hostedzone_id

        Der Besitzer der übergeordneten Zone kann den Datensatz über die Route-53-Konsole oder CLI einfügen.

        • Um den DS-Datensatz mithilfe von AWS CLI einzufügen, erstellt und benennt der Besitzer der übergeordneten Zone eine JSON-Datei ähnlich wie im folgenden Beispiel. Der Besitzer der übergeordneten Zone kann die Datei wie folgt benennen: inserting_ds.json.

          { "HostedZoneId": "$parent_zone_id", "ChangeBatch": { "Comment": "Inserting DS for zone $zone_name", "Changes": [ { "Action": "UPSERT", "ResourceRecordSet": { "Name": "$zone_name", "Type": "DS", "TTL": 300, "ResourceRecords": [ { "Value": "$ds_record_value" } ] } } ] } }

          Führen Sie anschließend den folgenden Befehl aus:

          aws --region us-east-1 route53 change-resource-record-sets --cli-input-json file://inserting_ds.json
        • Um den DS-Datensatz über die Konsole einzufügen,

          Öffnen Sie die Route 53-Konsole unter https://console.aws.amazon.com/route53/.

          Wählen Sie im Navigationsbereich Hosted zones (Gehostete Zonen) und dann Name Ihrer gehosteten Zone und dann die Schaltfäche Create record (Datensatz erstellen) aus. Stellen Sie sicher, dass Sie Einfaches Routing für die Routing policy (Routing-Richtlinie) auswählen.

          In Record name (Datensatzname) geben Sie den gleichen Namen ein wie der $zone_name, wählen Sie DS für den Record type (Datensatztyp) und geben Sie den Wert von $ds_record_value ins Feld Value (Wert) ein und wählen Sie Create records (Datensätze erstellen) aus.

    Rollback: entfernen Sie das DS aus der übergeordneten Zone, warten Sie auf die DS-TTL und setzen Sie dann die Schritte zum Aufbau von Vertrauen zurück. Wenn die übergeordnete Zone auf Route 53 gehostet wird, kann der Besitzer der übergeordneten Zone die Action von UPSERT zu DELETE in der JSON-Datei ändern und die obige Beispiel-CLI erneut ausführen.

  6. Warten Sie, bis die Aktualisierungen basierend auf der TTL für Ihre Domänendatensätze weitergegeben werden.

    Wenn sich die übergeordnete Zone im Route-53-DNS-Service befindet, kann der Besitzer der übergeordneten Zone die vollständige Ausbreitung über die GetChange-API bestätigen.

    Andernfalls können Sie die übergeordnete Zone regelmäßig auf den DS-Datensatz untersuchen und danach weitere 10 Minuten warten, um die Wahrscheinlichkeit zu erhöhen, dass die Einfügung des DS-Datensatzes vollständig propagiert wird. Beachten Sie, dass einige Registraren beispielsweise einmal täglich die DS-Einfügung geplant haben.

Wenn Sie den Delegation Signer (DS)-Datensatz in der übergeordneten Zone einführen, starten die validierten Resolver, die den DS aufgenommen haben, mit der Validierung der Antworten aus der Zone.

Um sicherzustellen, dass die Schritte zur Vertrauensbildung reibungslos verlaufen, führen Sie Folgendes aus:

  1. Finden Sie das maximale NS TTL.

    Es gibt 2 Sätze von NS-Datensätzen, die Ihren Zonen zugeordnet sind:

    • Der NS-Datensatz der Delegation – dies ist der NS-Datensatz für Ihre Zone, die von der übergeordneten Zone gehalten wird. Sie können dies finden, indem Sie die folgenden Unix-Befehle ausführen (wenn Ihre Zone beispiel.com ist, ist die übergeordnete Zone com):

      dig -t NS com

      Wählen Sie einen der NS-Datensätze aus und führen Sie dann Folgendes aus:

      dig @one of the NS records of your parent zone -t NS example.com

      Zum Beispiel:

      dig @b.gtld-servers.net. -t NS example.com

    • Der NS-Datensatz in der Zone – dies ist der NS-Datensatz in Ihrer Zone. Sie können dies suchen, indem Sie den folgenden Unix-Befehl ausführen:

      dig @one of the NS records of your zone -t NS example.com

      Zum Beispiel:

      dig @ns-0000.awsdns-00.co.uk. -t NS example.com

      Beachten Sie die maximale TTL für beide Zonen.

  2. Warten Sie auf den maximalen NS TTL.

    Vor der DS-Einfügung erhalten Resolver eine signierte Antwort, validieren die Signatur jedoch nicht. Wenn der DS-Datensatz eingefügt wird, sehen Resolver ihn erst, wenn der NS-Datensatz für die Zone abläuft. Wenn Resolver den NS-Datensatz erneut abrufen, wird der DS-Datensatz dann ebenfalls zurückgegeben.

    Wenn Ihr Kunde einen Resolver auf einem Host mit einer nicht synchronisierten Uhr ausführt, stellen Sie sicher, dass sich die Uhr innerhalb 1 Stunde nach der richtigen Zeit befindet.

    Nach Abschluss dieses Schritts validieren alle DNSSEC-fähigen Resolver Ihre Zone.

  3. Beachten Sie die Namensauflösung.

    Sie sollten beachten, dass es keine Probleme mit Resolvern gibt, die Ihre Zone validieren. Stellen Sie sicher, dass Sie auch die Zeit berücksichtigen, die Ihre Kunden benötigen, um Ihnen Probleme zu melden.

    Wir empfehlen eine Überwachung für bis zu 2 Wochen.

  4. (Optional) Verlängern Sie die DS- und NS-TTLs.

    Wenn Sie mit der Einrichtung zufrieden sind, können Sie die von Ihnen vorgenommenen TTL- und SOA-Änderungen speichern. Beachten Sie, dass Route 53 die TTL für signierte Zonen auf 1 Woche beschränkt. Weitere Informationen finden Sie unter Konfigurieren der DNSSEC-Signatur in Amazon Route 53.

    Wenn Sie die DS TTL ändern können, empfehlen wir, dass Sie es auf 1 Stunde einstellen.