mirror of
				https://github.com/casjaysdevdocker/bind
				synced 2025-11-04 07:02:23 -05:00 
			
		
		
		
	🗃️ Committing everything that changed 🗃️
rootfs/tmp/etc/tor/torrc rootfs/usr/local/bin/check-record rootfs/usr/local/bin/get_dns_record rootfs/usr/local/etc/docker/init.d/02-named.sh
This commit is contained in:
		@@ -12,28 +12,12 @@ CookieAuthFile REPLACE_RUN_DIR/control.authcookie
 | 
				
			|||||||
Log debug file REPLACE_LOG_DIR/debug.log
 | 
					Log debug file REPLACE_LOG_DIR/debug.log
 | 
				
			||||||
Log notice file REPLACE_LOG_DIR/notices.log
 | 
					Log notice file REPLACE_LOG_DIR/notices.log
 | 
				
			||||||
 | 
					
 | 
				
			||||||
##### This section is just for location-hidden services
 | 
					 | 
				
			||||||
HiddenServiceDir REPLACE_DATA_DIR/hidden_service/default
 | 
					 | 
				
			||||||
HiddenServicePort 80 127.0.0.1:80
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
##### Server
 | 
					##### Server
 | 
				
			||||||
ControlPort localhost:9051
 | 
					SOCKSPort 127.0.0.1:9050
 | 
				
			||||||
SOCKSPort localhost:9050
 | 
					ControlPort 127.0.0.1:9051
 | 
				
			||||||
HTTPTunnelPort localhost:9080
 | 
					HTTPTunnelPort 127.0.0.1:9080
 | 
				
			||||||
 | 
					
 | 
				
			||||||
##### dns forwarder
 | 
					##### dns forwarder
 | 
				
			||||||
DNSPort localhost:9053
 | 
					DNSPort 127.0.0.1:9053
 | 
				
			||||||
AutomapHostsOnResolve 1
 | 
					AutomapHostsOnResolve 1
 | 
				
			||||||
AutomapHostsSuffixes .exit,.onion
 | 
					AutomapHostsSuffixes .exit,.onion
 | 
				
			||||||
 | 
					 | 
				
			||||||
##### This section is just for relays
 | 
					 | 
				
			||||||
#Nickname whateveryouwant
 | 
					 | 
				
			||||||
#ContactInfo tor-admin@example.com
 | 
					 | 
				
			||||||
#ORPort 443
 | 
					 | 
				
			||||||
#Exitpolicy reject *:*
 | 
					 | 
				
			||||||
#AccountingMax 100 GBytes
 | 
					 | 
				
			||||||
#AccountingStart month 1 00:00
 | 
					 | 
				
			||||||
#RelayBandwidthRate 5120 KBytes
 | 
					 | 
				
			||||||
#RelayBandwidthBurst 10240 KBytes
 | 
					 | 
				
			||||||
#DisableDebuggerAttachment 0
 | 
					 | 
				
			||||||
#HardwareAccel 1
 | 
					 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										69
									
								
								rootfs/usr/local/bin/check-record
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										69
									
								
								rootfs/usr/local/bin/check-record
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,69 @@
 | 
				
			|||||||
 | 
					#!/usr/bin/env sh
 | 
				
			||||||
 | 
					# shellcheck shell=sh
 | 
				
			||||||
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
 | 
					##@Version           :  202505201013-git
 | 
				
			||||||
 | 
					# @@Author           :  Jason Hempstead
 | 
				
			||||||
 | 
					# @@Contact          :  jason@casjaysdev.pro
 | 
				
			||||||
 | 
					# @@License          :  LICENSE.md
 | 
				
			||||||
 | 
					# @@ReadME           :  check-record --help
 | 
				
			||||||
 | 
					# @@Copyright        :  Copyright: (c) 2025 Jason Hempstead, Casjays Developments
 | 
				
			||||||
 | 
					# @@Created          :  Tuesday, May 20, 2025 10:13 EDT
 | 
				
			||||||
 | 
					# @@File             :  check-record
 | 
				
			||||||
 | 
					# @@Description      :
 | 
				
			||||||
 | 
					# @@Changelog        :  New script
 | 
				
			||||||
 | 
					# @@TODO             :  Better documentation
 | 
				
			||||||
 | 
					# @@Other            :
 | 
				
			||||||
 | 
					# @@Resource         :
 | 
				
			||||||
 | 
					# @@Terminal App     :  no
 | 
				
			||||||
 | 
					# @@sudo/root        :  no
 | 
				
			||||||
 | 
					# @@Template         :  shell/sh
 | 
				
			||||||
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
 | 
					# shellcheck disable=SC1003,SC2016,SC2031,SC2120,SC2155,SC2199,SC2317
 | 
				
			||||||
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
 | 
					APPNAME="$(basename -- "$0" 2>/dev/null)"
 | 
				
			||||||
 | 
					VERSION="202505201013-git"
 | 
				
			||||||
 | 
					RUN_USER="$USER"
 | 
				
			||||||
 | 
					SET_UID="$(id -u)"
 | 
				
			||||||
 | 
					SCRIPT_SRC_DIR="$(cd "$(dirname "$0")" && pwd)"
 | 
				
			||||||
 | 
					CHECK_RECORD_CWD="$(realpath "$PWD")"
 | 
				
			||||||
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
 | 
					# colorization
 | 
				
			||||||
 | 
					if [ "$SHOW_RAW" = "true" ]; then
 | 
				
			||||||
 | 
					  __printf_color() { printf '%b' "$1\n" | tr -d '\t' | sed '/^%b$/d;s,\x1B\[ 0-9;]*[a-zA-Z],,g'; }
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					  __printf_color() { { [ -z "$2" ] || DEFAULT_COLOR=$2; } && printf "%b" "$(tput setaf "$DEFAULT_COLOR" 2>/dev/null)" "$1\n" "$(tput sgr0 2>/dev/null)"; }
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
 | 
					# check for command
 | 
				
			||||||
 | 
					__cmd_exists() { which $1 >/dev/null 2>&1 || return 1; }
 | 
				
			||||||
 | 
					__function_exists() { builtin type $1 >/dev/null 2>&1 || return 1; }
 | 
				
			||||||
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
 | 
					# custom functions
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
 | 
					# Define variables
 | 
				
			||||||
 | 
					DEFAULT_COLOR="254"
 | 
				
			||||||
 | 
					CHECK_RECORD_EXIT_STATUS=0
 | 
				
			||||||
 | 
					CHECK_RECORD_RECORD="${2:-A}"
 | 
				
			||||||
 | 
					CHECK_RECORD_DOMAIN="${1:-localhost}"
 | 
				
			||||||
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
 | 
					# Main application
 | 
				
			||||||
 | 
					__cmd_exists dig || exit 10
 | 
				
			||||||
 | 
					if dig @1.1.1.1 "$CHECK_RECORD_DOMAIN" "$CHECK_RECORD_RECORD" | grep 'IN' | grep '[0-9][0-9]' | sed 's|.*A||g' | sed "s/^[ \t]*//"; then
 | 
				
			||||||
 | 
					  CHECK_RECORD_EXIT_STATUS=0
 | 
				
			||||||
 | 
					  __printf_color "The records for $CHECK_RECORD_DOMAIN have delegated" 2
 | 
				
			||||||
 | 
					elif dig @127.0.0.1 "$CHECK_RECORD_DOMAIN" "$CHECK_RECORD_RECORD" | grep 'IN' | grep '[0-9][0-9]' | sed 's|.*A||g' | sed "s/^[ \t]*//"; then
 | 
				
			||||||
 | 
					  CHECK_RECORD_EXIT_STATUS=1
 | 
				
			||||||
 | 
					  __printf_color "The records for $CHECK_RECORD_DOMAIN are working but have not delegated yet" 6
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					  CHECK_RECORD_EXIT_STATUS=2
 | 
				
			||||||
 | 
					  __printf_color "The record for $CHECK_RECORD_DOMAIN does not exist" 1
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
 | 
					# End application
 | 
				
			||||||
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
 | 
					# lets exit with code
 | 
				
			||||||
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
 | 
					exit $CHECK_RECORD_EXIT_STATUS
 | 
				
			||||||
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
 | 
					# ex: ts=2 sw=2 et filetype=sh
 | 
				
			||||||
							
								
								
									
										59
									
								
								rootfs/usr/local/bin/get_dns_record
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										59
									
								
								rootfs/usr/local/bin/get_dns_record
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,59 @@
 | 
				
			|||||||
 | 
					#!/usr/bin/env sh
 | 
				
			||||||
 | 
					# shellcheck shell=sh
 | 
				
			||||||
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
 | 
					##@Version           :  202505201007-git
 | 
				
			||||||
 | 
					# @@Author           :  Jason Hempstead
 | 
				
			||||||
 | 
					# @@Contact          :  jason@casjaysdev.pro
 | 
				
			||||||
 | 
					# @@License          :  LICENSE.md
 | 
				
			||||||
 | 
					# @@ReadME           :  get_dns_record --help
 | 
				
			||||||
 | 
					# @@Copyright        :  Copyright: (c) 2025 Jason Hempstead, Casjays Developments
 | 
				
			||||||
 | 
					# @@Created          :  Tuesday, May 20, 2025 10:07 EDT
 | 
				
			||||||
 | 
					# @@File             :  get_dns_record
 | 
				
			||||||
 | 
					# @@Description      :
 | 
				
			||||||
 | 
					# @@Changelog        :  New script
 | 
				
			||||||
 | 
					# @@TODO             :  Better documentation
 | 
				
			||||||
 | 
					# @@Other            :
 | 
				
			||||||
 | 
					# @@Resource         :
 | 
				
			||||||
 | 
					# @@Terminal App     :  no
 | 
				
			||||||
 | 
					# @@sudo/root        :  no
 | 
				
			||||||
 | 
					# @@Template         :  shell/sh
 | 
				
			||||||
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
 | 
					# shellcheck disable=SC1003,SC2016,SC2031,SC2120,SC2155,SC2199,SC2317
 | 
				
			||||||
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
 | 
					APPNAME="$(basename -- "$0" 2>/dev/null)"
 | 
				
			||||||
 | 
					VERSION="202505201007-git"
 | 
				
			||||||
 | 
					RUN_USER="$USER"
 | 
				
			||||||
 | 
					SET_UID="$(id -u)"
 | 
				
			||||||
 | 
					SCRIPT_SRC_DIR="$(cd "$(dirname "$0")" && pwd)"
 | 
				
			||||||
 | 
					GET_DNS_RECORD_CWD="$(realpath "$PWD")"
 | 
				
			||||||
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
 | 
					# colorization
 | 
				
			||||||
 | 
					if [ "$SHOW_RAW" = "true" ]; then
 | 
				
			||||||
 | 
					  __printf_color() { printf '%b' "$1\n" | tr -d '\t' | sed '/^%b$/d;s,\x1B\[ 0-9;]*[a-zA-Z],,g'; }
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					  __printf_color() { { [ -z "$2" ] || DEFAULT_COLOR=$2; } && printf "%b" "$(tput setaf "$DEFAULT_COLOR" 2>/dev/null)" "$1\n" "$(tput sgr0 2>/dev/null)"; }
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
 | 
					# check for command
 | 
				
			||||||
 | 
					__cmd_exists() { which $1 >/dev/null 2>&1 || return 1; }
 | 
				
			||||||
 | 
					__function_exists() { builtin type $1 >/dev/null 2>&1 || return 1; }
 | 
				
			||||||
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
 | 
					# custom functions
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
 | 
					# Define variables
 | 
				
			||||||
 | 
					DEFAULT_COLOR="254"
 | 
				
			||||||
 | 
					GET_DNS_RECORD_EXIT_STATUS=0
 | 
				
			||||||
 | 
					GET_DNS_RECORD_DOMAIN_NAME="$1"
 | 
				
			||||||
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
 | 
					# Main application
 | 
				
			||||||
 | 
					[ -n "$GET_DNS_RECORD_DOMAIN_NAME" ] || exit 2
 | 
				
			||||||
 | 
					grep '^@' "/data/bind/zones/$GET_DNS_RECORD_DOMAIN_NAME.zone" | grep 'IN' | grep ' A ' | sed 's|.*A||g;s|;.*||g;s/^[ \t]*//' || exit 2
 | 
				
			||||||
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
 | 
					# End application
 | 
				
			||||||
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
 | 
					# lets exit with code
 | 
				
			||||||
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
 | 
					exit $GET_DNS_RECORD_EXIT_STATUS
 | 
				
			||||||
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
 | 
					# ex: ts=2 sw=2 et filetype=sh
 | 
				
			||||||
@@ -64,7 +64,7 @@ __certbot_key() { grep -s 'key "certbot" ' /etc/named.conf | grep -v 'KEY_CERTBO
 | 
				
			|||||||
__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; }
 | 
					__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-${1:-sha512} | grep 'secret' | sed 's|.*secret "||g;s|"||g;s|;||g' | grep '^' || echo 'I665bFnjoPMB9EmEUl5uZ+o7e4ryM02irerkCkLJiSPJJYJBvBHSXCauNn44zY2C318DSWRcCx+tf8WESYwgKQ=='; }
 | 
					__tsig_key() { tsig-keygen -a hmac-${1:-sha512} | grep 'secret' | sed 's|.*secret "||g;s|"||g;s|;||g' | grep '^' || echo 'I665bFnjoPMB9EmEUl5uZ+o7e4ryM02irerkCkLJiSPJJYJBvBHSXCauNn44zY2C318DSWRcCx+tf8WESYwgKQ=='; }
 | 
				
			||||||
__check_dig() { dig "${1:-localhost}" "${2:-A}" | grep 'IN' | grep '[0-9][0-9]' | sed 's|.*A||g' | sed "s/^[ \t]*//" || return 2; }
 | 
					__check_dig() { dig "${1:-localhost}" "${2:-A}" | grep 'IN' | grep '[0-9][0-9]' | sed 's|.*A||g' | sed "s/^[ \t]*//" || return 2; }
 | 
				
			||||||
__get_dns_record() { grep '^@' "/data/bind/zones/$1.org.zone" | grep 'IN' | grep ' A ' | sed 's|.*A||g;s|;.*||g;s/^[ \t]*//' || return 2; }
 | 
					__get_dns_record() { grep '^@' "/data/bind/zones/$1.zone" | grep 'IN' | grep ' A ' | sed 's|.*A||g;s|;.*||g;s/^[ \t]*//' || return 2; }
 | 
				
			||||||
#__records_match() {}
 | 
					#__records_match() {}
 | 
				
			||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
# Script to execute
 | 
					# Script to execute
 | 
				
			||||||
@@ -161,11 +161,11 @@ user_pass="${NAMED_USER_PASS_WORD:-}" # normal user password
 | 
				
			|||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
# Additional predefined variables
 | 
					# Additional predefined variables
 | 
				
			||||||
DNS_SERIAL="$(date +'%Y%m%d%S')"
 | 
					DNS_SERIAL="$(date +'%Y%m%d%S')"
 | 
				
			||||||
 | 
					DNS_ZONE_FILE="$ETC_DIR/zones.conf"
 | 
				
			||||||
KEY_DHCP="${KEY_DHCP:-$(__dhcp_key || __tsig_key sha512)}"
 | 
					KEY_DHCP="${KEY_DHCP:-$(__dhcp_key || __tsig_key sha512)}"
 | 
				
			||||||
KEY_RNDC="${KEY_RNDC:-$(__rndc_key || __tsig_key sha512)}"
 | 
					KEY_RNDC="${KEY_RNDC:-$(__rndc_key || __tsig_key sha512)}"
 | 
				
			||||||
KEY_BACKUP="${KEY_BACKUP:-$(__backup_key || __tsig_key sha512)}"
 | 
					KEY_BACKUP="${KEY_BACKUP:-$(__backup_key || __tsig_key sha512)}"
 | 
				
			||||||
KEY_CERTBOT="${KEY_CERTBOT:-$(__certbot_key || __tsig_key sha512)}"
 | 
					KEY_CERTBOT="${KEY_CERTBOT:-$(__certbot_key || __tsig_key sha512)}"
 | 
				
			||||||
DNS_ZONE_FILE="$ETC_DIR/zones.conf"
 | 
					 | 
				
			||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
					# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 | 
				
			||||||
# Additional variables
 | 
					# Additional variables
 | 
				
			||||||
DNS_TYPE="${DNS_TYPE:-primary}"
 | 
					DNS_TYPE="${DNS_TYPE:-primary}"
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user