Skip to content

Latest commit

 

History

History
60 lines (52 loc) · 1.8 KB

bind.md

File metadata and controls

60 lines (52 loc) · 1.8 KB

On FreeBSD:

sudo pkg install bind912 bind-tools-9.12.2P1
 # generate `rndc` secret key
sudo rndc-confgen -a
 # wrote key file "/usr/local/etc/namedb/rndc.key"
 # enable logging from chroot
sudo sysrc altlog_proglist+=named
sudo /etc/rc.d/syslogd restart
 # make the chroot directory
sudo mkdir /usr/local/etc/named_chroot

Note: I made the chroot directory under /usr/local/etc so that I could maintain it under git. I didn't use the conventional directory /var/named.

Edit /etc/rc.conf:

+# named
+named_enable="YES"
+named_chrootdir="/usr/local/etc/named_chroot"

Let's make it work with acme.sh (thank you, Cris Van Pelt).

sudo rndc-confgen \
 -c /usr/local/etc/namedb/letsencrypt.key \
  -k letsencrypt-key | \
  head -5 | \
  sudo tee /usr/local/etc/namedb/letsencrypt.key
sudo chmod 600 /usr/local/etc/namedb/letsencrypt.key
sudo chown cunnie /usr/local/etc/namedb/letsencrypt.key
sudo chown -R bind:wheel /usr/local/etc/namedb/{slave,dynamic} # (necessary?)
tail -f /var/log/message & # watching bind logs for important messages
export NSUPDATE_SERVER="ns-he.nono.io"
export NSUPDATE_KEY="/usr/local/etc/namedb/letsencrypt.key"
~/workspace/acme.sh/acme.sh --issue \
  --dns dns_nsupdate \
  -d pas.nono.io \
  -d *.pas.nono.io
 # if not using PAS for FreeNAS, try an elliptic-cure: `-k ec-256`
 # cat /home/cunnie/.acme.sh/pas.nono.io_ecc/fullchain.cer \
 #  /home/cunnie/.acme.sh/pas.nono.io_ecc/pas.nono.io.key
cat /home/cunnie/.acme.sh/pas.nono.io/fullchain.cer \
 /home/cunnie/.acme.sh/pas.nono.io/pas.nono.io.key

To sync the journal file to the zone file (prior to checking in changes, for example):

sudo rndc sync -clean