mirror of
				https://github.com/casjaysdevdocker/bind
				synced 2025-11-04 01:02:38 -05:00 
			
		
		
		
	🗃️ Committing everything that changed 🗃️
rootfs/tmp/ rootfs/usr/local/etc/docker/init.d/00-named.sh
This commit is contained in:
		
							
								
								
									
										87
									
								
								rootfs/tmp/etc/bind/named.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										87
									
								
								rootfs/tmp/etc/bind/named.conf
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,87 @@
 | 
			
		||||
# default options - https://bind9.readthedocs.io/en/latest/chapter3.html
 | 
			
		||||
#####################################################################
 | 
			
		||||
# rndc keys
 | 
			
		||||
key "dhcp-key" { algorithm hmac-md5; secret "REPLACE_KEY_DHCP"; };
 | 
			
		||||
key "rndc-key" { algorithm hmac-sha256; secret "REPLACE_KEY_RNDC"; };
 | 
			
		||||
key "backup-key" { algorithm hmac-sha256; secret "MKEQ/REPLACE_KEY_BACKUP"; };
 | 
			
		||||
key "certbot." { algorithm hmac-sha512; secret "REPLACE_KEY_CERTBOT"; };
 | 
			
		||||
#####################################################################
 | 
			
		||||
# rndc settings
 | 
			
		||||
controls { inet 127.0.0.1 allow { trusted; } keys { "rndc-key"; }; };
 | 
			
		||||
#####################################################################
 | 
			
		||||
# access settings
 | 
			
		||||
acl "all" { 0.0.0.0/0; ::/0; };
 | 
			
		||||
acl "secondary" { DNS_SERVER_SECONDARY; };
 | 
			
		||||
acl "trusted" { 10.0.0.0/8; 127.0.0.0/8; 172.16.0.0/12; 192.168.0.0/16; };
 | 
			
		||||
acl "updates" { key "dhcp-key"; key "certbot."; };
 | 
			
		||||
acl "transfers" {key "dhcp-key"; key "certbot."; key "backup-key"; secondary; };
 | 
			
		||||
acl "forward" { 1.1.1.1; 8.8.8.8; 4.4.4.4; };
 | 
			
		||||
#####################################################################
 | 
			
		||||
options {
 | 
			
		||||
  version "9";
 | 
			
		||||
  listen-on { any; };
 | 
			
		||||
  listen-on-v6 { any; };
 | 
			
		||||
  zone-statistics yes;
 | 
			
		||||
  max-cache-size 60m;
 | 
			
		||||
  interface-interval 60;
 | 
			
		||||
  max-ncache-ttl 10800;
 | 
			
		||||
  max-udp-size 4096;
 | 
			
		||||
  notify yes;
 | 
			
		||||
  also-notify { DNS_SERVER_SECONDARY; };
 | 
			
		||||
  allow-update { updates; };
 | 
			
		||||
  allow-update-forwarding { DNS_SERVER_SECONDARY; };
 | 
			
		||||
  allow-transfer { trusted; };
 | 
			
		||||
  transfer-format many-answers;
 | 
			
		||||
  allow-query { any; };
 | 
			
		||||
  allow-recursion { any; };
 | 
			
		||||
  allow-query-cache { any; };
 | 
			
		||||
  auth-nxdomain no;
 | 
			
		||||
  dnssec-validation auto;
 | 
			
		||||
  directory "REPLACE_VAR_DIR";
 | 
			
		||||
  managed-keys-directory "REPLACE_ETC_DIR/keys";
 | 
			
		||||
  pid-file "REPLACE_RUN_DIR/named.pid";
 | 
			
		||||
  dump-file "REPLACE_DATA_DIR/stats/dump.txt";
 | 
			
		||||
  statistics-file "REPLACE_DATA_DIR/stats/stats.txt";
 | 
			
		||||
  memstatistics-file "REPLACE_DATA_DIR/stats/mem.txt";
 | 
			
		||||
  forwarders { 1.1.1.1; 8.8.8.8; 4.4.4.4; };
 | 
			
		||||
};
 | 
			
		||||
#####################################################################
 | 
			
		||||
# named logging options
 | 
			
		||||
logging {
 | 
			
		||||
channel debug { file "REPLACE_LOG_DIR/debug.info" versions 0 size 5m; severity debug; };
 | 
			
		||||
channel querylog { file "REPLACE_LOG_DIR/querylog.log" versions 0 size 5m; severity info; print-time yes; };
 | 
			
		||||
channel security { file "REPLACE_LOG_DIR/security.log" versions 0 size 5m; severity dynamic; print-severity yes; print-time yes; };
 | 
			
		||||
channel xfer-in { file "REPLACE_LOG_DIR/xfer.log" versions 0 size 5m; severity info; print-category yes; print-severity yes; print-time yes; };
 | 
			
		||||
channel xfer-out { file "REPLACE_LOG_DIR/xfer.log" versions 0 size 5m; severity info; print-category yes; print-severity yes; print-time yes; };
 | 
			
		||||
channel update { file "REPLACE_LOG_DIR/update.log" versions 0 size 5m; severity info; print-category yes; print-severity yes; print-time yes; };
 | 
			
		||||
channel notify { file "REPLACE_LOG_DIR/notify.log" versions 0 size 5m; severity info; print-category yes; print-severity yes; print-time yes; };
 | 
			
		||||
channel client { file "REPLACE_LOG_DIR/client.log" versions 0 size 5m; severity debug; print-category yes; print-severity yes; print-time yes; };
 | 
			
		||||
channel default { file "REPLACE_LOG_DIR/default.log" versions 0 size 5m; severity debug; print-category yes; print-severity yes; print-time yes; };
 | 
			
		||||
channel general { file "REPLACE_LOG_DIR/general.log" versions 0 size 5m; severity info; print-category yes; print-severity yes; print-time yes; };
 | 
			
		||||
channel database { file "REPLACE_LOG_DIR/database.log" versions 0 size 5m; severity info; print-category yes; print-severity yes; print-time yes; };
 | 
			
		||||
category lame-servers { default; debug; };
 | 
			
		||||
category dispatch { default; debug; };
 | 
			
		||||
category queries { querylog; default; debug; };
 | 
			
		||||
category update { update; default; debug; };
 | 
			
		||||
category network { default; debug; };
 | 
			
		||||
category unmatched { default; debug; };
 | 
			
		||||
category client { client; default; debug; };
 | 
			
		||||
category notify { notify; default; debug; };
 | 
			
		||||
category xfer-out { xfer-out; default; debug; };
 | 
			
		||||
category xfer-in { xfer-in; default; debug; };
 | 
			
		||||
category resolver { default; debug; };
 | 
			
		||||
category config { default; debug; };
 | 
			
		||||
category security { security; default; debug; };
 | 
			
		||||
category database { database; default; debug; };
 | 
			
		||||
category general { general; default; debug; };
 | 
			
		||||
category default { default; debug; };
 | 
			
		||||
category dnssec { security; default; debug; };
 | 
			
		||||
};
 | 
			
		||||
#####################################################################
 | 
			
		||||
#  ********** begin root info **********
 | 
			
		||||
zone "." {
 | 
			
		||||
    type hint;
 | 
			
		||||
    file "REPLACE_VAR_DIR/root.cache";
 | 
			
		||||
};
 | 
			
		||||
#  ********** end root info **********
 | 
			
		||||
# end
 | 
			
		||||
							
								
								
									
										1
									
								
								rootfs/tmp/etc/bind/rndc.key
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								rootfs/tmp/etc/bind/rndc.key
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1 @@
 | 
			
		||||
key "rndc-key" { algorithm hmac-sha256; secret "REPLACE_KEY_RNDC"; };
 | 
			
		||||
							
								
								
									
										92
									
								
								rootfs/tmp/var/bind/root.cache
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										92
									
								
								rootfs/tmp/var/bind/root.cache
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,92 @@
 | 
			
		||||
;       This file holds the information on root name servers needed to 
 | 
			
		||||
;       initialize cache of Internet domain name servers
 | 
			
		||||
;       (e.g. reference this file in the "cache  .  <file>"
 | 
			
		||||
;       configuration file of BIND domain name servers). 
 | 
			
		||||
; 
 | 
			
		||||
;       This file is made available by InterNIC 
 | 
			
		||||
;       under anonymous FTP as
 | 
			
		||||
;           file                /domain/named.cache 
 | 
			
		||||
;           on server           FTP.INTERNIC.NET
 | 
			
		||||
;       -OR-                    RS.INTERNIC.NET
 | 
			
		||||
;
 | 
			
		||||
;       last update:     August 14, 2024
 | 
			
		||||
;       related version of root zone:     2024081401
 | 
			
		||||
; 
 | 
			
		||||
; FORMERLY NS.INTERNIC.NET 
 | 
			
		||||
;
 | 
			
		||||
.                        3600000      NS    A.ROOT-SERVERS.NET.
 | 
			
		||||
A.ROOT-SERVERS.NET.      3600000      A     198.41.0.4
 | 
			
		||||
A.ROOT-SERVERS.NET.      3600000      AAAA  2001:503:ba3e::2:30
 | 
			
		||||
; 
 | 
			
		||||
; FORMERLY NS1.ISI.EDU 
 | 
			
		||||
;
 | 
			
		||||
.                        3600000      NS    B.ROOT-SERVERS.NET.
 | 
			
		||||
B.ROOT-SERVERS.NET.      3600000      A     170.247.170.2
 | 
			
		||||
B.ROOT-SERVERS.NET.      3600000      AAAA  2801:1b8:10::b
 | 
			
		||||
; 
 | 
			
		||||
; FORMERLY C.PSI.NET 
 | 
			
		||||
;
 | 
			
		||||
.                        3600000      NS    C.ROOT-SERVERS.NET.
 | 
			
		||||
C.ROOT-SERVERS.NET.      3600000      A     192.33.4.12
 | 
			
		||||
C.ROOT-SERVERS.NET.      3600000      AAAA  2001:500:2::c
 | 
			
		||||
; 
 | 
			
		||||
; FORMERLY TERP.UMD.EDU 
 | 
			
		||||
;
 | 
			
		||||
.                        3600000      NS    D.ROOT-SERVERS.NET.
 | 
			
		||||
D.ROOT-SERVERS.NET.      3600000      A     199.7.91.13
 | 
			
		||||
D.ROOT-SERVERS.NET.      3600000      AAAA  2001:500:2d::d
 | 
			
		||||
; 
 | 
			
		||||
; FORMERLY NS.NASA.GOV
 | 
			
		||||
;
 | 
			
		||||
.                        3600000      NS    E.ROOT-SERVERS.NET.
 | 
			
		||||
E.ROOT-SERVERS.NET.      3600000      A     192.203.230.10
 | 
			
		||||
E.ROOT-SERVERS.NET.      3600000      AAAA  2001:500:a8::e
 | 
			
		||||
; 
 | 
			
		||||
; FORMERLY NS.ISC.ORG
 | 
			
		||||
;
 | 
			
		||||
.                        3600000      NS    F.ROOT-SERVERS.NET.
 | 
			
		||||
F.ROOT-SERVERS.NET.      3600000      A     192.5.5.241
 | 
			
		||||
F.ROOT-SERVERS.NET.      3600000      AAAA  2001:500:2f::f
 | 
			
		||||
; 
 | 
			
		||||
; FORMERLY NS.NIC.DDN.MIL
 | 
			
		||||
;
 | 
			
		||||
.                        3600000      NS    G.ROOT-SERVERS.NET.
 | 
			
		||||
G.ROOT-SERVERS.NET.      3600000      A     192.112.36.4
 | 
			
		||||
G.ROOT-SERVERS.NET.      3600000      AAAA  2001:500:12::d0d
 | 
			
		||||
; 
 | 
			
		||||
; FORMERLY AOS.ARL.ARMY.MIL
 | 
			
		||||
;
 | 
			
		||||
.                        3600000      NS    H.ROOT-SERVERS.NET.
 | 
			
		||||
H.ROOT-SERVERS.NET.      3600000      A     198.97.190.53
 | 
			
		||||
H.ROOT-SERVERS.NET.      3600000      AAAA  2001:500:1::53
 | 
			
		||||
; 
 | 
			
		||||
; FORMERLY NIC.NORDU.NET
 | 
			
		||||
;
 | 
			
		||||
.                        3600000      NS    I.ROOT-SERVERS.NET.
 | 
			
		||||
I.ROOT-SERVERS.NET.      3600000      A     192.36.148.17
 | 
			
		||||
I.ROOT-SERVERS.NET.      3600000      AAAA  2001:7fe::53
 | 
			
		||||
; 
 | 
			
		||||
; OPERATED BY VERISIGN, INC.
 | 
			
		||||
;
 | 
			
		||||
.                        3600000      NS    J.ROOT-SERVERS.NET.
 | 
			
		||||
J.ROOT-SERVERS.NET.      3600000      A     192.58.128.30
 | 
			
		||||
J.ROOT-SERVERS.NET.      3600000      AAAA  2001:503:c27::2:30
 | 
			
		||||
; 
 | 
			
		||||
; OPERATED BY RIPE NCC
 | 
			
		||||
;
 | 
			
		||||
.                        3600000      NS    K.ROOT-SERVERS.NET.
 | 
			
		||||
K.ROOT-SERVERS.NET.      3600000      A     193.0.14.129
 | 
			
		||||
K.ROOT-SERVERS.NET.      3600000      AAAA  2001:7fd::1
 | 
			
		||||
; 
 | 
			
		||||
; OPERATED BY ICANN
 | 
			
		||||
;
 | 
			
		||||
.                        3600000      NS    L.ROOT-SERVERS.NET.
 | 
			
		||||
L.ROOT-SERVERS.NET.      3600000      A     199.7.83.42
 | 
			
		||||
L.ROOT-SERVERS.NET.      3600000      AAAA  2001:500:9f::42
 | 
			
		||||
; 
 | 
			
		||||
; OPERATED BY WIDE
 | 
			
		||||
;
 | 
			
		||||
.                        3600000      NS    M.ROOT-SERVERS.NET.
 | 
			
		||||
M.ROOT-SERVERS.NET.      3600000      A     202.12.27.33
 | 
			
		||||
M.ROOT-SERVERS.NET.      3600000      AAAA  2001:dc3::35
 | 
			
		||||
; End of file
 | 
			
		||||
@@ -59,8 +59,10 @@ printf '%s\n' "# - - - Initializing $SERVICE_NAME - - - #"
 | 
			
		||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
			
		||||
# Custom functions
 | 
			
		||||
__rndc_key() { grep -s 'key "rndc-key" ' /etc/named.conf | grep -v 'KEY_RNDC' | sed 's|.*secret ||g;s|"||g;s|;.*||g' | grep '^' || return 1; }
 | 
			
		||||
__dhcp_key() { grep -s 'key "dhcp-key" ' /etc/named.conf | grep -v 'KEY_DHCP' | sed 's|.*secret ||g;s|"||g;s|;.*||g' | grep '^' || return 1; }
 | 
			
		||||
__certbot_key() { grep -s 'key "certbot" ' /etc/named.conf | grep -v 'KEY_CERTBOT' | sed 's|.*secret ||g;s|"||g;s|;.*||g' | grep '^' || return 1; }
 | 
			
		||||
__backup_key() { grep -s 'key "backup-key" ' /etc/named.conf | grep -v 'KEY_BACKUP' | sed 's|.*secret ||g;s|"||g;s|;.*||g' | grep '^' || return 1; }
 | 
			
		||||
__tsig_key() { tsig-keygen -a hmac-sha256 | grep 'secret' | sed 's|.*secret "||g;s|"||g;s|;||g' | grep '^' || echo 'wp/HApbthaVPjwqgp6ziLlmnkyLSNbRTehkdARBDcpI='; }
 | 
			
		||||
 | 
			
		||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
			
		||||
# Script to execute
 | 
			
		||||
START_SCRIPT="/usr/local/etc/docker/exec/$SERVICE_NAME"
 | 
			
		||||
@@ -155,15 +157,16 @@ user_pass="${NAMED_USER_PASS_WORD:-}" # normal user password
 | 
			
		||||
[ -f "/config/env/named.sh" ] && . "/config/env/named.sh"               # Overwrite the variabes
 | 
			
		||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
			
		||||
# Additional predefined variables
 | 
			
		||||
KEY_RNDC="${KEY_RNDC:-$(__tsig_key)}"
 | 
			
		||||
KEY_DHCP="${KEY_DHCP:-$(__tsig_key)}"
 | 
			
		||||
KEY_BACKUP="${KEY_BACKUP:-$(__tsig_key)}"
 | 
			
		||||
KEY_CERTBOT="${KEY_CERTBOT:-$(__tsig_key)}"
 | 
			
		||||
KEY_RNDC="${KEY_RNDC:-$(__rndc_key || __tsig_key)}"
 | 
			
		||||
KEY_DHCP="${KEY_DHCP:-$(__dhcp_key || __tsig_key)}"
 | 
			
		||||
KEY_BACKUP="${KEY_BACKUP:-$(__backup_key || __tsig_key)}"
 | 
			
		||||
KEY_CERTBOT="${KEY_CERTBOT:-$(__certbot_key || __tsig_key)}"
 | 
			
		||||
DNS_SERIAL="$(date +'%Y%m%d%S')"
 | 
			
		||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
			
		||||
# Additional variables
 | 
			
		||||
DNS_SERVER_PRIMARY="${DNS_SERVER_PRIMARY:-}"
 | 
			
		||||
DNS_SERVER_SECONDARY="${DNS_SERVER_SECONDARY:-}"
 | 
			
		||||
DNS_TYPE="${DNS_TYPE:-primary}"
 | 
			
		||||
DNS_SERVER_PRIMARY="${DNS_SERVER_PRIMARY:-127.0.0.1}"
 | 
			
		||||
DNS_SERVER_SECONDARY="${DNS_SERVER_SECONDARY:-127.0.0.1}"
 | 
			
		||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
			
		||||
# Specifiy custom directories to be created
 | 
			
		||||
ADD_APPLICATION_FILES=""
 | 
			
		||||
@@ -233,13 +236,19 @@ __update_conf_files() {
 | 
			
		||||
 | 
			
		||||
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
			
		||||
  # custom commands
 | 
			
		||||
  mkdir -p "$ETC_DIR/keys" "$CONF_DIR/keys" "$VAR_DIR/zones" "$DATA_DIR/zones"
 | 
			
		||||
  mkdir -p "$ETC_DIR/keys" "$CONF_DIR/keys" "$VAR_DIR/zones" "$DATA_DIR/zones" "$DATA_DIR/stats"
 | 
			
		||||
  for logfile in xfer update notify querylog default debug security; do
 | 
			
		||||
    touch "$LOG_DIR/$logfile.log"
 | 
			
		||||
    chmod -Rf 777 "$logfile"
 | 
			
		||||
  done
 | 
			
		||||
  # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
			
		||||
  # replace variables
 | 
			
		||||
  __replace "REPLACE_KEY_RNDC" "$KEY_RNDC" "$ETC_DIR/rndc.key"
 | 
			
		||||
  __replace "REPLACE_KEY_RNDC" "$KEY_RNDC" "$ETC_DIR/named.conf"
 | 
			
		||||
  __replace "REPLACE_KEY_DHCP" "$KEY_DHCP" "$ETC_DIR/named.conf"
 | 
			
		||||
  __replace "REPLACE_KEY_BACKUP" "$KEY_BACKUP" "$ETC_DIR/named.conf"
 | 
			
		||||
  __replace "REPLACE_KEY_CERTBOT" "$KEY_CERTBOT" "$ETC_DIR/named.conf"
 | 
			
		||||
 | 
			
		||||
  __replace "REPLACE_KEY_RNDC" "$KEY_RNDC" "$CONF_DIR/rndc.key"
 | 
			
		||||
  __replace "REPLACE_KEY_RNDC" "$KEY_RNDC" "$CONF_DIR/named.conf"
 | 
			
		||||
  __replace "REPLACE_KEY_DHCP" "$KEY_DHCP" "$CONF_DIR/named.conf"
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user