tachtler:dns_isc_bind_archlinux
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende ÜberarbeitungNächste ÜberarbeitungBeide Seiten der Revision | ||
tachtler:dns_isc_bind_archlinux [2021/11/28 18:22] – [Überprüfung: Schlüssel] klaus | tachtler:dns_isc_bind_archlinux [2023/08/09 10:43] – [Vorbereitung: CSK] klaus | ||
---|---|---|---|
Zeile 30: | Zeile 30: | ||
Folgender Befehl ist zur Installation auszuführen: | Folgender Befehl ist zur Installation auszuführen: | ||
+ | < | ||
+ | # pacman --noconfirm -S bind | ||
+ | </ | ||
+ | ++++ Installationsverlauf | | ||
< | < | ||
# pacman --noconfirm -S bind | # pacman --noconfirm -S bind | ||
Zeile 62: | Zeile 66: | ||
==> root: 19 | ==> root: 19 | ||
</ | </ | ||
+ | ++++ | ||
:!: **HINWEIS** - **Evtl. erschien ein Hinweis, das das Paket '' | :!: **HINWEIS** - **Evtl. erschien ein Hinweis, das das Paket '' | ||
Mit nachfolgendem Befehl kann überprüft werden, was der Inhalt des Pakets '' | Mit nachfolgendem Befehl kann überprüft werden, was der Inhalt des Pakets '' | ||
+ | < | ||
+ | # pacman -Qil bind | ||
+ | </ | ||
+ | ++++ Installierte Dateien | | ||
< | < | ||
# pacman -Qil bind | # pacman -Qil bind | ||
Zeile 506: | Zeile 515: | ||
bind / | bind / | ||
</ | </ | ||
+ | ++++ | ||
Falls nicht durch die Installation bereits erfolgt, müssen nachfolgende **Besitz**- und **Datei**rechte für das Verzeichnis | Falls nicht durch die Installation bereits erfolgt, müssen nachfolgende **Besitz**- und **Datei**rechte für das Verzeichnis | ||
Zeile 1499: | Zeile 1509: | ||
} | } | ||
</ | </ | ||
- | |||
- | :!: **FIXME** - **Hier erfolgen noch Ergänzugen ...** | ||
=== Statistics-Channel === | === Statistics-Channel === | ||
Zeile 2006: | Zeile 2014: | ||
</ | </ | ||
- | ===== DNSsec ===== | + | ===== DNSsec |
DNSSEC gibt es bereits 1997 mit einer ersten Definition der Domain Name System Security Extensions (DNSsec) im [[http:// | DNSSEC gibt es bereits 1997 mit einer ersten Definition der Domain Name System Security Extensions (DNSsec) im [[http:// | ||
Zeile 2027: | Zeile 2035: | ||
(Quelle: [[https:// | (Quelle: [[https:// | ||
- | ==== Vorbereitung ==== | + | ==== Vorbereitung: KSK und ZSK ==== |
Zuerst ist es erforderlich nachfolgendes Verzeichnis anzulegen, welches den KSK (Key Signing Key) und den ZSK (Zone Signing Key) aufnehmen wird, was mit nachfolgendem Befehl durchgeführt werden kann: | Zuerst ist es erforderlich nachfolgendes Verzeichnis anzulegen, welches den KSK (Key Signing Key) und den ZSK (Zone Signing Key) aufnehmen wird, was mit nachfolgendem Befehl durchgeführt werden kann: | ||
Zeile 2161: | Zeile 2169: | ||
</ | </ | ||
- | ==== DNSSec: / | + | ==== DNSSec |
Es gibt die Möglichkeit den DNS-Server [[http:// | Es gibt die Möglichkeit den DNS-Server [[http:// | ||
Zeile 2177: | Zeile 2185: | ||
Nachfolgende Anpassungen der Konfigurationsdatei ''/ | Nachfolgende Anpassungen der Konfigurationsdatei ''/ | ||
- | Nachfolgende **drei** Konfigurationszeilen müssen bei der **__jeweiligen Zonen-Definition__** hinzugefügt werden: | + | Nachfolgende **zwei** Konfigurationszeilen müssen bei der **__jeweiligen Zonen-Definition__** hinzugefügt werden: |
< | < | ||
... | ... | ||
inline-signing yes; | inline-signing yes; | ||
auto-dnssec maintain; | auto-dnssec maintain; | ||
- | key-directory " | ||
... | ... | ||
</ | </ | ||
Zeile 2426: | Zeile 2433: | ||
inline-signing yes; | inline-signing yes; | ||
auto-dnssec maintain; | auto-dnssec maintain; | ||
- | key-directory " | ||
}; | }; | ||
zone " | zone " | ||
Zeile 2433: | Zeile 2439: | ||
inline-signing yes; | inline-signing yes; | ||
auto-dnssec maintain; | auto-dnssec maintain; | ||
- | key-directory | + | }; |
+ | zone " | ||
+ | type master; | ||
+ | file " | ||
+ | inline-signing yes; | ||
+ | auto-dnssec maintain; | ||
+ | }; | ||
+ | zone "167.171.217.88.in-addr.arpa" | ||
+ | type master; | ||
+ | file " | ||
+ | inline-signing yes; | ||
+ | auto-dnssec maintain; | ||
}; | }; | ||
}; | }; | ||
Zeile 2462: | Zeile 2479: | ||
inline-signing yes; | inline-signing yes; | ||
auto-dnssec maintain; | auto-dnssec maintain; | ||
- | key-directory " | ||
}; | }; | ||
- | zone " | + | zone "167.171.217.88.in-addr.arpa" |
type master; | type master; | ||
- | file " | + | file " |
inline-signing yes; | inline-signing yes; | ||
auto-dnssec maintain; | auto-dnssec maintain; | ||
- | key-directory " | ||
}; | }; | ||
}; | }; | ||
</ | </ | ||
- | ==== DNSSec: Überprüfung ==== | + | ==== DNSSec |
Mit nachfolgendem Befehl kann die **syntaktische Richtigkeit** der Konfigurationsdatei: | Mit nachfolgendem Befehl kann die **syntaktische Richtigkeit** der Konfigurationsdatei: | ||
Zeile 2487: | Zeile 2502: | ||
intra.tachtler.net IN internal master | intra.tachtler.net IN internal master | ||
0.168.192.in-addr.arpa IN internal master | 0.168.192.in-addr.arpa IN internal master | ||
+ | tachtler.net IN internal master | ||
+ | 167.171.217.88.in-addr.arpa IN internal master | ||
localhost IN external master | localhost IN external master | ||
0.0.127.in-addr.arpa IN external master | 0.0.127.in-addr.arpa IN external master | ||
Zeile 2492: | Zeile 2509: | ||
. IN external hint | . IN external hint | ||
tachtler.net IN external master | tachtler.net IN external master | ||
- | 171.217.88.in-addr.arpa IN external master | + | 167.171.217.88.in-addr.arpa IN external master |
</ | </ | ||
- | ==== DNSSec: Neustart ==== | + | ==== DNSSec |
Falls die **Basis-Konfiguration** wie oben beschrieben durchgeführt wurde, sollte dem einem **Neustart** nichts im Wege stehen und dies mit nachfolgendem Befehl durchgeführt werden: | Falls die **Basis-Konfiguration** wie oben beschrieben durchgeführt wurde, sollte dem einem **Neustart** nichts im Wege stehen und dies mit nachfolgendem Befehl durchgeführt werden: | ||
Zeile 2502: | Zeile 2519: | ||
</ | </ | ||
- | ==== Überprüfung DNSsec ==== | + | ==== Überprüfung |
Folgende Abfrage sollte nun eine Ausgabe in etwa wie die nachfolgende zur Anzeige bringen: | Folgende Abfrage sollte nun eine Ausgabe in etwa wie die nachfolgende zur Anzeige bringen: | ||
Zeile 2562: | Zeile 2579: | ||
Wie **'' | Wie **'' | ||
- | < | + | < |
# dig @127.0.0.1 rechner10.intra.tachtler.net +dnssec +multi | # dig @127.0.0.1 rechner10.intra.tachtler.net +dnssec +multi | ||
Zeile 2606: | Zeile 2623: | ||
Nachfolgende Abfrage bringt den **DNSKEY** zum Vorschein: | Nachfolgende Abfrage bringt den **DNSKEY** zum Vorschein: | ||
- | < | + | < |
# dig @127.0.0.1 +cd +multi intra.tachtler.net dnskey | # dig @127.0.0.1 +cd +multi intra.tachtler.net dnskey | ||
Zeile 2634: | Zeile 2651: | ||
;; WHEN: Sat Nov 06 08:25:49 CET 2021 | ;; WHEN: Sat Nov 06 08:25:49 CET 2021 | ||
;; MSG SIZE rcvd: 171 | ;; MSG SIZE rcvd: 171 | ||
+ | </ | ||
+ | |||
+ | :!: **HINWEIS** - Eine Abfrage kann nur auf eine Zone erfolgen, nicht auf einen einzelnen DNS-Eintrag. | ||
+ | |||
+ | ===== DNSsec - Variante CSK ===== | ||
+ | |||
+ | :!: **HINWEIS** - Ab [[https:// | ||
+ | |||
+ | DNSSEC gibt es bereits 1997 mit einer ersten Definition der Domain Name System Security Extensions (DNSsec) im [[http:// | ||
+ | |||
+ | Mit DNSsec **signiert der Administrator einer Domain die Namenseinträge in seinem Nameserver kryptografisch.** | ||
+ | |||
+ | Dafür werden zusätzliche Ressource Records angelegt, sodass DNSsec-Antworten länger sind als herkömmliche DNS-Antworten. Die zusätzlichen DNS-Records werden bei Anfragen als Bestandteile des DNS-Response versendet, sodass Empfänger zunächst prüfen können, ob der Response integer, also unverfälscht ist. Weil der Response auch ein Zertifikat enthält (einen signierten kryptografischen Schlüssel), | ||
+ | |||
+ | Mit [[https:// | ||
+ | |||
+ | Mit **'' | ||
+ | |||
+ | Dazu kommt nur noch ein Typ von Schlüsseln zum Einsatz, | ||
+ | * ein **Combined Signing Key** (CSK) zur Weitergabe als DS-Record und zum Signieren der DNS-Records | ||
+ | als privat und öffentlich Schlüssel erstellt. | ||
+ | |||
+ | Mithin hat eine Domain somit nur noch mindestens zwei Schlüssel. Um den gleitenden Wechsel von einem abgelaufenen zu einem neuen Schlüssel zu gewährleisten, | ||
+ | |||
+ | Wenn der **Domain-Betreiber seinen aktuellen CSK dem Administrator der übergeordneten Domain bekannt gegeben hat, kann er mit diesem anschließend alle Schlüssel der eigenen Zone signieren und nutzen.** | ||
+ | |||
+ | Alle anderen Daten der Zone werden ebenfalls mit dem CSK signiert. **Ist ein Nameserver auf DNSsec umgestellt, liefert er ausschließlich signierte Antworten.** | ||
+ | |||
+ | (Quelle: [[https:// | ||
+ | |||
+ | ==== Vorbereitung: | ||
+ | |||
+ | Die **standardmässige** DNSsec-Policy, | ||
+ | |||
+ | Deshalb soll die **'' | ||
+ | |||
+ | Die Vergabe und Konfiguration eine eigenen **'' | ||
+ | * ''/ | ||
+ | und kann wie folgt aussehen: | ||
+ | |||
+ | (**Nur relevanter Ausschnitt**) | ||
+ | <code ini> | ||
+ | dnssec-policy " | ||
+ | keys { | ||
+ | csk key-directory lifetime unlimited algorithm ecdsa256; | ||
+ | }; | ||
+ | nsec3param iterations 0 optout no salt-length 0; | ||
+ | |||
+ | // Key timings | ||
+ | dnskey-ttl PT1H; | ||
+ | publish-safety PT1H; | ||
+ | retire-safety PT1H; | ||
+ | purge-keys P90D; | ||
+ | |||
+ | // Signature timings | ||
+ | signatures-refresh P5D; | ||
+ | signatures-validity P14D; | ||
+ | signatures-validity-dnskey P14D; | ||
+ | | ||
+ | // Zone parameters | ||
+ | max-zone-ttl P1D; | ||
+ | zone-propagation-delay PT5M; | ||
+ | parent-ds-ttl P1D; | ||
+ | parent-propagation-delay PT1H; | ||
+ | }; | ||
+ | </ | ||
+ | |||
+ | **__Erklärungen__**: | ||
+ | |||
+ | * <code ini> | ||
+ | |||
+ | Dies ist die einzige Änderung bzw. Ergänzung zum **'' | ||
+ | * Interationen bei der Erstellung | ||
+ | * Anzeige der Ausgabe | ||
+ | * " | ||
+ | |||
+ | :!: **HINWEIS** - **Nachfolgende Seiten geben über den aktuellen Stand der Benutzung von NSEC3 aus:** | ||
+ | * https:// | ||
+ | * https:// | ||
+ | * https:// | ||
+ | |||
+ | ==== DNSSec CSK: / | ||
+ | |||
+ | Es gibt die Möglichkeit den DNS-Server [[http:// | ||
+ | |||
+ | Dafür gibt es die Option | ||
+ | * '' | ||
+ | |||
+ | Bei der Einstellung '' | ||
+ | |||
+ | Nachfolgende Anpassungen der Konfigurationsdatei ''/ | ||
+ | |||
+ | Nachfolgende **zwei** Konfigurationszeilen müssen bei der **__jeweiligen Zonen-Definition__** hinzugefügt werden: | ||
+ | < | ||
+ | ... | ||
+ | inline-signing yes; | ||
+ | dnssec-policy defaultnsec3; | ||
+ | ... | ||
+ | </ | ||
+ | |||
+ | :!: **ACHTUNG** - **Falls '' | ||
+ | |||
+ | :!: **HINWEIS** - Der DNS-Server [[http:// | ||
+ | |||
+ | Nachfolgend die Konfigurationsdatei mit den durchgeführten Anpassungen, | ||
+ | <code ini> | ||
+ | # egrep -v ' | ||
+ | acl primary_v4 { | ||
+ | 192.168.0.20; | ||
+ | }; | ||
+ | acl interfaces_v4 { | ||
+ | 192.168.0.20; | ||
+ | 127.0.0.1; | ||
+ | }; | ||
+ | acl home_v4 { | ||
+ | 192.168.0.0/ | ||
+ | }; | ||
+ | acl home_v6 { | ||
+ | fd00: | ||
+ | }; | ||
+ | controls { | ||
+ | inet 127.0.0.1 port 953 | ||
+ | allow { 127.0.0.1; } keys { " | ||
+ | }; | ||
+ | include "// | ||
+ | logging { | ||
+ | channel default_log { | ||
+ | file "/ | ||
+ | print-time yes; | ||
+ | print-category yes; | ||
+ | print-severity yes; | ||
+ | severity info; | ||
+ | }; | ||
+ | channel auth_servers_log { | ||
+ | file "/ | ||
+ | print-time yes; | ||
+ | print-category yes; | ||
+ | print-severity yes; | ||
+ | severity info; | ||
+ | }; | ||
+ | channel dnssec_log { | ||
+ | file "/ | ||
+ | print-time yes; | ||
+ | print-category yes; | ||
+ | print-severity yes; | ||
+ | severity info; | ||
+ | }; | ||
+ | channel zone_transfers_log { | ||
+ | file "/ | ||
+ | print-time yes; | ||
+ | print-category yes; | ||
+ | print-severity yes; | ||
+ | severity info; | ||
+ | }; | ||
+ | channel ddns_log { | ||
+ | file "/ | ||
+ | print-time yes; | ||
+ | print-category yes; | ||
+ | print-severity yes; | ||
+ | severity info; | ||
+ | }; | ||
+ | channel client_security_log { | ||
+ | file "/ | ||
+ | print-time yes; | ||
+ | print-category yes; | ||
+ | print-severity yes; | ||
+ | severity info; | ||
+ | }; | ||
+ | channel rate_limiting_log { | ||
+ | file "/ | ||
+ | print-time yes; | ||
+ | print-category yes; | ||
+ | print-severity yes; | ||
+ | severity info; | ||
+ | }; | ||
+ | channel rpz_log { | ||
+ | | ||
+ | print-time yes; | ||
+ | print-category yes; | ||
+ | print-severity yes; | ||
+ | severity info; | ||
+ | }; | ||
+ | channel dnstap_log { | ||
+ | file "/ | ||
+ | print-time yes; | ||
+ | print-category yes; | ||
+ | print-severity yes; | ||
+ | severity info; | ||
+ | }; | ||
+ | channel queries_log { | ||
+ | file "/ | ||
+ | print-time yes; | ||
+ | print-category yes; | ||
+ | print-severity yes; | ||
+ | severity info; | ||
+ | }; | ||
+ | channel query-errors_log { | ||
+ | file "/ | ||
+ | print-time yes; | ||
+ | print-category yes; | ||
+ | print-severity yes; | ||
+ | severity dynamic; | ||
+ | }; | ||
+ | channel default_syslog { | ||
+ | print-time yes; | ||
+ | print-category yes; | ||
+ | print-severity yes; | ||
+ | syslog daemon; | ||
+ | severity info; | ||
+ | }; | ||
+ | channel default_debug { | ||
+ | print-time yes; | ||
+ | print-category yes; | ||
+ | print-severity yes; | ||
+ | file "/ | ||
+ | severity dynamic; | ||
+ | }; | ||
+ | category default { default_syslog; | ||
+ | category config { default_syslog; | ||
+ | category dispatch { default_syslog; | ||
+ | category network { default_syslog; | ||
+ | category general { default_syslog; | ||
+ | category zoneload { default_syslog; | ||
+ | category resolver { auth_servers_log; | ||
+ | category cname { auth_servers_log; | ||
+ | category delegation-only { auth_servers_log; | ||
+ | category edns-disabled { auth_servers_log; | ||
+ | category dnssec { dnssec_log; default_debug; | ||
+ | category notify { zone_transfers_log; | ||
+ | category xfer-in { zone_transfers_log; | ||
+ | category xfer-out { zone_transfers_log; | ||
+ | category update{ ddns_log; default_debug; | ||
+ | category update-security { ddns_log; default_debug; | ||
+ | category client{ client_security_log; | ||
+ | category security { client_security_log; | ||
+ | category rate-limit { rate_limiting_log; | ||
+ | category spill { rate_limiting_log; | ||
+ | category database { rate_limiting_log; | ||
+ | category rpz { rpz_log; default_debug; | ||
+ | category dnstap { dnstap_log; default_debug; | ||
+ | category queries { queries_log; | ||
+ | category query-errors { query-errors_log; | ||
+ | }; | ||
+ | options { | ||
+ | directory "/ | ||
+ | geoip-directory none; | ||
+ | key-directory "/ | ||
+ | managed-keys-directory "/ | ||
+ | new-zones-directory "/ | ||
+ | dump-file "/ | ||
+ | memstatistics-file "/ | ||
+ | pid-file "/ | ||
+ | recursing-file "/ | ||
+ | statistics-file "/ | ||
+ | bindkeys-file "/ | ||
+ | secroots-file "/ | ||
+ | session-keyalg hmac-sha512; | ||
+ | session-keyfile "/ | ||
+ | port 53; | ||
+ | dnssec-update-mode maintain; | ||
+ | allow-new-zones no; | ||
+ | memstatistics yes; | ||
+ | recursion yes; | ||
+ | cookie-algorithm aes; | ||
+ | auto-dnssec off; | ||
+ | dnssec-validation yes; | ||
+ | querylog no; | ||
+ | check-names primary warn; | ||
+ | allow-notify { | ||
+ | localhost; | ||
+ | primary_v4; | ||
+ | }; | ||
+ | allow-query { | ||
+ | localhost; | ||
+ | home_v4; | ||
+ | }; | ||
+ | allow-query-on { | ||
+ | localhost; | ||
+ | primary_v4; | ||
+ | }; | ||
+ | allow-query-cache { | ||
+ | localhost; | ||
+ | home_v4; | ||
+ | }; | ||
+ | allow-query-cache-on { | ||
+ | localhost; | ||
+ | home_v4; | ||
+ | }; | ||
+ | allow-recursion { | ||
+ | localhost; | ||
+ | home_v4; | ||
+ | }; | ||
+ | allow-recursion-on { | ||
+ | localhost; | ||
+ | primary_v4; | ||
+ | }; | ||
+ | allow-update { none; }; | ||
+ | allow-update-forwarding { none; }; | ||
+ | allow-transfer { | ||
+ | localhost; | ||
+ | primary_v4; | ||
+ | }; | ||
+ | listen-on port 53 { interfaces_v4; | ||
+ | query-source address * port *; | ||
+ | max-cache-size 60%; | ||
+ | lame-ttl 0; | ||
+ | max-rsa-exponent-size 4096; | ||
+ | version none; | ||
+ | hostname none; | ||
+ | server-id none; | ||
+ | }; | ||
+ | statistics-channels { | ||
+ | inet 192.168.0.20 port 80 allow { | ||
+ | primary_v4; | ||
+ | }; | ||
+ | }; | ||
+ | view " | ||
+ | match-clients { | ||
+ | localhost; | ||
+ | home_v4; | ||
+ | }; | ||
+ | zone " | ||
+ | type master; | ||
+ | file " | ||
+ | }; | ||
+ | zone " | ||
+ | type master; | ||
+ | file " | ||
+ | }; | ||
+ | zone " | ||
+ | type master; | ||
+ | file " | ||
+ | }; | ||
+ | zone " | ||
+ | type hint; | ||
+ | file " | ||
+ | }; | ||
+ | zone " | ||
+ | type master; | ||
+ | file " | ||
+ | dnssec-policy defaultnsec3; | ||
+ | }; | ||
+ | zone " | ||
+ | type master; | ||
+ | file " | ||
+ | dnssec-policy defaultnsec3; | ||
+ | inline-signing yes; | ||
+ | }; | ||
+ | zone " | ||
+ | type master; | ||
+ | file " | ||
+ | dnssec-policy defaultnsec3; | ||
+ | inline-signing yes; | ||
+ | }; | ||
+ | zone " | ||
+ | type master; | ||
+ | file " | ||
+ | dnssec-policy defaultnsec3; | ||
+ | inline-signing yes; | ||
+ | }; | ||
+ | }; | ||
+ | view " | ||
+ | match-clients { | ||
+ | localhost; | ||
+ | !home_v4; | ||
+ | }; | ||
+ | zone " | ||
+ | type master; | ||
+ | file " | ||
+ | }; | ||
+ | zone " | ||
+ | type master; | ||
+ | file " | ||
+ | }; | ||
+ | zone " | ||
+ | type master; | ||
+ | file " | ||
+ | }; | ||
+ | zone " | ||
+ | type hint; | ||
+ | file " | ||
+ | }; | ||
+ | zone " | ||
+ | type master; | ||
+ | file " | ||
+ | dnssec-policy defaultnsec3; | ||
+ | inline-signing yes; | ||
+ | }; | ||
+ | zone " | ||
+ | type master; | ||
+ | file " | ||
+ | dnssec-policy defaultnsec3; | ||
+ | inline-signing yes; | ||
+ | }; | ||
+ | }; | ||
+ | </ | ||
+ | |||
+ | ==== DNSSec CSK: Überprüfung ==== | ||
+ | |||
+ | Mit nachfolgendem Befehl kann die **syntaktische Richtigkeit** der Konfigurationsdatei: | ||
+ | * ''/ | ||
+ | durchgeführt werden und sollte keine Meldungen ausgeben, wenn die Konfigurationsdatei **syntaktische richtig** ist: | ||
+ | < | ||
+ | # named-checkconf -l -z | ||
+ | localhost IN internal master | ||
+ | 0.0.127.in-addr.arpa IN internal master | ||
+ | 1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa IN internal master | ||
+ | . IN internal hint | ||
+ | intra.tachtler.net IN internal master | ||
+ | 0.168.192.in-addr.arpa IN internal master | ||
+ | tachtler.net IN internal master | ||
+ | 167.171.217.88.in-addr.arpa IN internal master | ||
+ | localhost IN external master | ||
+ | 0.0.127.in-addr.arpa IN external master | ||
+ | 1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa IN external master | ||
+ | . IN external hint | ||
+ | tachtler.net IN external master | ||
+ | 167.171.217.88.in-addr.arpa IN external master | ||
+ | </ | ||
+ | |||
+ | ==== DNSSec CSK: Neustart ==== | ||
+ | |||
+ | Falls die **Basis-Konfiguration** wie oben beschrieben durchgeführt wurde, sollte dem einem **Neustart** nichts im Wege stehen und dies mit nachfolgendem Befehl durchgeführt werden: | ||
+ | < | ||
+ | # systemctl restart named.service | ||
+ | </ | ||
+ | |||
+ | ==== DNSSec CSK: Schlüsselerstellung ==== | ||
+ | |||
+ | Nachdem kein Schlüsselmaterial erstellt worden ist, erscheinen nachfolgende Fehlermeldungen beim ersten Start im Log, welches mit nachfolgendem Befehl durchsucht werden kann: | ||
+ | < | ||
+ | Jun 17 14:27:58 vml020 named[2832]: | ||
+ | IN/ | ||
+ | Jun 17 14:27:58 vml020 named[2832]: | ||
+ | IN/ | ||
+ | Jun 17 14:27:58 vml020 named[2832]: | ||
+ | IN/ | ||
+ | Jun 17 14:27:58 vml020 named[2832]: | ||
+ | IN/ | ||
+ | Jun 17 14:27:58 vml020 named[2832]: | ||
+ | addr.arpa/ | ||
+ | Jun 17 14:27:58 vml020 named[2832]: | ||
+ | addr.arpa/ | ||
+ | </ | ||
+ | |||
+ | Dies ist nur das Ergebnis der Feststellung, | ||
+ | |||
+ | Das Ergebnis der **__automatischen__ Schlüsselerstellung** kann durch Auflistung des Verzeichnisses: | ||
+ | * ''/ | ||
+ | überprüft werden uns sollte verschiedenes Schlüsselmaterial in etwa wie folgt zur Anzeige bringen: | ||
+ | < | ||
+ | # ls -l / | ||
+ | total 48 | ||
+ | -rw-r--r-- 1 named named 425 Jun 17 18:27 K0.168.192.in-addr.arpa.+013+21339.key | ||
+ | -rw------- 1 named named 215 Jun 17 18:27 K0.168.192.in-addr.arpa.+013+21339.private | ||
+ | -rw-r--r-- 1 named named 653 Jun 17 18:27 K0.168.192.in-addr.arpa.+013+21339.state | ||
+ | -rw-r--r-- 1 named named 435 Jun 17 18:27 K167.171.217.88.in-addr.arpa.+013+16299.key | ||
+ | -rw------- 1 named named 215 Jun 17 18:27 K167.171.217.88.in-addr.arpa.+013+16299.private | ||
+ | -rw-r--r-- 1 named named 658 Jun 17 18:27 K167.171.217.88.in-addr.arpa.+013+16299.state | ||
+ | -rw-r--r-- 1 named named 417 Jun 17 18:27 Kintra.tachtler.net.+013+42607.key | ||
+ | -rw------- 1 named named 215 Jun 17 18:27 Kintra.tachtler.net.+013+42607.private | ||
+ | -rw-r--r-- 1 named named 649 Jun 17 18:27 Kintra.tachtler.net.+013+42607.state | ||
+ | -rw-r--r-- 1 named named 405 Jun 17 18:27 Ktachtler.net.+013+15659.key | ||
+ | -rw------- 1 named named 215 Jun 17 18:27 Ktachtler.net.+013+15659.private | ||
+ | -rw-r--r-- 1 named named 643 Jun 17 18:27 Ktachtler.net.+013+15659.state | ||
+ | </ | ||
+ | |||
+ | ==== Überprüfung CSK: DNSsec ==== | ||
+ | |||
+ | Folgende Abfrage sollte nun eine Ausgabe in etwa wie die nachfolgende zur Anzeige bringen: | ||
+ | < | ||
+ | # dig @127.0.0.1 rechner10.intra.tachtler.net +dnssec +multi | ||
+ | |||
+ | ; <<>> | ||
+ | ; (1 server found) | ||
+ | ;; global options: +cmd | ||
+ | ;; Got answer: | ||
+ | ;; ->> | ||
+ | ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1 | ||
+ | |||
+ | ;; OPT PSEUDOSECTION: | ||
+ | ; EDNS: version: 0, flags: do; udp: 1232 | ||
+ | ; COOKIE: c15dc5b0231f0a5d7f46930b62ac764403fd2807928addb2 (good) | ||
+ | ;; QUESTION SECTION: | ||
+ | ; | ||
+ | |||
+ | ;; ANSWER SECTION: | ||
+ | rechner10.intra.tachtler.net. 10800 IN A 192.168.0.10 | ||
+ | rechner10.intra.tachtler.net. 10800 IN RRSIG A 13 4 10800 ( | ||
+ | 20220626045317 20220617112758 42607 intra.tachtler.net. | ||
+ | q6rSagtdy9bb69ED/ | ||
+ | fqAgkDgeV7I+K+4NfUW+Y+LAaSHNwAtPoLwqstLuoQ== ) | ||
+ | |||
+ | ;; Query time: 0 msec | ||
+ | ;; SERVER: 127.0.0.1# | ||
+ | ;; WHEN: Fri Jun 17 18:40:36 CEST 2022 | ||
+ | ;; MSG SIZE rcvd: 215 | ||
+ | |||
+ | </ | ||
+ | |||
+ | :!: **HINWEIS** - Das '' | ||
+ | |||
+ | Eine erweitere Ansicht kann durch Änderung nachfolgender **Option** erzeugt werden: | ||
+ | <code ini> | ||
+ | // This option controls the addition of records to the authority and | ||
+ | // additional sections of responses. The default is no-auth-recursive. | ||
+ | minimal-responses no; | ||
+ | </ | ||
+ | |||
+ | **__Nachfolgende Optionen sind möglich__**: | ||
+ | |||
+ | * <code ini> | ||
+ | |||
+ | Der Server ist bei der Erstellung von Antworten so vollständig wie möglich. | ||
+ | |||
+ | * <code ini> | ||
+ | |||
+ | Der Server fügt nur dann Datensätze zu den Autoritäts- und Zusatzabschnitten hinzu, wenn solche Datensätze vom DNS-Protokoll verlangt werden (z. B. bei der Rückgabe von Delegationen oder negativen Antworten). Dies bietet die beste Serverleistung, | ||
+ | |||
+ | * <code ini> | ||
+ | |||
+ | Der Server lässt Datensätze aus dem " | ||
+ | |||
+ | * <code ini> | ||
+ | |||
+ | Wie **'' | ||
+ | |||
+ | < | ||
+ | # dig @127.0.0.1 rechner10.intra.tachtler.net +dnssec +multi | ||
+ | |||
+ | ; <<>> | ||
+ | ; (1 server found) | ||
+ | ;; global options: +cmd | ||
+ | ;; Got answer: | ||
+ | ;; ->> | ||
+ | ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 2, ADDITIONAL: 3 | ||
+ | |||
+ | ;; OPT PSEUDOSECTION: | ||
+ | ; EDNS: version: 0, flags: do; udp: 1232 | ||
+ | ; COOKIE: 6e4a0a4e229380d7c64f7fae62ac76e0189e8716e37022f0 (good) | ||
+ | ;; QUESTION SECTION: | ||
+ | ; | ||
+ | |||
+ | ;; ANSWER SECTION: | ||
+ | rechner10.intra.tachtler.net. 10800 IN A 192.168.0.10 | ||
+ | rechner10.intra.tachtler.net. 10800 IN RRSIG A 13 4 10800 ( | ||
+ | 20220626045317 20220617112758 42607 intra.tachtler.net. | ||
+ | q6rSagtdy9bb69ED/ | ||
+ | fqAgkDgeV7I+K+4NfUW+Y+LAaSHNwAtPoLwqstLuoQ== ) | ||
+ | |||
+ | ;; AUTHORITY SECTION: | ||
+ | intra.tachtler.net. 10800 IN NS ns1.intra.tachtler.net. | ||
+ | intra.tachtler.net. 10800 IN RRSIG NS 13 3 10800 ( | ||
+ | 20220626045317 20220617112758 42607 intra.tachtler.net. | ||
+ | 7AzDTZE5JcJ+RCu6S8bq4OSuk4HEgdht5yM+0841oC+b | ||
+ | fOaZ8aVSVzG+Dmp744YsOJmFRSJ18HAGJmlGkJ/ | ||
+ | |||
+ | ;; ADDITIONAL SECTION: | ||
+ | ns1.intra.tachtler.net. 10800 IN A 192.168.0.20 | ||
+ | ns1.intra.tachtler.net. 10800 IN RRSIG A 13 4 10800 ( | ||
+ | 20220626045317 20220617112758 42607 intra.tachtler.net. | ||
+ | 0dBJWwufYcPPMiphUhF3hOQxBRABxfuRpJtHMZMgftBp | ||
+ | 9+ucj7ksGtVguiekxPdvUy9ekxqKkN0QdDlh1IHb0A== ) | ||
+ | |||
+ | ;; Query time: 10 msec | ||
+ | ;; SERVER: 127.0.0.1# | ||
+ | ;; WHEN: Fri Jun 17 18:43:12 CEST 2022 | ||
+ | ;; MSG SIZE rcvd: 477 | ||
+ | |||
+ | </ | ||
+ | |||
+ | Nachfolgende Abfrage bringt den **DNSKEY** zum Vorschein: | ||
+ | < | ||
+ | # dig @127.0.0.1 +cd +multi intra.tachtler.net dnskey | ||
+ | |||
+ | ; <<>> | ||
+ | ; (1 server found) | ||
+ | ;; global options: +cmd | ||
+ | ;; Got answer: | ||
+ | ;; ->> | ||
+ | ;; flags: qr aa rd ra cd; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 | ||
+ | |||
+ | ;; OPT PSEUDOSECTION: | ||
+ | ; EDNS: version: 0, flags:; udp: 1232 | ||
+ | ; COOKIE: 159da8d05abb887dc1ed847562ac77046457c9a3b5751b4f (good) | ||
+ | ;; QUESTION SECTION: | ||
+ | ; | ||
+ | |||
+ | ;; ANSWER SECTION: | ||
+ | intra.tachtler.net. 3600 IN DNSKEY 257 3 13 ( | ||
+ | cwuwXubEW8if4s/ | ||
+ | dObg3GD3KN+KQLkRQE5QMxcP86il8GWWGeEYIv1lfw== | ||
+ | ) ; KSK; alg = ECDSAP256SHA256 ; key id = 42607 | ||
+ | |||
+ | ;; Query time: 0 msec | ||
+ | ;; SERVER: 127.0.0.1# | ||
+ | ;; WHEN: Fri Jun 17 14:43:48 CEST 2022 | ||
+ | ;; MSG SIZE rcvd: 155 | ||
+ | |||
+ | |||
</ | </ | ||
Zeile 2680: | Zeile 3297: | ||
# ddns-confgen -q -a hmac-sha512 -z 0.168.192.in-addr.arpa > / | # ddns-confgen -q -a hmac-sha512 -z 0.168.192.in-addr.arpa > / | ||
# ddns-confgen -q -a hmac-sha512 -z tachtler.net > / | # ddns-confgen -q -a hmac-sha512 -z tachtler.net > / | ||
- | # ddns-confgen -q -a hmac-sha512 -z 171.217.88.in-addr.arpa > / | + | # ddns-confgen -q -a hmac-sha512 -z 167.171.217.88.in-addr.arpa > / |
</ | </ | ||
Zeile 2688: | Zeile 3305: | ||
total 16 | total 16 | ||
-rw-r--r-- 1 root root 167 Nov 6 09:33 ddns-key.0.168.192.in-addr.arpa.key | -rw-r--r-- 1 root root 167 Nov 6 09:33 ddns-key.0.168.192.in-addr.arpa.key | ||
- | -rw-r--r-- 1 root root 168 Nov 6 09:33 ddns-key.171.217.88.in-addr.arpa.key | + | -rw-r--r-- 1 root root 168 Nov 6 09:33 ddns-key.167.171.217.88.in-addr.arpa.key |
-rw-r--r-- 1 root root 163 Nov 6 09:33 ddns-key.intra.tachtler.net.key | -rw-r--r-- 1 root root 163 Nov 6 09:33 ddns-key.intra.tachtler.net.key | ||
-rw-r--r-- 1 root root 157 Nov 6 09:33 ddns-key.tachtler.net.key | -rw-r--r-- 1 root root 157 Nov 6 09:33 ddns-key.tachtler.net.key | ||
Zeile 2707: | Zeile 3324: | ||
total 16 | total 16 | ||
-rw-r----- 1 root named 167 Nov 6 09:33 ddns-key.0.168.192.in-addr.arpa.key | -rw-r----- 1 root named 167 Nov 6 09:33 ddns-key.0.168.192.in-addr.arpa.key | ||
- | -rw-r----- 1 root named 168 Nov 6 09:33 ddns-key.171.217.88.in-addr.arpa.key | + | -rw-r----- 1 root named 168 Nov 6 09:33 ddns-key.167.171.217.88.in-addr.arpa.key |
-rw-r----- 1 root named 163 Nov 6 09:33 ddns-key.intra.tachtler.net.key | -rw-r----- 1 root named 163 Nov 6 09:33 ddns-key.intra.tachtler.net.key | ||
-rw-r----- 1 root named 157 Nov 6 09:33 ddns-key.tachtler.net.key | -rw-r----- 1 root named 157 Nov 6 09:33 ddns-key.tachtler.net.key | ||
Zeile 2721: | Zeile 3338: | ||
secret " | secret " | ||
}; | }; | ||
- | key " | + | key "167.171.217.88.in-addr.arpa" |
algorithm hmac-sha512; | algorithm hmac-sha512; | ||
secret " | secret " | ||
Zeile 2742: | Zeile 3359: | ||
include "/ | include "/ | ||
include "/ | include "/ | ||
- | include "/ | + | include "/ |
- | include "/ | + | include "/ |
... | ... | ||
... | ... | ||
Zeile 2753: | Zeile 3370: | ||
allow-update { key " | allow-update { key " | ||
... | ... | ||
- | allow-update { key " | + | allow-update { key " |
... | ... | ||
</ | </ | ||
Zeile 2903: | Zeile 3520: | ||
DNS-Server Zonenkonfigurationsdatei auf Fehler überprüfen: | DNS-Server Zonenkonfigurationsdatei auf Fehler überprüfen: | ||
- | **Zonen**-Datei für die **Forward**-Auflösung - ''/ | + | **Zonen**-Datei für die **Forward**-Auflösung - ''/ |
< | < | ||
- | # named-checkzone intra.tachtler.net / | + | # named-checkzone intra.tachtler.net / |
</ | </ | ||
- | **Zonen**-Datei für die **Reverse**-Auflösung - ''/ | + | **Zonen**-Datei für die **Reverse**-Auflösung - ''/ |
< | < | ||
- | # named-checkzone 0.168.192 / | + | # named-checkzone 0.168.192 / |
</ | </ | ||
tachtler/dns_isc_bind_archlinux.txt · Zuletzt geändert: 2023/08/09 12:58 von klaus