{"id":2097,"date":"2019-02-25T18:15:53","date_gmt":"2019-02-26T00:15:53","guid":{"rendered":"https:\/\/www.lastdragon.net\/?p=2097"},"modified":"2019-02-25T18:22:49","modified_gmt":"2019-02-26T00:22:49","slug":"dnssec-que-es-y-configurandolo-en-bind9-en-centos-y-redhat-7-x","status":"publish","type":"post","link":"https:\/\/www.lastdragon.net\/?p=2097","title":{"rendered":"DNSSEC \u00bf Que es ? Y como se configura en Bind9 en CentOS y RedHat 7.x"},"content":{"rendered":"<p>Segun el articulo de ADSL ZONE &#8211;\u00a0<a href=\"https:\/\/www.adslzone.net\/2019\/02\/25\/implementacion-dnssec-urgente\/amp\/?__twitter_impression=true\">Internet y sus usuarios necesitan DNSSEC, los ataques DNS no cesan<\/a><\/p>\n<p>Es requerido que la mayor\u00eda de sitios empiece a usar DNSSEC como complemento al https, pero\u2026<\/p>\n<p><strong>\u00bf Que es DNSSEC y como funciona ?<\/strong><\/p>\n<p>DNSSEC es (<em>Domain Name System Security Extensions<\/em>) es para el DNS algo similar a un parche que evita el DNS Spoofing<\/p>\n<p>se a\u00f1aden firmas digitales en las partes implicadas: dominio, en el registrar y en el servidor DNS. El navegador comprueba los servidores DNS, Si las firmas digitales p\u00fablicas que recibe coinciden con las publicadas en el registrar, el navegador dar\u00e1 por v\u00e1lida la solicitud evitando la redirecci\u00f3n a sitios maliciosos si las llaves no coinciden.<\/p>\n<p><strong>Pasos para configurar un dominio en BIND9 usando CentOS o RedHat 7.x<\/strong><\/p>\n<p>En la carpeta donde esta el archivo .host del dominio o zona a segurar, para este ejemplo se usara el dominio lastdragon.net<\/p>\n<p><strong>1 Generar llaves<\/strong><\/p>\n<blockquote><p>dnssec-keygen -a RSASHA256 -b 4096 -n ZONE lastdragon.net<br \/>\ndnssec-keygen -f KSK -a RSASHA256 -b 4096 -n ZONE lastdragon.net<\/p><\/blockquote>\n<p>El resultado sera 4 archivos adicoiales ( Similares a estos )<\/p>\n<p>-rw-r&#8211;r&#8211; 1 root root 956 feb 25 18:48 Klastdragon.net.+007+02169.key<br \/>\n-rw&#8212;&#8212;- 1 root root 3319 feb 25 18:48 Klastdragon.net.+007+02169.private<br \/>\n-rw-r&#8211;r&#8211; 1 root root 958 feb 25 18:48 Klastdragon.net.+007+24215.key<br \/>\n-rw&#8212;&#8212;- 1 root root 3319 feb 25 18:48 Klastdragon.net.+007+24215.private<\/p>\n<p><strong>2 el contenido de los archivos key va al final del archivo lastdragon.net.hosts<\/strong><\/p>\n<p>Se puede inyectar el contenido con un cat, asi:<\/p>\n<blockquote><p>cat Klastdragon.net.+007+*.key &gt;&gt; lastdragon.net.hosts<\/p><\/blockquote>\n<p><strong>3 Firmar la zona<\/strong><\/p>\n<blockquote><p>dnssec-signzone -A -3 $(head -c 1000 \/dev\/random | sha256sum | cut -b 1-16) -N INCREMENT -o lastdragon.net -t lastdragon.net.hosts<\/p><\/blockquote>\n<p>El resultado sera similar a:<\/p>\n<p>Verifying the zone using the following algorithms: NSEC3RSASHA1.<br \/>\nZone fully signed:<br \/>\nAlgorithm: NSEC3RSASHA1: KSKs: 1 active, 0 stand-by, 0 revoked<br \/>\nZSKs: 1 active, 0 stand-by, 0 revoked<br \/>\nlastdragon.net.hosts.signed<br \/>\nSignatures generated: 27<br \/>\nSignatures retained: 0<br \/>\nSignatures dropped: 0<br \/>\nSignatures successfully verified: 0<br \/>\nSignatures unsuccessfully verified: 0<br \/>\nSigning time in seconds: 0.168<br \/>\nSignatures per second: 159.821<br \/>\nRuntime in seconds: 0.179<\/p>\n<p><strong>4 named.conf<\/strong><\/p>\n<p>En las opciones del named.conf deben ir las siguientes 3 lineas:<\/p>\n<blockquote><p>dnssec-enable yes;<br \/>\ndnssec-validation yes;<br \/>\ndnssec-lookaside auto;<\/p><\/blockquote>\n<p>ejemplo:<\/p>\n<blockquote><p>acl recursive-clients { 127.0.0.1; };<\/p>\n<p>options {<br \/>\ndirectory &#8220;\/var\/named&#8221;;<br \/>\ndump-file &#8220;\/var\/named\/data\/cache_dump.db&#8221;;<br \/>\nstatistics-file &#8220;\/var\/named\/data\/named_stats.txt&#8221;;<br \/>\nmemstatistics-file &#8220;\/var\/named\/data\/named_mem_stats.txt&#8221;;<\/p>\n<p>allow-recursion { recursive-clients; };<br \/>\nallow-query { any; };<\/p>\n<p>\/*<br \/>\n&#8211; If you are building an AUTHORITATIVE DNS server, do NOT enable recursion.<br \/>\n&#8211; If you are building a RECURSIVE (caching) DNS server, you need to enable<br \/>\nrecursion.<br \/>\n&#8211; If your recursive DNS server has a public IP address, you MUST enable access<br \/>\ncontrol to limit queries to your legitimate users. Failing to do so will<br \/>\ncause your server to become part of large scale DNS amplification<br \/>\nattacks. Implementing BCP38 within your network would greatly<br \/>\nreduce such attack surface<br \/>\n*\/<br \/>\nrecursion yes;<\/p>\n<p>dnssec-enable yes;<br \/>\ndnssec-validation yes;<br \/>\ndnssec-lookaside auto;<\/p>\n<p>\/* Path to ISC DLV key *\/<br \/>\nbindkeys-file &#8220;\/etc\/named.iscdlv.key&#8221;;<\/p>\n<p>managed-keys-directory &#8220;\/var\/named\/dynamic&#8221;;<\/p>\n<p>pid-file &#8220;\/run\/named\/named.pid&#8221;;<br \/>\nsession-keyfile &#8220;\/run\/named\/session.key&#8221;;<br \/>\n};<\/p>\n<p>En la zone debe usarse el archivo hosts firmado ejemplo:<\/p>\n<p>zone &#8220;lastdragon.net&#8221; {<br \/>\ntype master;<br \/>\nfile &#8220;\/var\/named\/lastdragon.net.hosts.signed&#8221;;<br \/>\n};<\/p><\/blockquote>\n<p><strong>5 Ir al registrar para agregar registros DS, el hash puede ser encontrado el archivo<\/strong><\/p>\n<p><em>dsset-lastdragon.net.<\/em><\/p>\n<p>La linea uno contendr\u00e1 algo como:<\/p>\n<blockquote><p>lastdragon.net. IN DS 49405 8 1 696C71F1C410029346F309F45464F308A4F921AE<\/p><\/blockquote>\n<p>de esa linea:<\/p>\n<p><em>key-tag es 49405 el algoritmo que se uso fue sha256 tipo de digest sha1<\/em><\/p>\n<p>en el whois debe salir algo como:<\/p>\n<blockquote><p>DNSSEC: signedDelegation<br \/>\nDNSSEC DS Data: 49405 8 1 696C71F1C410029346F309F45464F308A4F921AE<\/p><\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>Segun el articulo de ADSL ZONE &#8211;\u00a0Internet y sus usuarios necesitan DNSSEC, los ataques DNS no cesan Es requerido que la mayor\u00eda de sitios empiece a usar DNSSEC como complemento al https, pero\u2026 \u00bf Que es DNSSEC y como funciona ? DNSSEC es (Domain Name System Security Extensions) es para el DNS algo similar a&#8230;<\/p>\n","protected":false},"author":1,"featured_media":2101,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[],"class_list":["post-2097","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-consultoria-y-manuales"],"_links":{"self":[{"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/posts\/2097","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2097"}],"version-history":[{"count":6,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/posts\/2097\/revisions"}],"predecessor-version":[{"id":2105,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/posts\/2097\/revisions\/2105"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=\/wp\/v2\/media\/2101"}],"wp:attachment":[{"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2097"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2097"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.lastdragon.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2097"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}