<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Dnssec on Miek Gieben</title>
    <link>https://miek.nl/tags/dnssec/</link>
    <description>Recent content in Dnssec on Miek Gieben</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <copyright>© Copyright 2007-2024 Miek Gieben</copyright>
    <lastBuildDate>Sat, 04 Nov 2023 15:18:59 +0100</lastBuildDate>
    <atom:link href="https://miek.nl/tags/dnssec/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>DNSSEC Too Complex</title>
      <link>https://miek.nl/2023/november/04/dnssec-too-complex/</link>
      <pubDate>Sat, 04 Nov 2023 15:18:59 +0100</pubDate>
      <guid>https://miek.nl/2023/november/04/dnssec-too-complex/</guid>
      <description>&lt;figure class=&#34;left&#34; &gt;&#xA;    &lt;img src=&#34;https://miek.nl/images/2023/bike-meme-dnssec.jpg&#34;  loading=&#34;lazy&#34;  /&gt;&#xA;    &#xA;      &lt;figcaption class=&#34;center&#34; &gt;Deploying DNSSEC.&lt;/figcaption&gt;&#xA;    &#xA;  &lt;/figure&gt;&#xA;&#xA;&#xA;&lt;p&gt;Even though I co-authored &lt;a href=&#34;https://datatracker.ietf.org/doc/html/rfc4641&#34;&gt;RFC 4641&lt;/a&gt;, laying out how&#xA;you should run DNSSEC - I think in retrospect that BCP is way too complex, ah the sin of youth.&lt;/p&gt;&#xA;&lt;p&gt;You should (if you want to run DNSSEC) run with a single key (called common-signing-key; CSK) and&#xA;never roll your keys. This is what &lt;a href=&#34;https://coredns.io&#34;&gt;CoreDNS&amp;rsquo;&lt;/a&gt;&#xA;&lt;a href=&#34;https://coredns.io/plugins/sign/&#34;&gt;sign&lt;/a&gt; plugin implements and what I use.&lt;/p&gt;&#xA;&lt;p&gt;Also see &lt;a href=&#34;https://mastodon.cloud/@miek/111352709824615368&#34;&gt;this Mastodon post&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>A Working Sign Plugin in CoreDNS</title>
      <link>https://miek.nl/2019/august/03/a-working-sign-plugin-in-coredns/</link>
      <pubDate>Sat, 03 Aug 2019 08:10:10 +0000</pubDate>
      <guid>https://miek.nl/2019/august/03/a-working-sign-plugin-in-coredns/</guid>
      <description>&lt;p&gt;This &lt;em&gt;sign&lt;/em&gt; plugin is working! I&amp;rsquo;m running it live for miek.nl on my servers to test it out.&#xA;(See &lt;a href=&#34;https://github.com/coredns/coredns/tree/dnssec-file/plugin/sign&#34;&gt;this branch&lt;/a&gt; or &lt;a href=&#34;https://github.com/coredns/coredns/tree/master/plugin/sign&#34;&gt;this&#xA;one&lt;/a&gt; after it is merged into&#xA;master.)&lt;/p&gt;&#xA;&lt;p&gt;To use the &lt;em&gt;sign&lt;/em&gt; plugin, I only need a few extra lines in my Corefile:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-txt&#34; data-lang=&#34;txt&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;miek.nl {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    file /var/lib/coredns/db.miek.nl.signed&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    sign /etc/coredns/zones/miek.nl {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        key file /etc/coredns/zones/keys/Kmiek.nl.+008+33694&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        directory /var/lib/coredns&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    }&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;This resigns the miek.nl zone ever so often. Logging will tell you what&amp;rsquo;s happening with your&#xA;zonefile. In this case this it skips signing:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Signing in CoreDNS</title>
      <link>https://miek.nl/2019/july/01/signing-in-coredns/</link>
      <pubDate>Mon, 01 Jul 2019 17:27:12 +0000</pubDate>
      <guid>https://miek.nl/2019/july/01/signing-in-coredns/</guid>
      <description>&lt;p&gt;I&amp;rsquo;m pondering adding a new &lt;a href=&#34;https://coredns.io/plugins&#34;&gt;plugin&lt;/a&gt; to CoreDNS that automatically&#xA;signs DNS zones.&lt;/p&gt;&#xA;&lt;p&gt;This new plugin will be called &lt;a href=&#34;https://github.com/coredns/coredns/pull/2949&#34;&gt;&lt;em&gt;sign&lt;/em&gt;&lt;/a&gt;. I tried to&#xA;prototype the README.md in that PR, as I like to start with the documentation when designing something&#xA;new. It will do the bare minimum to give you &amp;ldquo;good DNSSEC&amp;rdquo; and will not implement key rollovers, nor&#xA;the KSK/ZSK split. It will, however, add CDS records to your zone for easier interaction with your&#xA;parent zone. Sign with a CSK, and use a proper new algorithm like ECDSA.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Starting with CoreDNS</title>
      <link>https://miek.nl/2016/april/27/starting-with-coredns/</link>
      <pubDate>Wed, 27 Apr 2016 07:30:39 +0100</pubDate>
      <guid>https://miek.nl/2016/april/27/starting-with-coredns/</guid>
      <description>&lt;p&gt;This post talks you through getting and setting up &lt;a href=&#34;https://github.com/miekg/coredns&#34;&gt;CoreDNS&lt;/a&gt;&#xA;with a small zone file that it will serve. CoreDNS is a nameserver that is very flexible because it can&#xA;chain different kinds of middleware. From the README:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;CoreDNS aims to be a fast and flexible DNS server. The keyword here is &lt;em&gt;flexible&lt;/em&gt;, with CoreDNS you&#xA;are able to do what you want with your DNS data. And if not: write a middleware!&lt;/p&gt;</description>
    </item>
    <item>
      <title>Almost ready to dogfood CoreDNS</title>
      <link>https://miek.nl/2016/march/28/almost-ready-to-dogfood-coredns/</link>
      <pubDate>Mon, 28 Mar 2016 21:47:02 +0100</pubDate>
      <guid>https://miek.nl/2016/march/28/almost-ready-to-dogfood-coredns/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://github.com/miekg/coredns&#34;&gt;CoreDNS&lt;/a&gt; is gaining more and more features, and&#xA;bug &lt;a href=&#34;https://github.com/miekg/coredns/issues/15&#34;&gt;#15, allowing CoreDNS to replace BIND9 in my home&#xA;setup&lt;/a&gt;, is almost attainable. With a pre-signed&#xA;DNSSEC zone (I just use CRON, don&amp;rsquo;t do key rollovers) and the following Corefile, CoreDNS is acting&#xA;standards compliant already:&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;.:1053 {&#xA;    errors stdout&#xA;    log stdout&#xA;    file miek.nl.signed miek.nl {&#xA;        transfer out&#xA;    }&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Start it, query it:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-txt&#34; data-lang=&#34;txt&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;% dig @localhost -p 1053 SOA miek.nl +short&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;linode.atoom.net. miek.miek.nl. 1459138381 14400 3600 604800 14400&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;em&gt;And!&lt;/em&gt; DNSSEC:&lt;/p&gt;</description>
    </item>
    <item>
      <title>SkyDNS running live</title>
      <link>https://miek.nl/2014/june/28/skydns-running-live/</link>
      <pubDate>Sat, 28 Jun 2014 09:02:00 +0000</pubDate>
      <guid>https://miek.nl/2014/june/28/skydns-running-live/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://github.com/skynetservices/skydns&#34;&gt;SkyDNS&lt;/a&gt; is able to do DNSSEC. It generates&#xA;signatures and NSEC3 records on the fly. For authenticated denial of existence SkyDNS&#xA;uses &lt;a href=&#34;http://tools.ietf.org/html/rfc7129#appendix-B&#34;&gt;NSEC3 white lies&lt;/a&gt;, of course implementing&#xA;(and testing!) this isn&amp;rsquo;t completely trivial.&lt;/p&gt;&#xA;&lt;p&gt;To aid in debugging I&amp;rsquo;ve setup a live version of SkyDNS on &lt;code&gt;voordeur.atoom.net&lt;/code&gt;, under the name the&#xA;zone &lt;a href=&#34;http://dnssex.nl&#34;&gt;http://dnssex.nl&lt;/a&gt;:&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;% dig +mul +noall +answer @voordeur.atoom.net soa skydns.dnssex.nl&#xA;skydns.dnssex.nl.    3600 IN SOA ns1.dns.skydns.dnssex.nl. hostmaster.skydns.local. (&#xA;                            1403942400 ; serial&#xA;                            28800      ; refresh (8 hours)&#xA;                            7200       ; retry (2 hours)&#xA;                            604800     ; expire (1 week)&#xA;                            60         ; minimum (1 minute)&#xA;                            )&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;To help getting DNSSEC support 100% working this zone has been delegated and has an DS record&#xA;in the parent zone. With &lt;code&gt;unbound-host&lt;/code&gt; you can see the validation status of this zone:&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
