Publish SSHFP records in the DNS.
[zones] / distorted.lisp
index 3a0a4b0..1fca34e 100644 (file)
                     (chiark.ns :ip chiark.greenend.org.uk))
 
   ;; Mail servers.
-  ((@ mail lists bugs cryptomail)
+  ((@ mail)
    :mx mail
    :srv ((:smtp mail)))
+  ((lists bugs cryptomail)
+   :ttl 300
+   :mx mail
+   :srv ((:smtp old-mail)))
 
-  ;; Kerberos.
-  (_kerberos :txt "DISTORTED.ORG.UK")
-  :srv (((:kerberos :protocol :udp) krb)
-       ((:kerberos-master :protocol :udp :port 88) krb)
-       (:kerberos-adm krb)
-       ((:kpasswd :protocol :udp) krb))
+  (stratocaster.20140403._domainkey
+   :dkim ("dkim-stratocaster.20140403.pub"
+         :v "DKIM1"
+         :k "rsa"
+         :h "sha256"
+         :s "email"))
 
   ;; Anycast services.
   (dns0 (any :a dns0.any)
@@ -47,6 +51,8 @@
        (dmz :svc vampire.dmz)
        (unsafe :svc vampire.unsafe)
        (colo :svc telecaster.colo))
+  (dns :cname dns0)
+
   (ntp0 (any :a ntp0.any)
        (jump :svc fender.jump)
        (dmz :svc ibanez.dmz)
   (ntp1 (any :a ntp1.any)
        (dmz :svc vampire.dmz)
        (unsafe :svc vampire.unsafe))
+  (ntp :cname ntp0)
+
   (www-cache (any :a www-cache.any)
             (jump :svc telecaster.jump)
             (dmz :svc roadstar.dmz)
             (unsafe :svc roadstar.unsafe)
             (colo :svc telecaster.colo))
-  (dns :cname dns0)
-  (ntp :cname ntp0)
   (wpad :cname www-cache)
 
+  (_kerberos :txt "DISTORTED.ORG.UK")
+  (krb0 (any :a krb0.any)
+       (jump :svc precision.jump)
+       (dmz :svc radius.dmz)
+       (unsafe :svc radius.unsafe)
+       (colo :svc precision.colo))
+  (krb1 (any :a krb1.any)
+       (dmz :svc vampire.dmz)
+       (unsafe :svc vampire.unsafe))
+  (krb-master (unsafe :svc radius.unsafe)
+             (dmz :svc radius.dmz))
+  :srv (((:kerberos :protocol :udp)
+        krb0
+        (krb1 :prio 100))
+       ((:kerberos-master :protocol :udp :port 88) krb-master)
+       (:kerberos-adm krb-master)
+       ((:kpasswd :protocol :udp) krb-master))
+  (krb :cname krb0)
+
   ;; Other services.
   :srv ((:http www)
        (:ftp ftp))
 
   ;; Entry is via little router box.
   (dmz :net dmz)
-  (guvnor (inside :svc gate.dmz) (dmz :a guvnor.dmz))
-  (anon (dmz :a anon.dmz))
+  (guvnor (dmz :a guvnor.dmz))
   (gate (dmz :a gate.dmz))
   (nat (dmz :a nat.dmz))
 
   (evolution :alias evo)
 
   ;; Colocated services.
-  (irc (colo :svc jazz.colo)
-       (jump :svc jazz.jump))
+  ((irc vox) (colo :svc jazz.colo :sshfp "jazz.sshfp")
+            (jump :svc jazz.jump :sshfp "jazz.sshfp"))
+  ((git www mail) (colo :svc stratocaster.colo :sshfp "stratocaster.sshfp")
+                 (jump :svc stratocaster.jump :sshfp "stratocaster.sshfp"))
+  :svc #+view/inside stratocaster.colo
+       #-view/inside stratocaster.jump
+  (cabal :svc stratocaster.colo :sshfp "stratocaster.sshfp")
+  ((db ftp) (colo :svc telecaster.colo :sshfp "telecaster.sshfp")
+           (jump :svc telecaster.jump :sshfp "telecaster.sshfp"))
 
   ;; Local services.
-  :svc vampire
-  ((www krb ftp rsync wiki git bugs mail db i2p rawk vox)
-   :svc vampire)
+  ((rawk pifi) (unsafe :svc artist.unsafe)
+              (dmz :svc artist.dmz))
+  (mirror (dmz :svc roadstar.dmz :sshfp "roadstar.sshfp")
+         (unsafe :svc roadstar.unsafe :sshfp "roadstar.sshfp"))
+  ((wiki bugs old-mail i2p) :svc vampire :sshfp "vampire.sshfp")
 
   ;; Internal services.
-  #+view/inside ((news lpr) :svc vampire.unsafe)
+  #+view/inside ((news lpr) :svc vampire.unsafe :sshfp "vampire.sshfp")
 
   ;; Anonymity services.
-  (tor :svc #+view/inside vampire.unsafe
-           #-view/inside anon.dmz)
+  (anon (colo :svc jazz.colo)
+       (unsafe :svc vampire.unsafe)
+       (jump :a anon.jump)
+       (dmz :a anon.dmz))
 
   ;; Fancy connectivity.
   (iodine (jump :a jazz.jump))
   ;; Colocated hosts.
   (colo :net colo)
   (jump :net jump)
-  (fender (colo :a fender.colo)
-         (jump :a fender.jump))
-  (precision (colo :a precision.colo)
-            (jump :a precision.jump))
-  (telecaster (colo :a telecaster.colo)
-             (jump :a telecaster.jump))
+  (fender (colo :a fender.colo :sshfp "fender.sshfp")
+         (jump :a fender.jump :sshfp "fender.sshfp"))
+  (precision (colo :a precision.colo :sshfp "precision.sshfp")
+            (jump :a precision.jump :sshfp "precision.sshfp"))
+  (telecaster (colo :a telecaster.colo :sshfp "telecaster.sshfp")
+             (jump :a telecaster.jump :sshfp "telecaster.sshfp"))
   (telecaster :alias tele)
-  (stratocaster (colo :a stratocaster.colo)
-               (jump :a stratocaster.jump))
+  (stratocaster (colo :a stratocaster.colo :sshfp "stratocaster.sshfp")
+               (jump :a stratocaster.jump :sshfp "stratocaster.sshfp"))
   (stratocaster :alias strat)
-  (jazz (colo :a jazz.colo)
-       (jump :a jazz.jump)
-       (iodine :a jazz.iodine))
+  (jazz (colo :a jazz.colo :sshfp "jazz.sshfp")
+       (jump :a jazz.jump :sshfp "jazz.sshfp")
+       (iodine :a jazz.iodine :sshfp "jazz.sshfp"))
+
+  ;; Media server (on loan to Good Technology HSTG).
+  (jaguar (jump :a jaguar.jump))
 
   ;; Nicko's server.
   (richmond (jump :a richmond.jump))
   (unsafe :net unsafe)
   (safe :net safe)
   (untrusted :net untrusted)
-  (vampire (unsafe :a vampire.unsafe)
-          (dmz :a vampire.dmz)
-          (safe :a vampire.safe)
-          (untrusted :a vampire.untrusted))
-  (ibanez (unsafe :a ibanez.unsafe)
-         (dmz :a ibanez.dmz))
-  (radius (unsafe :a radius.unsafe)
-         (dmz :a radius.dmz)
-         (safe :a radius.safe)
-         (untrusted :a radius.untrusted))
-  (roadstar (unsafe :a roadstar.unsafe)
-           (dmz :a roadstar.dmz))
-  (jem (unsafe :a jem.unsafe)
-       (dmz :a jem.dmz))
-  (artist (unsafe :a artist.unsafe)
-         (dmz :a artist.dmz))
+  (vampire (unsafe :a vampire.unsafe :sshfp "vampire.sshfp")
+          (dmz :a vampire.dmz :sshfp "vampire.sshfp")
+          (safe :a vampire.safe :sshfp "vampire.sshfp")
+          (untrusted :a vampire.untrusted :sshfp "vampire.sshfp"))
+  (ibanez (unsafe :a ibanez.unsafe :sshfp "ibanez.sshfp")
+         (dmz :a ibanez.dmz :sshfp "ibanez.sshfp"))
+  (radius (unsafe :a radius.unsafe :sshfp "radius.sshfp")
+         (dmz :a radius.dmz :sshfp "radius.sshfp")
+         (safe :a radius.safe :sshfp "radius.sshfp")
+         (untrusted :a radius.untrusted :sshfp "radius.sshfp"))
+  (roadstar (unsafe :a roadstar.unsafe :sshfp "roadstar.sshfp")
+           (dmz :a roadstar.dmz :sshfp "roadstar.sshfp"))
+  (jem (unsafe :a jem.unsafe :sshfp "jem.sshfp")
+       (dmz :a jem.dmz :sshfp "jem.sshfp"))
+  (artist (unsafe :a artist.unsafe :sshfp "artist.sshfp")
+         (dmz :a artist.dmz :sshfp "artist.sshfp")
+         (untrusted :a artist.untrusted :sshfp "artist.sshfp"))
 
   ;; DHCP hosts.
   (gibson :cname gibson.dhcp)
 
   ;; Virtual network.
   (vpn :net vpn)
-  (crybaby (vpn :a crybaby.vpn))
-  (terror (vpn :a terror.vpn))
+  (crybaby (vpn :a crybaby.vpn :sshfp "crybaby.sshfp"))
+  (terror (vpn :a terror.vpn :sshfp "terror.sshfp"))
+  (orange (vpn :a orange.vpn :sshfp "orange.sshfp"))
   (iodine :net iodine)
 
   ;; ITS.
   (dhcp :ns ((radius.ns.dhcp :ip radius)
             (precision.ns.dhcp :ip precision)
             (vampire.ns.dhcp :ip vampire)))
+  (dyn :ns ((radius.ns.dyn :ip radius)
+           (precision.ns.dyn :ip precision)
+           (vampire.ns.dyn :ip vampire)))
   (dnserr :ns ((radius.ns.dnserr :ip radius.dmz)
               (precision.ns.dnserr :ip precision.jump)
               (vampire.ns.dnserr :ip vampire.dmz)))