♻️ Migrate ddns to /config/ source-of-truth architecture ♻️

Migrate ddns Docker image to the new build-time config architecture.
- rootfs/root/docker/setup/03-files.sh: rewrite to canonical form with /tmp/bin, /tmp/var, /tmp/etc, /tmp/usr handlers
- rootfs/usr/local/etc/docker/functions/entrypoint.sh: update to latest template
- rootfs/usr/local/etc/docker/init.d/*.sh: fix $(basename) UUOC; move inline comments above code lines
- rootfs/tmp/etc/: add named, dhcp, nginx, tor, named.conf, radvd.conf configs deployed to /etc/ at build time
- rootfs/tmp/usr/: add htdocs and named data files deployed to /usr/local/share/ at build time
- rootfs/usr/local/share/template-files/: delete; config now deployed via /tmp/etc/ and /tmp/usr/ at build time

rootfs/root/docker/setup/03-files.sh
rootfs/tmp/
rootfs/usr/local/etc/docker/functions/entrypoint.sh
rootfs/usr/local/share/template-files/config/dhcp/dhcpd4.conf
rootfs/usr/local/share/template-files/config/dhcp/dhcpd6.conf
rootfs/usr/local/share/template-files/config/env/default.sample
rootfs/usr/local/share/template-files/config/env/examples/00-directory.sh
rootfs/usr/local/share/template-files/config/env/examples/addresses.sh
rootfs/usr/local/share/template-files/config/env/examples/certbot.sh
rootfs/usr/local/share/template-files/config/env/examples/couchdb.sh
rootfs/usr/local/share/template-files/config/env/examples/dockerd.sh
rootfs/usr/local/share/template-files/config/env/examples/global.sh
rootfs/usr/local/share/template-files/config/env/examples/healthcheck.sh
rootfs/usr/local/share/template-files/config/env/examples/mariadb.sh
rootfs/usr/local/share/template-files/config/env/examples/mongodb.sh
rootfs/usr/local/share/template-files/config/env/examples/networking.sh
rootfs/usr/local/share/template-files/config/env/examples/other.sh
rootfs/usr/local/share/template-files/config/env/examples/php.sh
rootfs/usr/local/share/template-files/config/env/examples/postgres.sh
rootfs/usr/local/share/template-files/config/env/examples/redis.sh
rootfs/usr/local/share/template-files/config/env/examples/services.sh
rootfs/usr/local/share/template-files/config/env/examples/ssl.sh
rootfs/usr/local/share/template-files/config/env/examples/supabase.sh
rootfs/usr/local/share/template-files/config/env/examples/webservers.sh
rootfs/usr/local/share/template-files/config/env/examples/zz-entrypoint.sh
rootfs/usr/local/share/template-files/config/.gitkeep
rootfs/usr/local/share/template-files/config/named/certbot-update.conf
rootfs/usr/local/share/template-files/config/named/common/001-soa.inc
rootfs/usr/local/share/template-files/config/named/common/002-nameservers.inc
rootfs/usr/local/share/template-files/config/named/common/003-dns.inc
rootfs/usr/local/share/template-files/config/named.conf
rootfs/usr/local/share/template-files/config/named/config/0000-logging.conf
rootfs/usr/local/share/template-files/config/named/config/0001-rndc.conf
rootfs/usr/local/share/template-files/config/named/config/0001-rndc.key
rootfs/usr/local/share/template-files/config/named/config/0002-acl.conf
rootfs/usr/local/share/template-files/config/named/hosted/host.ddns.conf
rootfs/usr/local/share/template-files/config/named/hosted/ip.ddns.conf
rootfs/usr/local/share/template-files/config/named/keys/managed-keys.bind
rootfs/usr/local/share/template-files/config/named/zones/000-hint.conf
rootfs/usr/local/share/template-files/config/named/zones/000-localdomain.zone
rootfs/usr/local/share/template-files/config/named/zones/000-localhost.zone
rootfs/usr/local/share/template-files/config/named/zones/000-tor.zone
rootfs/usr/local/share/template-files/config/named/zones/001-ddns.zone
rootfs/usr/local/share/template-files/config/nginx/mime.types
rootfs/usr/local/share/template-files/config/nginx/nginx.conf
rootfs/usr/local/share/template-files/config/nginx/nginx.ssl.conf
rootfs/usr/local/share/template-files/config/radvd.conf
rootfs/usr/local/share/template-files/config/tor/torrc
rootfs/usr/local/share/template-files/data/.gitkeep
rootfs/usr/local/share/template-files/data/htdocs/www/css/.gitkeep
rootfs/usr/local/share/template-files/data/htdocs/www/images/.gitkeep
rootfs/usr/local/share/template-files/data/htdocs/www/index.php
rootfs/usr/local/share/template-files/data/htdocs/www/js/.gitkeep
rootfs/usr/local/share/template-files/data/named/data/hint
rootfs/usr/local/share/template-files/data/named/data/localdomain.conf
rootfs/usr/local/share/template-files/data/named/data/localhost4.rev
rootfs/usr/local/share/template-files/data/named/data/localhost6.rev
rootfs/usr/local/share/template-files/data/named/data/localhost.zone
rootfs/usr/local/share/template-files/data/named/dynamic/ddns.zone
rootfs/usr/local/share/template-files/data/named/dynamic/inc/cnames.ddns.zone
rootfs/usr/local/share/template-files/data/named/dynamic/inc/static.ipv4.arpa.rev
rootfs/usr/local/share/template-files/data/named/dynamic/inc/static.ipv4.ddns.zone
rootfs/usr/local/share/template-files/data/named/dynamic/inc/static.ipv6.arpa.rev
rootfs/usr/local/share/template-files/data/named/dynamic/inc/static.ipv6.ddns.zone
rootfs/usr/local/share/template-files/data/named/dynamic/inc/static.sso.ddns.zone
rootfs/usr/local/share/template-files/data/named/master/.gitkeep
rootfs/usr/local/share/template-files/data/named/reverse/in-addr.arpa.rev
rootfs/usr/local/share/template-files/data/named/reverse/ip6.arpa.rev
rootfs/usr/local/share/template-files/data/named/slaves/.gitkeep
rootfs/usr/local/share/template-files/defaults/.gitkeep
This commit is contained in:
2026-06-04 14:49:00 -04:00
parent ae22548092
commit 78926d224a
69 changed files with 166 additions and 622 deletions
@@ -1,7 +1,7 @@
#!/usr/bin/env bash
# shellcheck shell=bash
# - - - - - - - - - - - - - - - - - - - - - - - - -
##@Version : 202605241142-git
##@Version : 202606041215-git
# @@Author : Jason Hempstead
# @@Contact : git-admin@casjaysdev.pro
# @@License : LICENSE.md
@@ -273,23 +273,54 @@ __service_banner() {
printf '# - - - %s %-*s %s - - - #\n' "$icon" "$text_width" "$full_message" "$icon"
}
# - - - - - - - - - - - - - - - - - - - - - - - - -
__find_php_bin() { find -L '/usr'/*bin -maxdepth 4 -name 'php-fpm*' 2>/dev/null | head -n1; }
__find_php_bin() {
command -v php-fpm &>/dev/null || command -v php &>/dev/null || return 0
find -L '/usr'/*bin -maxdepth 4 -name 'php-fpm*' 2>/dev/null | head -n1
}
__find_php_ini() {
command -v php &>/dev/null || return 0
local f
f=$(find -L '/etc' -maxdepth 4 -name 'php.ini' 2>/dev/null | head -n1)
[ -n "$f" ] && printf '%s\n' "${f%/php.ini}"
}
# - - - - - - - - - - - - - - - - - - - - - - - - -
__find_nginx_conf() { find -L '/etc' -maxdepth 4 -name 'nginx.conf' 2>/dev/null | head -n1; }
__find_caddy_conf() { find -L '/etc' -maxdepth 4 -type f -iname 'caddy.conf' 2>/dev/null | head -n1; }
__find_lighttpd_conf() { find -L '/etc' -maxdepth 4 -type f -iname 'lighttpd.conf' 2>/dev/null | head -n1; }
__find_cherokee_conf() { find -L '/etc' -maxdepth 4 -type f -iname 'cherokee.conf' 2>/dev/null | head -n1; }
__find_httpd_conf() { find -L '/etc' -maxdepth 4 -type f -iname 'httpd.conf' -o -iname 'apache2.conf' 2>/dev/null | head -n1; }
__find_nginx_conf() {
command -v nginx &>/dev/null || return 0
find -L '/etc' -maxdepth 4 -name 'nginx.conf' 2>/dev/null | head -n1
}
__find_caddy_conf() {
command -v caddy &>/dev/null || return 0
find -L '/etc' -maxdepth 4 -type f -iname 'caddy.conf' 2>/dev/null | head -n1
}
__find_lighttpd_conf() {
command -v lighttpd &>/dev/null || return 0
find -L '/etc' -maxdepth 4 -type f -iname 'lighttpd.conf' 2>/dev/null | head -n1
}
__find_cherokee_conf() {
command -v cherokee &>/dev/null || command -v cherokee-admin &>/dev/null || return 0
find -L '/etc' -maxdepth 4 -type f -iname 'cherokee.conf' 2>/dev/null | head -n1
}
__find_httpd_conf() {
command -v httpd &>/dev/null || command -v apache2 &>/dev/null || return 0
find -L '/etc' -maxdepth 4 -type f \( -iname 'httpd.conf' -o -iname 'apache2.conf' \) 2>/dev/null | head -n1
}
# - - - - - - - - - - - - - - - - - - - - - - - - -
__find_mysql_conf() { find -L '/etc' -maxdepth 4 -type f -name 'my.cnf' 2>/dev/null | head -n1; }
__find_pgsql_conf() { find -L '/var/lib' '/etc' -maxdepth 8 -type f -name 'postgresql.conf' 2>/dev/null | head -n1; }
__find_couchdb_conf() { return; }
__find_mongodb_conf() { return; }
__find_mysql_conf() {
command -v mysqld &>/dev/null || command -v mariadbd &>/dev/null || command -v mysql &>/dev/null || return 0
find -L '/etc' -maxdepth 4 -type f -name 'my.cnf' 2>/dev/null | head -n1
}
__find_pgsql_conf() {
command -v postgres &>/dev/null || command -v pg_ctl &>/dev/null || return 0
find -L '/var/lib' '/etc' -maxdepth 8 -type f -name 'postgresql.conf' 2>/dev/null | head -n1
}
__find_couchdb_conf() {
command -v couchdb &>/dev/null || return 0
find -L '/opt/couchdb/etc' '/etc/couchdb' -maxdepth 4 -type f \( -name 'local.ini' -o -name 'default.ini' \) 2>/dev/null | head -n1
}
__find_mongodb_conf() {
command -v mongod &>/dev/null || return 0
find -L '/etc/mongodb' '/etc' -maxdepth 4 -type f \( -name 'mongod.conf' -o -name 'mongodb.conf' \) 2>/dev/null | head -n1
}
# - - - - - - - - - - - - - - - - - - - - - - - - -
__random_password() { tr -dc '0-9a-zA-Z' < /dev/urandom | head -c${1:-16} && echo ""; }
# - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -356,92 +387,6 @@ __update_ssl_certs() {
fi
}
# - - - - - - - - - - - - - - - - - - - - - - - - -
__certbot() {
[ -n "$(type -P 'certbot')" ] || return 1
local options="$1"
local statusCode=0
local domain_list=""
local certbot_key_opts=""
local ADD_CERTBOT_DOMAINS=""
local CERTBOT_DOMAINS="${CERTBOT_DOMAINS:-$HOSTNAME}"
local CERT_BOT_MAIL="${CERT_BOT_MAIL:-ssl-admin@$CERTBOT_DOMAINS}"
local certbot_key_opts=""
mkdir -p "/config/letsencrypt"
__symlink "/etc/letsencrypt" "/config/letsencrypt"
is_renewal="$(find /etc/letsencrypt/renewal -type f 2>/dev/null || false)"
[ -f "/config/env/ssl.sh" ] && . "/config/env/ssl.sh"
[ -f "/config/certbot/env.sh" ] && . "/config/certbot/env.sh"
if [ -n "$SSL_KEY" ]; then
mkdir -p "$(dirname "$SSL_KEY")" 2>/dev/null || true
else
echo "The variable SSL_KEY is not set" >&2
return 1
fi
if [ -n "$SSL_CERT" ]; then
mkdir -p "$(dirname "$SSL_CERT")" 2>/dev/null || true
else
echo "The variable SSL_CERT is not set" >&2
return 1
fi
domain_list="$CERTBOT_DOMAINS www.$CERTBOT_DOMAINS mail.$CERTBOT_DOMAINS"
domain_list="$(echo "$domain_list" | tr ' ' '\n' | sort -u | tr '\n' ' ')"
if [ "$CERT_BOT_ENABLED" != "true" ]; then
export CERT_BOT_ENABLED=""
return 10
fi
if [ -z "$CERT_BOT_MAIL" ]; then
echo "The variable CERT_BOT_MAIL is not set" >&2
return 1
fi
if [ -z "$CERTBOT_DOMAINS" ]; then
echo "The variable CERTBOT_DOMAINS is not set" >&2
return 1
fi
for domain in $CERTBOT_DOMAINS; do
[ -n "$domain" ] && ADD_CERTBOT_DOMAINS+="-d $domain "
done
local expand_opt=""
if [ -n "$is_renewal" ]; then
options="renew"
ADD_CERTBOT_DOMAINS=""
else
options="certonly"
expand_opt="--expand"
fi
certbot_key_opts="$ADD_CERTBOT_DOMAINS"
if [ -f "/config/certbot/setup.sh" ]; then
\bash "/config/certbot/setup.sh"
statusCode=$?
elif [ -f "/etc/named/certbot.sh" ]; then
\bash "/etc/named/certbot.sh"
statusCode=$?
elif [ -f "/config/certbot/dns.conf" ]; then
if certbot $options -n --dry-run --agree-tos $expand_opt --dns-rfc2136 --dns-rfc2136-credentials /config/certbot/dns.conf $certbot_key_opts; then
certbot $options -n --agree-tos $expand_opt --dns-rfc2136 --dns-rfc2136-credentials /config/certbot/dns.conf $certbot_key_opts
fi
statusCode=$?
elif [ -f "/config/certbot/certbot.conf" ]; then
if certbot $options -n --dry-run --agree-tos $expand_opt --dns-rfc2136 --dns-rfc2136-credentials /config/certbot/certbot.conf $certbot_key_opts; then
certbot $options -n --agree-tos $expand_opt --dns-rfc2136 --dns-rfc2136-credentials /config/certbot/certbot.conf $certbot_key_opts
fi
statusCode=$?
elif [ -f "/config/named/certbot-update.conf" ]; then
if certbot $options -n --dry-run --agree-tos $expand_opt --dns-rfc2136 --dns-rfc2136-credentials /config/named/certbot-update.conf $certbot_key_opts; then
certbot $options -n --agree-tos $expand_opt --dns-rfc2136 --dns-rfc2136-credentials /config/named/certbot-update.conf $certbot_key_opts
fi
statusCode=$?
else
if [ -n "$ADD_CERTBOT_DOMAINS" ]; then
certbot $options --agree-tos -m $CERT_BOT_MAIL --webroot "${WWW_ROOT_DIR:-/usr/local/share/httpd/default}" $certbot_key_opts
statusCode=$?
else
statusCode=1
fi
fi
[ $statusCode -eq 0 ] && __update_ssl_certs
return $statusCode
}
# - - - - - - - - - - - - - - - - - - - - - - - - -
__display_user_info() {
if [ -n "$user_name" ] || [ -n "$user_pass" ] || [ -n "$root_user_name" ] || [ -n "$root_user_pass" ]; then
__banner "User info"
@@ -483,29 +428,26 @@ __init_config_etc() {
}
__create_ssl_cert() {
local SSL_DIR="${SSL_DIR:-/etc/ssl}"
if ! __certbot certonly; then
[ -f "/config/env/ssl.sh" ] && . "/config/env/ssl.sh"
if [ -z "$SSL_DIR" ]; then
echo "SSL_DIR is unset"
return 1
fi
[ -d "$SSL_DIR" ] || mkdir -p "$SSL_DIR"
if [ -n "$FORCE_SSL" ] || [ ! -f "$SSL_CERT" ] || [ ! -f "$SSL_KEY" ]; then
echo "Setting Country to $COUNTRY and Setting State/Province to $STATE and Setting City to $CITY"
echo "Setting OU to $UNIT and Setting ORG to $ORG and Setting server to $CN"
echo "All variables can be overwritten by creating a /config/.ssl.env and setting the variables there"
echo "Creating ssl key and certificate in $SSL_DIR and will be valid for $((VALID_FOR / 365)) year[s]"
#
openssl req \
-new \
-newkey rsa:$RSA \
-days $VALID_FOR \
-nodes \
-x509 \
-subj "/C=${COUNTRY// /\\ }/ST=${STATE// /\\ }/L=${CITY// /\\ }/O=${ORG// /\\ }/OU=${UNIT// /\\ }/CN=${CN// /\\ }" \
-keyout "$SSL_KEY" \
-out "$SSL_CERT"
fi
[ -f "/config/env/ssl.sh" ] && . "/config/env/ssl.sh"
if [ -z "$SSL_DIR" ]; then
echo "SSL_DIR is unset" >&2
return 1
fi
[ -d "$SSL_DIR" ] || mkdir -p "$SSL_DIR"
if [ -n "$FORCE_SSL" ] || [ ! -f "$SSL_CERT" ] || [ ! -f "$SSL_KEY" ]; then
echo "Setting Country to $COUNTRY and Setting State/Province to $STATE and Setting City to $CITY"
echo "Setting OU to $UNIT and Setting ORG to $ORG and Setting server to $CN"
echo "All variables can be overwritten by creating a /config/.ssl.env and setting the variables there"
echo "Creating ssl key and certificate in $SSL_DIR and will be valid for $((VALID_FOR / 365)) year[s]"
openssl req \
-new \
-newkey rsa:$RSA \
-days $VALID_FOR \
-nodes \
-x509 \
-subj "/C=${COUNTRY// /\\ }/ST=${STATE// /\\ }/L=${CITY// /\\ }/O=${ORG// /\\ }/OU=${UNIT// /\\ }/CN=${CN// /\\ }" \
-keyout "$SSL_KEY" \
-out "$SSL_CERT"
fi
if [ -f "$SSL_CERT" ] && [ -f "$SSL_KEY" ]; then
__update_ssl_certs
@@ -515,71 +457,105 @@ __create_ssl_cert() {
fi
}
# - - - - - - - - - - - - - - - - - - - - - - - - -
__init_apache() {
local etc_dir="" conf_dir="" conf_dir="" www_dir="" apache_bin=""
etc_dir="/etc/${1:-apache2}"
conf_dir="/config/${1:-apache2}"
www_dir="${WWW_ROOT_DIR:-/data/htdocs}"
apache_bin="$(type -P 'httpd' || type -P 'apache2')"
__init_service_conf() {
# Seed /config/$svc/ from build-time baked /etc sources on first container start.
# Copy only — no symlinks. Symlinking /etc back to /config/ is the service's own
# responsibility, done inside __update_conf_files in each init.d/*.sh script so
# each service controls its exact paths and variable substitution order.
#
# Usage: __init_service_conf <conf_dir> <primary_etc_dir> [extra_etc_path ...]
#
# primary_etc_dir directory → contents copied into conf_dir/ when conf_dir is empty
# extra_etc_path directory → copied into conf_dir/<name>/ when that subdir is empty
# extra_etc_path file → copied to conf_dir/<filename> when absent
local conf_dir="$1"
local primary_etc="$2"
shift 2
local src name
mkdir -p "$conf_dir"
if [ -d "$primary_etc" ] && __is_dir_empty "$conf_dir"; then
__copy_templates "$primary_etc/." "$conf_dir/"
fi
for src in "$@"; do
[ -e "$src" ] || continue
name="${src##*/}"
if [ -d "$src" ] && __is_dir_empty "$conf_dir/$name"; then
mkdir -p "$conf_dir/$name"
__copy_templates "$src/." "$conf_dir/$name/"
elif [ -f "$src" ] && [ ! -f "$conf_dir/$name" ]; then
cp -f "$src" "$conf_dir/$name"
fi
done
}
# - - - - - - - - - - - - - - - - - - - - - - - - -
__init_apache() {
command -v httpd &>/dev/null || command -v apache2 &>/dev/null || return 0
local svc="${1:-apache2}"
__init_service_conf "/config/$svc" "/etc/$svc"
return 0
}
# - - - - - - - - - - - - - - - - - - - - - - - - -
__init_nginx() {
local etc_dir="/etc/${1:-nginx}"
local conf_dir="/config/${1:-nginx}"
local www_dir="${WWW_ROOT_DIR:-/data/htdocs}"
local nginx_bin="$(type -P 'nginx')"
command -v nginx &>/dev/null || return 0
local svc="${1:-nginx}"
__init_service_conf "/config/$svc" "/etc/$svc"
return 0
}
# - - - - - - - - - - - - - - - - - - - - - - - - -
__init_php() {
local etc_dir="/etc/${1:-php}"
local conf_dir="/config/${1:-php}"
local php_bin="${PHP_BIN_DIR:-$(__find_php_bin)}"
command -v php &>/dev/null || return 0
local php_etc="${PHP_INI_DIR:-$(__find_php_ini)}"
__init_service_conf "/config/php" "${php_etc:-/etc/php}" \
"/etc/php.ini" "/etc/php-fpm" "/etc/php-fpm.conf"
return 0
}
# - - - - - - - - - - - - - - - - - - - - - - - - -
__init_mysql() {
local db_dir="/data/db/mysql"
local etc_dir="${home:-/etc/${1:-mysql}}"
local db_user="${SERVICE_USER:-mysql}"
local conf_dir="/config/${1:-mysql}"
local user_name="${MARIADB_USER:-root}"
local user_pass="${MARIADB_PASSWORD:-$MARIADB_ROOT_PASSWORD}"
local user_db="${MARIADB_DATABASE}"
local root_pass="$MARIADB_ROOT_PASSWORD"
local mysqld_bin="$(type -P 'mysqld')"
command -v mysqld &>/dev/null || command -v mariadbd &>/dev/null || return 0
local svc="${1:-mysql}"
__init_service_conf "/config/$svc" "/etc/$svc" "/etc/my.ini" "/etc/my.cnf"
[ -d "${DATABASE_DIR:-/data/db/$svc}" ] || mkdir -p "${DATABASE_DIR:-/data/db/$svc}"
return 0
}
# - - - - - - - - - - - - - - - - - - - - - - - - -
__init_mongodb() {
local home="${MONGODB_CONFIG_FILE:-$(__find_mongodb_conf)}"
local user_name="${INITDB_ROOT_USERNAME:-root}"
local user_pass="${MONGO_INITDB_ROOT_PASSWORD:-$_ROOT_PASSWORD}"
return
command -v mongod &>/dev/null || return 0
__init_service_conf "/config/mongodb" "/etc/mongodb" "/etc/mongod.conf"
return 0
}
# - - - - - - - - - - - - - - - - - - - - - - - - -
__init_postgres() {
local home="${PGSQL_CONFIG_FILE:-$(__find_pgsql_conf)}"
local user_name="${POSTGRES_USER:-root}"
local user_pass="${POSTGRES_PASSWORD:-$POSTGRES_ROOT_PASSWORD}"
return
command -v postgres &>/dev/null || command -v pg_ctl &>/dev/null || return 0
local pg_etc
pg_etc="${PGSQL_CONFIG_FILE:+${PGSQL_CONFIG_FILE%/*}}"
[ -n "$pg_etc" ] || pg_etc="$(__find_pgsql_conf)"
[ -n "$pg_etc" ] && pg_etc="${pg_etc%/*}"
[ -n "$pg_etc" ] && __init_service_conf "/config/postgres" "$pg_etc"
return 0
}
# - - - - - - - - - - - - - - - - - - - - - - - - -
__init_couchdb() {
local home="${COUCHDB_CONFIG_FILE:-$(__find_couchdb_conf)}"
local user_name="${COUCHDB_USER:-root}"
local user_pass="${COUCHDB_PASSWORD:-$SET_RANDOM_PASS}"
return
command -v couchdb &>/dev/null || return 0
__init_service_conf "/config/couchdb" "/etc/couchdb"
return 0
}
# - - - - - - - - - - - - - - - - - - - - - - - - -
# Show available init functions
__init_help() {
echo '
__certbot
__update_ssl_certs
__create_ssl_cert
Config seeding (copy /etc → /config, no symlinks):
__init_service_conf <conf_dir> <primary_etc_dir> [extra_etc_path ...]
__init_apache [svc] seeds /config/apache2 from /etc/apache2
__init_nginx [svc] seeds /config/nginx from /etc/nginx
__init_php seeds /config/php from /etc/php* + /etc/php.ini + /etc/php-fpm
__init_mysql [svc] seeds /config/mysql from /etc/mysql + /etc/my.{ini,cnf}
__init_mongodb seeds /config/mongodb from /etc/mongodb + /etc/mongod.conf
__init_postgres seeds /config/postgres from pg data dir
__init_couchdb seeds /config/couchdb from /etc/couchdb
SSL:
__update_ssl_certs
__create_ssl_cert
'
return
}
@@ -1389,100 +1365,6 @@ __initialize_custom_bin_dir() {
fi
}
# - - - - - - - - - - - - - - - - - - - - - - - - -
__initialize_default_templates() {
local errors=0
if [ -n "$DEFAULT_TEMPLATE_DIR" ]; then
if [ "$CONFIG_DIR_INITIALIZED" = "no" ] && [ -d "/config" ]; then
__log_info "Copying default config files $DEFAULT_TEMPLATE_DIR > /config"
if [ ! -d "$DEFAULT_TEMPLATE_DIR" ]; then
__log_warn "Template directory not found: $DEFAULT_TEMPLATE_DIR"
return 0
fi
for create_config_template in "$DEFAULT_TEMPLATE_DIR"/*; do
if [ -e "$create_config_template" ]; then
create_template_name="${create_config_template##*/}"
if [ -d "$create_config_template" ]; then
mkdir -p "/config/$create_template_name/" || errors=$((errors + 1))
if __is_dir_empty "/config/$create_template_name"; then
if ! cp -Rf "$create_config_template/." "/config/$create_template_name/" 2>/dev/null; then
__log_warn "Failed to copy template directory: $create_template_name"
errors=$((errors + 1))
fi
fi
elif [ -f "$create_config_template" ]; then
if [ ! -e "/config/$create_template_name" ]; then
if ! cp -Rf "$create_config_template" "/config/$create_template_name" 2>/dev/null; then
__log_warn "Failed to copy template file: $create_template_name"
errors=$((errors + 1))
fi
fi
fi
fi
done
unset create_config_template create_template_name
__log_debug "Template initialization completed with $errors errors"
fi
fi
return 0
}
# - - - - - - - - - - - - - - - - - - - - - - - - -
__initialize_config_dir() {
local errors=0
if [ -n "$DEFAULT_CONF_DIR" ]; then
if [ "$CONFIG_DIR_INITIALIZED" = "no" ] && [ -d "/config" ]; then
__log_info "Copying custom config files: $DEFAULT_CONF_DIR > /config"
if [ ! -d "$DEFAULT_CONF_DIR" ]; then
__log_warn "Config directory not found: $DEFAULT_CONF_DIR"
return 0
fi
for create_config_template in "$DEFAULT_CONF_DIR"/*; do
if [ -e "$create_config_template" ]; then
create_config_name="${create_config_template##*/}"
if [ -d "$create_config_template" ]; then
mkdir -p "/config/$create_config_name" || errors=$((errors + 1))
if __is_dir_empty "/config/$create_config_name"; then
if ! cp -Rf "$create_config_template/." "/config/$create_config_name/" 2>/dev/null; then
__log_warn "Failed to copy config directory: $create_config_name"
errors=$((errors + 1))
fi
fi
elif [ -f "$create_config_template" ]; then
if [ ! -e "/config/$create_config_name" ]; then
if ! cp -Rf "$create_config_template" "/config/$create_config_name" 2>/dev/null; then
__log_warn "Failed to copy config file: $create_config_name"
errors=$((errors + 1))
fi
fi
fi
fi
done
unset create_config_template create_config_name
__log_debug "Config initialization completed with $errors errors"
fi
fi
return 0
}
# - - - - - - - - - - - - - - - - - - - - - - - - -
__initialize_data_dir() {
[ "$DATA_DIR_INITIALIZED" = "no" ] || return 0
if [ -d "/data" ]; then
if [ -n "$DEFAULT_DATA_DIR" ]; then
__log_info "Copying data files $DEFAULT_DATA_DIR > /data"
for create_data_template in "$DEFAULT_DATA_DIR"/*; do
create_data_name="${create_data_template##*/}"
if [ -n "$create_data_template" ]; then
if [ -d "$create_data_template" ]; then
mkdir -p "/data/$create_data_name"
__is_dir_empty "/data/$create_data_name" && cp -Rf "$create_data_template/." "/data/$create_data_name/" 2>/dev/null
elif [ -e "$create_data_template" ]; then
[ -e "/data/$create_data_name" ] || cp -Rf "$create_data_template" "/data/$create_data_name" 2>/dev/null
fi
fi
done
unset create_data_template
fi
fi
}
# - - - - - - - - - - - - - - - - - - - - - - - - -
__initialize_www_root() {
local WWW_INIT=""
@@ -1496,7 +1378,7 @@ __initialize_www_root() {
WWW_INIT="false"
fi
if [ "$WWW_INIT" = "true" ] && [ -d "$WWW_TEMPLATE" ]; then
cp -Rf "$DEFAULT_DATA_DIR/data/htdocs/." "$WWW_ROOT_DIR/" 2>/dev/null
cp -Rf "$WWW_TEMPLATE/." "$WWW_ROOT_DIR/" 2>/dev/null
fi
__initialize_web_health "$WWW_ROOT_DIR"
}
@@ -1533,27 +1415,16 @@ __is_htdocs_mounted() {
}
# - - - - - - - - - - - - - - - - - - - - - - - - -
__initialize_ssl_certs() {
[ "$SSL_ENABLED" = "yes" ] && __certbot
if [ -d "/config/letsencrypt" ]; then
mkdir -p "/etc/letsencrypt"
__file_copy "/config/letsencrypt" "/etc/letsencrypt/"
elif [ -d "/etc/letsencrypt" ] && [ ! -d "/config/letsencrypt" ]; then
mkdir -p "/config/letsencrypt"
__file_copy "/etc/letsencrypt" "/config/letsencrypt/"
else
[ -d "$SSL_DIR" ] || mkdir -p "$SSL_DIR"
if [ "$SSL_ENABLED" = "true" ] || [ "$SSL_ENABLED" = "yes" ]; then
if [ -f "$SSL_CERT" ] && [ -f "$SSL_KEY" ]; then
SSL_ENABLED="true"
if [ -n "$SSL_CA" ] && [ -f "$SSL_CA" ]; then
mkdir -p "$SSL_DIR/certs"
cat "$SSL_CA" >>"/etc/ssl/certs/ca-certificates.crt"
cp -Rf "/." "$SSL_DIR/"
fi
else
[ -d "$SSL_DIR" ] || mkdir -p "$SSL_DIR"
__create_ssl_cert
[ -d "$SSL_DIR" ] || mkdir -p "$SSL_DIR"
if [ "$SSL_ENABLED" = "yes" ]; then
if [ -f "$SSL_CERT" ] && [ -f "$SSL_KEY" ]; then
if [ -n "$SSL_CA" ] && [ -f "$SSL_CA" ]; then
mkdir -p "$SSL_DIR/certs"
cat "$SSL_CA" >>"/etc/ssl/certs/ca-certificates.crt"
fi
__update_ssl_certs
else
__create_ssl_cert
fi
fi
type update-ca-certificates &>/dev/null && update-ca-certificates &>/dev/null
@@ -1687,9 +1558,6 @@ export SSL_CA="${SSL_CA:-/config/ssl/ca.crt}"
export SSL_KEY="${SSL_KEY:-/config/ssl/localhost.pem}"
export SSL_CERT="${SSL_CERT:-/config/ssl/localhost.crt}"
export LOCAL_BIN_DIR="${LOCAL_BIN_DIR:-/usr/local/bin}"
export DEFAULT_DATA_DIR="${DEFAULT_DATA_DIR:-/usr/local/share/template-files/data}"
export DEFAULT_CONF_DIR="${DEFAULT_CONF_DIR:-/usr/local/share/template-files/config}"
export DEFAULT_TEMPLATE_DIR="${DEFAULT_TEMPLATE_DIR:-/usr/local/share/template-files/defaults}"
# - - - - - - - - - - - - - - - - - - - - - - - - -
# Backup settings
export BACKUP_MAX_DAYS="${BACKUP_MAX_DAYS:-}"
@@ -1743,6 +1611,6 @@ export ENTRYPOINT_DATA_INIT_FILE DATA_DIR_INITIALIZED ENTRYPOINT_CONFIG_INIT_FIL
export ENTRYPOINT_PID_FILE ENTRYPOINT_INIT_FILE ENTRYPOINT_FIRST_RUN
# - - - - - - - - - - - - - - - - - - - - - - - - -
# export the functions
export -f __get_pid __start_init_scripts __is_running __certbot __update_ssl_certs __create_ssl_cert
export -f __get_pid __start_init_scripts __is_running __update_ssl_certs __create_ssl_cert
# - - - - - - - - - - - - - - - - - - - - - - - - -
# end of functions
@@ -1,102 +0,0 @@
######
#Domain REPLACE_DOMAIN is dynamic DNS
#
#DHCP REPLACE_IPV4_ADDRESS
key rndc-key {
algorithm hmac-md5;
secret REPLACE_WITH_RNDC_KEY;
}
zone REPLACE_DOMAIN {
primary 127.0.0.1;
key rndc-key;
}
zone in-addr.arpa. {
primary 127.0.0.1;
key rndc-key;
}
#option T150 code 150 = string;
#option wpad-url code 252 = text;
#option wpad-url "http://REPLACE_DOMAIN/wpad.dat ";
authoritative;
ddns-ttl 3600;
ddns-updates on;
ddns-update-style interim;
update-static-leases on;
update-conflict-detection off;
update-optimization on;
use-host-decl-names on;
ddns-domainname "REPLACE_DOMAIN";
ddns-rev-domainname "in-addr.arpa.";
allow client-updates;
allow unknown-clients;
allow booting ;
allow bootp ;
next-server REPLACE_IPV4_ADDRESS;
filename "linux.0";
max-lease-time 3600;
default-lease-time 3600;
dynamic-bootp-lease-length 3600;
subnet REPLACE_IPV4_SUBNET netmask REPLACE_IPV4_NETMASK {
dynamic-bootp-lease-length 3600;
option slp-directory-agent true REPLACE_IPV4_ADDRESS;
option log-servers REPLACE_IPV4_ADDRESS;
option time-servers REPLACE_IPV4_ADDRESS;
allow client-updates;
ddns-updates on;
update-conflict-detection off;
update-static-leases true;
option routers REPLACE_IPV4_GATEWAY;
option subnet-mask REPLACE_IPV4_NETMASK;
option nis-domain "REPLACE_DOMAIN";
option domain-name "REPLACE_DOMAIN";
option domain-search "REPLACE_DOMAIN";
option domain-name-servers REPLACE_IPV4_ADDRESS;
option time-offset -18000;
option ntp-servers REPLACE_IPV4_ADDRESS;
option netbios-name-servers REPLACE_IPV4_ADDRESS;
option netbios-node-type 8;
range dynamic-bootp REPLACE_IPV4_ADDR_START REPLACE_IPV4_ADDR_END;
default-lease-time 3600;
max-lease-time 3600;
authoritative;
allow unknown-clients;
allow booting;
allow bootp;
update-static-leases on;
next-server REPLACE_IPV4_ADDRESS;
filename "pxelinux.0";
}
option architecture-type code 93 = unsigned integer 16;
class "pxeclients" {
match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
if option architecture-type = 0 {
filename "pxelinux.0";
} elsif option architecture-type = 9 {
filename "syslinux64.efi";
} elsif option architecture-type = 7 {
filename "syslinux64.efi";
} elsif option architecture-type = 6 {
filename "syslinux32.efi";
}
}
## Begin Fixed Addresses ##
#Servers REPLACE_IPV4_ADDRESS
#################################################
# host ddns {
# hardware ethernet 52:54:00:8f:c5:cb;
# fixed-address REPLACE_IPV4_ADDRESS;
# ddns-hostname monitor;
# ddns-domainname "REPLACE_DOMAIN";
# }
@@ -1,99 +0,0 @@
#Domain REPLACE_DOMAIN is dynamic DNS
#
#Servers REPLACE_IPV6_ADDR
key rndc-key {
algorithm hmac-md5;
secret REPLACE_WITH_RNDC_KEY;
}
zone REPLACE_DOMAIN {
primary 127.0.0.1;
key rndc-key;
}
zone ip6.arpa {
primary 127.0.0.1;
key rndc-key;
}
#option T150 code 150 = string;
#option wpad-url code 252 = text;
#option wpad-url "http://REPLACE_DOMAIN/wpad.dat";
authoritative;
ddns-ttl 3600;
ddns-updates on;
ddns-update-style interim;
update-static-leases on;
update-conflict-detection off;
update-optimization on;
use-host-decl-names on;
ddns-domainname "REPLACE_DOMAIN";
ddns-rev-domainname "ip6.arpa.";
allow client-updates;
allow unknown-clients;
allow booting ;
allow bootp ;
option dhcp6.bootfile-url "tftp://[REPLACE_IPV6_ADDRESS]/linux.0";
option dhcp6.bootfile-url code 59 = string ;
max-lease-time 43200;
default-lease-time 43200;
dynamic-bootp-lease-length 43200;
subnet6 REPLACE_IPV6_SUBNET/REPLACE_IPV6_SUBNET {
dynamic-bootp-lease-length 3600;
allow client-updates;
ddns-ttl 43200;
ddns-updates on;
ddns-update-style standard;
update-static-leases on;
update-static-leases true;
update-conflict-detection off;
update-optimization false;
use-host-decl-names on;
ddns-domainname "REPLACE_DOMAIN";
ddns-rev-domainname "ip6.arpa";
option subnet-mask IPV4_ADDR_NETMASK;
option nis-domain "REPLACE_DOMAIN";
option domain-name "REPLACE_DOMAIN";
option dhcp6.name-servers REPLACE_IPV6_ADDRESS;
option time-offset -18000;
option netbios-node-type 8;
option dhcp6.domain-search "REPLACE_DOMAIN";
range6 REPLACE_IPV6_ADDR_START REPLACE_IPV6_ADDR_END;
default-lease-time 43200;
max-lease-time 43200;
authoritative;
allow unknown-clients;
allow booting;
allow bootp;
option dhcp6.bootfile-url "tftp://[REPLACE_IPV6_ADDRESS]/linux.0";
}
option architecture-type code 93 = unsigned integer 16;
class "pxeclients" {
match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
if option architecture-type = 0 {
filename "pxelinux.0";
} elsif option architecture-type = 9 {
filename "syslinux64.efi";
} elsif option architecture-type = 7 {
filename "syslinux64.efi";
} elsif option architecture-type = 6 {
filename "syslinux32.efi";
}
}
## Begin Fixed Addresses ##
#Servers REPLACE_IPV6_ADDRESS
#################################################
# host ddns {
# hardware ethernet 00:50:56:a1:87:a8;
# fixed-address6 REPLACE_IPV6_ADDRESS;
# ddns-hostname ddns;
# ddns-domainname "REPLACE_DOMAIN";
# }
@@ -1,135 +0,0 @@
#!/usr/bin/env bash
# - - - - - - - - - - - - - - - - - - - - - - - - -
# Set bash options
[ "$DEBUGGER" = "on" ] && echo "Enabling debugging" && set -o pipefail -x$DEBUGGER_OPTIONS || set -o pipefail
# - - - - - - - - - - - - - - - - - - - - - - - - -
# import the functions file
[ -f "/usr/local/etc/docker/functions/entrypoint.sh" ] && . "/usr/local/etc/docker/functions/entrypoint.sh"
# - - - - - - - - - - - - - - - - - - - - - - - - -
# GLOBAL enviroment variables
#USER="${USER:-root}"
#LANG="${LANG:-C.UTF-8}"
#TZ="${TZ:-America/New_York}"
#SERVICE_USER="${SERVICE_USER:-root}"
# - - - - - - - - - - - - - - - - - - - - - - - - -
# directory settings
#BACKUP_DIR="${BACKUP_DIR:-/data/backups}"
#WWW_ROOT_DIR="${WWW_ROOT_DIR:-/usr/local/share/httpd/default}"
#LOCAL_BIN_DIR="${LOCAL_BIN_DIR:-/usr/local/bin}"
#DATABASE_BASE_DIR="${DATABASE_BASE_DIR:-/data/db}"
#DEFAULT_DATA_DIR="${DEFAULT_DATA_DIR:-/usr/local/share/template-files/data}"
#DEFAULT_CONF_DIR="${DEFAULT_CONF_DIR:-/usr/local/share/template-files/config}"
#DEFAULT_TEMPLATE_DIR="${DEFAULT_TEMPLATE_DIR:-/usr/local/share/template-files/defaults}"
#DBTYPE="sqlite"
# - - - - - - - - - - - - - - - - - - - - - - - - -
# healthcheck
#HEALTH_ENABLED="${HEALTH_ENABLED:-$ENV_HEALTH_ENABLED}"
#HEALTH_URL="${HEALTH_URL:-}"
# - - - - - - - - - - - - - - - - - - - - - - - - -
# php settings
#PHP_VERSION="${PHP_VERSION//php/}"
#PHP_INI_DIR="${PHP_INI_DIR:-$(__find_php_ini)}"
#PHP_BIN_DIR="${PHP_BIN_DIR:-$(__find_php_bin)}"
# - - - - - - - - - - - - - - - - - - - - - - - - -
# services/ports
#ENV_PORTS="${ENV_PORTS:-}"
#SERVICE_PORT="${SERVICE_PORT:-$PORT}"
#WEB_SERVER_PORTS="${WEB_SERVER_PORTS:-$ENV_WEB_SERVER_PORTS}"
#SERVICES_LIST="${PROCS_LIST:-$SERVICES_LIST} "
# - - - - - - - - - - - - - - - - - - - - - - - - -
# networing info
DOMAINNAME="${DOMAINNAME:-}"
HOSTNAME="${HOSTNAME:-casjaysdev-GEN_SCRIPT_REPLACE_APPNAME}"
FULL_DOMAIN_NAME="${FULL_DOMAIN_NAME:-${DOMAINNAME:-$HOSTNAME}}"
SERVER_ADMIN="${SERVER_ADMIN:-root@${EMAIL_DOMAIN:-${DOMAINNAME:-$FULL_DOMAIN_NAME}}}"
# - - - - - - - - - - - - - - - - - - - - - - - - -
EMAIL_RELAY="${EMAIL_RELAY:-}"
# - - - - - - - - - - - - - - - - - - - - - - - - -
# get ip addresses
CONTAINER_IP4_ADDRESS="${CONTAINER_IP4_ADDRESS:-$(__get_ip4)}"
CONTAINER_IP6_ADDRESS="${CONTAINER_IP6_ADDRESS:-$(__get_ip6)}"
# - - - - - - - - - - - - - - - - - - - - - - - - -
# cerbot
#CERT_BOT_MAIL="${CERT_BOT_MAIL:-}"
#CERTBOT_DOMAINS="${CERTBOT_DOMAINS:-}"
#CERT_BOT_ENABLED="${CERT_BOT_ENABLED:-false}"
# - - - - - - - - - - - - - - - - - - - - - - - - -
# ssl server settings
#SSL_ENABLED="${SSL_ENABLED:-false}"
#SSL_DIR="${SSL_DIR:-/config/ssl}"
#SSL_CA="${SSL_CA:-$SSL_DIR/ca.crt}"
#SSL_KEY="${SSL_KEY:-$SSL_DIR/server.key}"
#SSL_CERT="${SSL_CERT:-$SSL_DIR/server.crt}"
#SSL_CONTAINER_DIR="${SSL_CONTAINER_DIR:-/etc/ssl/CA}"
#COUNTRY="${COUNTRY:-US}"
#STATE="${STATE:-NY}"
#CITY="${CITY:-Albany}"
#UNIT="${UNIT:-CasjaysDev}"
#ORG="${ORG:-"Casjays Developments"}"
#DAYS_VALID="${DAYS_VALID:-3650}"
#RSA="${RSA:-4096}"
#CN="${CN:-$FULL_DOMAIN_NAME}"
# - - - - - - - - - - - - - - - - - - - - - - - - -
# web server configs
HTTPD_CONFIG_FILE="${HTTPD_CONFIG_FILE:-$(__find_httpd_conf)}"
NGINX_CONFIG_FILE="${NGINX_CONFIG_FILE:-$(__find_nginx_conf)}"
LIGHTTPD_CONFIG_FILE="${LIGHTTPD_CONFIG_FILE:-$(__find_lighttpd_conf)}"
# - - - - - - - - - - - - - - - - - - - - - - - - -
# redis env
DATABASE_DIR_REDIS="${DATABASE_DIR_REDIS:-$DATABASE_BASE_DIR/redis}"
# - - - - - - - - - - - - - - - - - - - - - - - - -
# postgresql env
DATABASE_DIR_PGSQL="${DATABASE_DIR_PGSQL:-$PGDATA}"
PGDATA="${DATABASE_DIR_PGSQL:-$DATABASE_BASE_DIR/postgres}"
POSTGRES_USER="${DATABASE_USER_ROOT:-$POSTGRES_USER}"
POSTGRES_PASSWORD="${DATABASE_PASS_ROOT:-$POSTGRES_PASSWORD}"
POSTGRES_CONFIG_FILE="${POSTGRES_CONFIG_FILE:-$(__find_pgsql_conf)}"
# - - - - - - - - - - - - - - - - - - - - - - - - -
# mariadb env
MARIADB_ROOT_HOST="${MARIADB_ROOT_HOST:-%}"
MARIADB_AUTO_UPGRADE="${MARIADB_AUTO_UPGRADE:-yes}"
MARIADB_DATABASE="${DATABASE_CREATE:-$MARIADB_DATABASE}"
MARIADB_USER="${DATABASE_USER_NORMAL:-$MARIADB_USER}"
MARIADB_PASSWORD="${DATABASE_PASS_NORMAL:-$MARIADB_PASSWORD}"
DATABASE_DIR_MARIADB="${DATABASE_DIR_MARIADB:-$DATABASE_BASE_DIR/mysql}"
MARIADB_ROOT_PASSWORD="${DATABASE_PASS_ROOT:-$MARIADB_ROOT_PASSWORD}"
MARIADB_ALLOW_EMPTY_ROOT_PASSWORD="${MARIADB_ALLOW_EMPTY_ROOT_PASSWORD:-}"
MARIADB_INITDB_SKIP_TZINFO="${MARIADB_INITDB_SKIP_TZINFO}:-"
MARIADB_RANDOM_ROOT_PASSWORD="${MARIADB_RANDOM_ROOT_PASSWORD:-}"
MARIADB_CONFIG_FILE="${MARIADB_CONFIG_FILE:-$(__find_mysql_conf)}"
# - - - - - - - - - - - - - - - - - - - - - - - - -
# mongodb env
INITDB_ROOT_USERNAME="${DATABASE_USER_ROOT:-$INITDB_ROOT_USERNAME}"
DATABASE_DIR_MONGODB="${DATABASE_DIR_MONGODB:-$DATABASE_BASE_DIR/mongodb}"
MONGO_INITDB_ROOT_PASSWORD="${DATABASE_PASS_ROOT:-$MONGO_INITDB_ROOT_PASSWORD}"
# - - - - - - - - - - - - - - - - - - - - - - - - -
# couchdb env
NODENAME="${NODENAME:-}"
COUCHDB_USER="${DATABASE_USER_ROOT:-$COUCHDB_USER}"
COUCHDB_PASSWORD="${DATABASE_PASS_ROOT:-$COUCHDB_PASSWORD}"
DATABASE_DIR_COUCHDB="${DATABASE_DIR_COUCHDB:-$DATABASE_BASE_DIR/couchdb}"
# - - - - - - - - - - - - - - - - - - - - - - - - -
# Supabase
DATABASE_DIR_SUPABASE="${DATABASE_DIR_SUPABASE:-$DATABASE_BASE_DIR/supabase}"
# - - - - - - - - - - - - - - - - - - - - - - - - -
# docker env
DOCKER_HOST="unix://var/run/docker.sock"
# - - - - - - - - - - - - - - - - - - - - - - - - -
# File locations
ENTRYPOINT_PID_FILE="${ENTRYPOINT_PID_FILE:-/run/.entrypoint.pid}"
ENTRYPOINT_INIT_FILE="${ENTRYPOINT_INIT_FILE:-/config/.entrypoint.done}"
ENTRYPOINT_DATA_INIT_FILE="${ENTRYPOINT_DATA_INIT_FILE:-/data/.docker_has_run}"
ENTRYPOINT_CONFIG_INIT_FILE="${ENTRYPOINT_CONFIG_INIT_FILE:-/config/.docker_has_run}"
# - - - - - - - - - - - - - - - - - - - - - - - - -
# Startup variables
INIT_DATE="${INIT_DATE:-$(date)}"
START_SERVICES="${START_SERVICES:-yes}"
ENTRYPOINT_MESSAGE="${ENTRYPOINT_MESSAGE:-yes}"
ENTRYPOINT_FIRST_RUN="${ENTRYPOINT_FIRST_RUN:-yes}"
DATA_DIR_INITIALIZED="${DATA_DIR_INITIALIZED:-false}"
CONFIG_DIR_INITIALIZED="${CONFIG_DIR_INITIALIZED:-false}"
# - - - - - - - - - - - - - - - - - - - - - - - - -
if [ -f "$ENTRYPOINT_PID_FILE" ] || [ -f "$ENTRYPOINT_INIT_FILE" ]; then
START_SERVICES="no" ENTRYPOINT_MESSAGE="no" ENTRYPOINT_FIRST_RUN="no"
fi
# - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -1,10 +0,0 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# directory settings
WWW_ROOT_DIR="${ENV_WWW_ROOT_DIR:-${WWW_ROOT_DIR}}"
BACKUP_DIR="${ENV_BACKUP_DIR:-${BACKUP_DIR:-/data/backups}}"
LOCAL_BIN_DIR="${ENV_LOCAL_BIN_DIR:-${LOCAL_BIN_DIR:-/usr/local/bin}}"
DATABASE_BASE_DIR="${ENV_DATABASE_BASE_DIR:-${DATABASE_BASE_DIR:-/data/db}}"
DEFAULT_DATA_DIR="${ENV_DEFAULT_DATA_DIR:-${DEFAULT_DATA_DIR:-/usr/local/share/template-files/data}}"
DEFAULT_CONF_DIR="${ENV_DEFAULT_CONF_DIR:-${DEFAULT_CONF_DIR:-/usr/local/share/template-files/config}}"
DEFAULT_TEMPLATE_DIR="${ENV_DEFAULT_TEMPLATE_DIR:-${EDEFAULT_TEMPLATE_DIR:-/usr/local/share/template-files/defaults}}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -1,5 +0,0 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# get ip addresses
CONTAINER_IP4_ADDRESS="${CONTAINER_IP4_ADDRESS:-$(__get_ip4)}"
CONTAINER_IP6_ADDRESS="${CONTAINER_IP6_ADDRESS:-$(__get_ip6)}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -1,6 +0,0 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# cerbot
CERT_BOT_MAIL="${ENV_CERT_BOT_MAIL:-$CERT_BOT_MAIL}"
CERTBOT_DOMAINS="${ENV_CERTBOT_DOMAINS:-$CERTBOT_DOMAINS}"
CERT_BOT_ENABLED="${ENV_CERT_BOT_ENABLED:-${CERT_BOT_ENABLED:-false}}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -1,7 +0,0 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# couchdb env
COUCHDB_NODENAME="${ENV_COUCHDB_NODENAME:-${COUCHDB_NODENAME:-$NODENAME}}"
COUCHDB_USER="${ENV_COUCHDB_USER:-${COUCHDB_USER:-$DATABASE_USER_ROOT}}"
COUCHDB_PASSWORD="${ENV_COUCHDB_PASSWORD:-${COUCHDB_PASSWORD:-$DATABASE_PASS_ROOT}}"
DATABASE_DIR_COUCHDB="${ENV_DATABASE_DIR_COUCHDB:-${DATABASE_DIR_COUCHDB:-/data/db/couchdb}}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -1,4 +0,0 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# docker env
DOCKER_HOST="${DOCKER_HOST:-unix://var/run/docker.sock}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -1,13 +0,0 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# GLOBAL enviroment variables
USER="${USER:-root}"
LANG="${LANG:-C.UTF-8}"
TZ="${TZ:-America/New_York}"
ENV_PORTS="${ENV_PORTS//\/*/}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# How to set permissions
SERVICE_USER="${SERVICE_USER:-}"
SERVICE_GROUP="${SERVICE_GROUP:-}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
SERVICE_UID="${SERVICE_UID:-}" # set the user id
SERVICE_GID="${SERVICE_GID:-}" # set the group id
@@ -1,5 +0,0 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# healthcheck
HEALTH_ENABLED="${HEALTH_ENABLED:-}"
HEALTH_URL="${HEALTH_URL:-}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -1,14 +0,0 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# mariadb env
MARIADB_ROOT_HOST="${MARIADB_ROOT_HOST:-%}"
MARIADB_AUTO_UPGRADE="${MARIADB_AUTO_UPGRADE:-yes}"
MARIADB_DATABASE="${MARIADB_DATABASE:-$DATABASE_CREATE}"
MARIADB_USER="${MARIADB_USER:-$DATABASE_USER_NORMAL}"
MARIADB_PASSWORD="${MARIADB_PASSWORD:-$DATABASE_PASS_NORMAL}"
DATABASE_DIR_MARIADB="${DATABASE_DIR_MARIADB:-/data/db/mariadb}"
MARIADB_ROOT_PASSWORD="${MARIADB_ROOT_PASSWORD:-$DATABASE_PASS_ROOT}"
MARIADB_ALLOW_EMPTY_ROOT_PASSWORD="${MARIADB_ALLOW_EMPTY_ROOT_PASSWORD:-}"
MARIADB_INITDB_SKIP_TZINFO="${MARIADB_INITDB_SKIP_TZINFO}:-"
MARIADB_RANDOM_ROOT_PASSWORD="${MARIADB_RANDOM_ROOT_PASSWORD:-}"
MARIADB_CONFIG_FILE="${MARIADB_CONFIG_FILE:-$(__find_mysql_conf)}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -1,20 +0,0 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# mongodb env
DATABASE_DIR_MONGODB="${DATABASE_DIR_MONGODB:-/data/db/mongodb}"
INITDB_ROOT_USERNAME="${DATABASE_USER_ROOT:-$INITDB_ROOT_USERNAME}"
MONGO_INITDB_ROOT_PASSWORD="${DATABASE_PASS_ROOT:-$MONGO_INITDB_ROOT_PASSWORD}"
ME_CONFIG_EDITORTHEME="${ME_CONFIG_EDITORTHEME:-dracula}"
ME_CONFIG_MONGODB_URL="${ME_CONFIG_MONGODB_URL:-mongodb://127.0.0.1:27017}"
ME_CONFIG_MONGODB_ENABLE_ADMIN="${ME_CONFIG_MONGODB_ENABLE_ADMIN:-true}"
ME_CONFIG_BASICAUTH_USERNAME="${ME_CONFIG_BASICAUTH_USERNAME:-}"
ME_CONFIG_BASICAUTH_PASSWORD="${ME_CONFIG_BASICAUTH_PASSWORD:-}"
ME_CONFIG_BASICAUTH_USERNAME_FILE="${ME_CONFIG_BASICAUTH_USERNAME_FILE:-}"
ME_CONFIG_BASICAUTH_PASSWORD_FILE="${ME_CONFIG_BASICAUTH_PASSWORD_FILE:-}"
ME_CONFIG_MONGODB_ADMINUSERNAME_FILE="${ME_CONFIG_MONGODB_ADMINUSERNAME_FILE:-}"
ME_CONFIG_MONGODB_ADMINPASSWORD_FILE="${ME_CONFIG_MONGODB_ADMINPASSWORD_FILE:-}"
ME_CONFIG_MONGODB_AUTH_USERNAME_FILE="${ME_CONFIG_MONGODB_AUTH_USERNAME_FILE:-}"
ME_CONFIG_MONGODB_AUTH_PASSWORD_FILE="${ME_CONFIG_MONGODB_AUTH_PASSWORD_FILE:-}"
ME_CONFIG_MONGODB_CA_FILE="${ME_CONFIG_MONGODB_CA_FILE:-}"
VCAP_APP_HOST="${VCAP_APP_HOST:-0.0.0.0}"
VCAP_APP_PORT="${VCAP_APP_PORT:-19054}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -1,9 +0,0 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# networing info
DOMAINNAME="${DOMAINNAME:-}"
EMAIL_RELAY="${EMAIL_RELAY:-}"
HOSTNAME="${HOSTNAME:-casjaysdev-GEN_SCRIPT_REPLACE_APPNAME}"
EMAIL_DOMAIN="${EMAIL_DOMAIN:-${DOMAINNAME:-$HOSTNAME}}"
FULL_DOMAIN_NAME="${FULL_DOMAIN_NAME:-${DOMAINNAME:-$HOSTNAME}}"
SERVER_ADMIN="${SERVER_ADMIN:-root@${EMAIL_DOMAIN:-$FULL_DOMAIN_NAME}}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -1,4 +0,0 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# other
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -1,6 +0,0 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# php settings
PHP_VERSION="${PHP_VERSION//php/}"
PHP_INI_DIR="${PHP_INI_DIR:-$(__find_php_ini)}"
PHP_BIN_DIR="${PHP_BIN_DIR:-$(__find_php_bin)}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -1,8 +0,0 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# postgresql env
PGDATA="${DATABASE_DIR_PGSQL:-$PGDATA}"
DATABASE_DIR_PGSQL="${DATABASE_DIR_PGSQL:-/data/db/postgres}"
POSTGRES_USER="${DATABASE_USER_ROOT:-$POSTGRES_USER}"
POSTGRES_PASSWORD="${DATABASE_PASS_ROOT:-$POSTGRES_PASSWORD}"
POSTGRES_CONFIG_FILE="${POSTGRES_CONFIG_FILE:-$(__find_pgsql_conf)}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -1,4 +0,0 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# redis env
DATABASE_DIR_REDIS="${DATABASE_DIR_REDIS:-/data/db/redis}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -1,7 +0,0 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# services/ports
ENV_PORTS="${ENV_PORTS:-}"
SERVICE_PORT="${SERVICE_PORT:-$PORT}"
WEB_SERVER_PORTS="${WEB_SERVER_PORTS:-}"
SERVICES_LIST="${PROCS_LIST:-$SERVICES_LIST} "
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -1,19 +0,0 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# ssl server settings
SSL_ENABLED="${SSL_ENABLED:-false}"
SSL_DIR="${SSL_CONTAINER_DIR:-/config/ssl}"
SSL_DIR="${SSL_DIR:-$SSL_DIR}"
SSL_CA="${SSL_CA:-$SSL_DIR/ca.crt}"
SSL_KEY="${SSL_KEY:-$SSL_DIR/server.key}"
SSL_CERT="${SSL_CERT:-$SSL_DIR/server.crt}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# certificate settings
RSA="${RSA:-4096}"
STATE="${STATE:-NY}"
CITY="${CITY:-Albany}"
COUNTRY="${COUNTRY:-US}"
UNIT="${UNIT:-CasjaysDev}"
ORG="${ORG:-"Casjays Developments"}"
DAYS_VALID="${DAYS_VALID:-3650}"
CN="${CN:-${FULL_DOMAIN_NAME:-$HOSTNAME}}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -1,4 +0,0 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Supabase
DATABASE_DIR_SUPABASE="${DATABASE_DIR_SUPABASE:-/data/db/supabase}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -1,8 +0,0 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# web server configs
HTTPD_CONFIG_FILE="${HTTPD_CONFIG_FILE:-$(__find_httpd_conf)}"
NGINX_CONFIG_FILE="${NGINX_CONFIG_FILE:-$(__find_nginx_conf)}"
CADDY_CONFIG_FILE="${CHEROKEE_CONFIG_FILE:-$(__find_caddy_conf)}"
LIGHTTPD_CONFIG_FILE="${LIGHTTPD_CONFIG_FILE:-$(__find_lighttpd_conf)}"
CHEROKEE_CONFIG_FILE="${CHEROKEE_CONFIG_FILE:-$(__find_cherokee_conf)}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -1,21 +0,0 @@
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# File locations
ENTRYPOINT_PID_FILE="${ENTRYPOINT_PID_FILE:-/run/.entrypoint.pid}"
ENTRYPOINT_INIT_FILE="${ENTRYPOINT_INIT_FILE:-/config/.entrypoint.done}"
ENTRYPOINT_DATA_INIT_FILE="${ENTRYPOINT_DATA_INIT_FILE:-/data/.docker_has_run}"
ENTRYPOINT_CONFIG_INIT_FILE="${ENTRYPOINT_CONFIG_INIT_FILE:-/config/.docker_has_run}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Startup variables
INIT_DATE="${INIT_DATE:-$(date)}"
START_SERVICES="${START_SERVICES:-yes}"
ENTRYPOINT_MESSAGE="${ENTRYPOINT_MESSAGE:-yes}"
ENTRYPOINT_FIRST_RUN="${ENTRYPOINT_FIRST_RUN:-yes}"
DATA_DIR_INITIALIZED="${DATA_DIR_INITIALIZED:-false}"
CONFIG_DIR_INITIALIZED="${CONFIG_DIR_INITIALIZED:-false}"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Check if this is a new container
[ -f "$ENTRYPOINT_PID_FILE" ] && START_SERVICES="no"
[ -f "$ENTRYPOINT_CONFIG_INIT_FILE" ] && ENTRYPOINT_FIRST_RUN="no"
[ -f "$ENTRYPOINT_DATA_INIT_FILE" ] && DATA_DIR_INITIALIZED="true"
[ -f "$ENTRYPOINT_CONFIG_INIT_FILE" ] && CONFIG_DIR_INITIALIZED="true"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -1,38 +0,0 @@
#
options {
version "";
directory "/var/named";
pid-file "/var/run/named/named.pid";
dump-file "/var/named/data/dump.db";
memstatistics-file "/var/log/named/mem.stats";
statistics-file "/var/log/named/named.stats";
zone-statistics yes;
max-cache-size 15m;
interface-interval 60;
lame-ttl 0;
max-ncache-ttl 10800;
recursion yes;
allow-transfer { any; };
allow-recursion { any; };
allow-query { any; };
transfer-format many-answers;
listen-on { any; };
listen-on-v6 { any; };
notify yes;
also-notify { };
dnssec-validation auto;
managed-keys-directory "/etc/named/keys/";
forwarders { 1.1.1.1; 8.8.8.8; 8.8.4.4; 9.9.9.9; };
};
include "/etc/named/config/0000-logging.conf";
include "/etc/named/config/0001-rndc.key";
include "/etc/named/config/0001-rndc.conf";
include "/etc/named/config/0002-acl.conf";
include "/etc/named/zones/000-hint.conf";
include "/etc/named/zones/000-localhost.zone";
include "/etc/named/zones/000-localdomain.zone";
include "/etc/named/zones/001-ddns.zone";
include "/etc/named/zones/000-tor.zone";
@@ -1,8 +0,0 @@
#Certbot DNS
dns_rfc2136_server = 127.0.0.1
# TSIG key name
dns_rfc2136_name = certbot.
# TSIG key secret
dns_rfc2136_secret = REPLACE_WITH_RNDC_KEY
# TSIG key algorithm
dns_rfc2136_algorithm = HMAC-MD5
@@ -1,9 +0,0 @@
;default soa records
$TTL 38400 ; 10 hours 40 minutes
@ IN SOA dns dns-admin (
2021040901 ; serial
10800 ; refresh (3 hours)
3600 ; retry (1 hour)
1209600 ; expire (2 weeks)
38400 ; minimum (10 hours 40 minutes)
)
@@ -1,2 +0,0 @@
;default nameservers
@ IN NS dns
@@ -1,8 +0,0 @@
;local dns
dns IN A REPLACE_IPV4_ADDRESS
dns IN AAAA REPLACE_IPV6_ADDRESS
default._domainkey IN TXT ( "v=DKIM1; k=rsa; "
"p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDWQ16IV4OzWniRotqTNUvuwO5KknZMm5F5cOQl+Ch20Zm5D3RSL27AcjGE8DXIlkADDG3jFoXKOPilmCyf6ikqDX9PwBpeveY6ugaASMl6DHK4PSGZby6EmFuNu59kIpPJXac7Wwvy7Kd5mWVTZBxQt3ersDf8KRzL+Akr0IE7DwIDAQAB" ) ;
*.default._domainkey IN TXT ( "v=DKIM1; k=rsa; "
"p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDWQ16IV4OzWniRotqTNUvuwO5KknZMm5F5cOQl+Ch20Zm5D3RSL27AcjGE8DXIlkADDG3jFoXKOPilmCyf6ikqDX9PwBpeveY6ugaASMl6DHK4PSGZby6EmFuNu59kIpPJXac7Wwvy7Kd5mWVTZBxQt3ersDf8KRzL+Akr0IE7DwIDAQAB" ) ;
@@ -1,104 +0,0 @@
logging {
# channel default {
# file "/data/log/dns/default.log";
# severity debug;
# print-category yes;
# print-severity yes;
# print-time yes;
# };
# category lame-servers {
# default;
# };
# category dispatch {
# default;
# };
# category network {
# default;
# };
# category unmatched {
# default;
# };
# category client {
# default;
# };
# category resolver {
# default;
# };
# category config {
# default;
# };
# category database {
# default;
# };
# category general {
# default;
# };
# category default {
# default;
# };
channel security {
file "/data/log/dns/default.log";
severity dynamic;
print-severity yes;
print-time yes;
};
category security {
security;
};
category dnssec {
security;
};
channel xfer-in {
file "/data/log/dns/default.log";
severity info;
print-category yes;
print-severity yes;
print-time yes;
};
category xfer-in {
xfer-in;
};
channel xfer-out {
file "/data/log/dns/default.log";
severity info;
print-category yes;
print-severity yes;
print-time yes;
};
category xfer-out {
xfer-out;
};
channel update {
file "/data/log/dns/default.log";
severity info;
print-category yes;
print-severity yes;
print-time yes;
};
category update {
update;
};
channel notify {
file "/data/log/dns/default.log";
severity info;
print-category yes;
print-severity yes;
print-time yes;
};
category notify {
notify;
};
channel querylog {
file "/data/log/dns/default.log";
severity info;
print-time yes;
};
category queries {
querylog;
};
};
@@ -1,3 +0,0 @@
controls {
inet 127.0.0.1 allow { trusted; } keys { "rndc-key"; };
};
@@ -1,4 +0,0 @@
key "rndc-key" {
algorithm hmac-md5;
secret "REPLACE_WITH_RNDC_KEY";
};
@@ -1,10 +0,0 @@
acl "trusted" {
127.0.0.0/8;
10.0.0.0/8;
172.0.0.0/12;
192.168.0.0/16;
::1/128;
2001:db8:edfa:1234::/64;
localhost;
localnets;
};
@@ -1,5 +0,0 @@
;host info
@ HINFO "HP DL360" "CentOS"
* HINFO "HP DL360" "CentOS"
@ IN TXT "Hosted on REPLACE_DOMAIN"
* IN TXT "Hosted on REPLACE_DOMAIN"
@@ -1,5 +0,0 @@
;default server
@ IN A REPLACE_IPV4_ADDRESS
* IN A REPLACE_IPV4_ADDRESS
@ IN AAAA REPLACE_IPV6_ADDRESS
* IN AAAA REPLACE_IPV6_ADDRESS
@@ -1,33 +0,0 @@
$ORIGIN .
$TTL 0 ; 0 seconds
@ IN SOA . . (
1930 ; serial
0 ; refresh (0 seconds)
0 ; retry (0 seconds)
0 ; expire (0 seconds)
0 ; minimum (0 seconds)
)
KEYDATA 20201227202202 20180303084353 19700101000000 257 3 8 (
AwEAAagAIKlVZrpC6Ia7gEzahOR+9W29euxhJhVVLOyQ
bSEW0O8gcCjFFVQUTf6v58fLjwBd0YI0EzrAcQqBGCzh
/RStIoO8g0NfnfL2MTJRkxoXbfDaUeVPQuYEhg37NZWA
JQ9VnMVDxP/VHL496M/QZxkjf5/Efucp2gaDX6RS6CXp
oY68LsvPVjR0ZSwzz1apAzvN9dlzEheX7ICJBBtuA6G3
LQpzW5hOA2hzCTMjJPJ8LbqF6dsV6DoBQzgul0sGIcGO
Yl7OyQdXfZ57relSQageu+ipAdTTJ25AsRTAoub8ONGc
LmqrAmRLKBP1dfwhYB4N7knNnulqQxA+Uk1ihz0=
) ; KSK; alg = RSASHA256; key id = 19036
; next refresh: Sun, 27 Dec 2020 20:22:02 GMT
; trusted since: Sat, 03 Mar 2018 08:43:53 GMT
KEYDATA 20201227202202 20180303084353 19700101000000 257 3 8 (
AwEAAaz/tAm8yTn4Mfeh5eyI96WSVexTBAvkMgJzkKTO
iW1vkIbzxeF3+/4RgWOq7HrxRixHlFlExOLAJr5emLvN
7SWXgnLh4+B5xQlNVz8Og8kvArMtNROxVQuCaSnIDdD5
LKyWbRd2n9WGe2R8PzgCmr3EgVLrjyBxWezF0jLHwVN8
efS3rCj/EWgvIWgb9tarpVUDK/b58Da+sqqls3eNbuv7
pr+eoZG+SrDK6nWeL3c6H5Apxz7LjVc1uTIdsIXxuOLY
A4/ilBmSVIzuDWfdRUfhHdY6+cn8HFRm+2hM8AnXGXws
9555KrUB5qihylGa8subX2Nn6UwNR1AkUTV74bU=
) ; KSK; alg = RSASHA256; key id = 20326
; next refresh: Sun, 27 Dec 2020 20:22:02 GMT
; trusted since: Sat, 03 Mar 2018 08:43:53 GMT
@@ -1,4 +0,0 @@
zone "." in {
type hint;
file "data/hint";
};
@@ -1,6 +0,0 @@
zone "local" {
type master;
file "data/localdomain.conf";
allow-update { trusted; };
allow-transfer { trusted; };
};
@@ -1,14 +0,0 @@
zone "localhost" {
type master;
file "data/localhost.zone";
};
zone "0.0.127.in-addr.arpa" {
type master;
file "data/localhost4.rev";
};
zone "0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" {
type master;
file "data/localhost6.rev";
};
@@ -1,10 +0,0 @@
zone "onion" {
type forward;
forward only;
forwarders { 127.0.0.1 port 8053; };
};
zone "exit" {
type forward;
forward only;
forwarders { 127.0.0.1 port 8053; };
};
@@ -1,21 +0,0 @@
zone "REPLACE_DOMAIN" {
type master;
file "dynamic/ddns.zone";
allow-update { trusted; };
allow-transfer { trusted; };
};
zone "in-addr.arpa" {
type master;
file "reverse/in-addr.arpa.rev";
allow-update { trusted; };
allow-transfer { trusted; };
};
zone "ip6.arpa" {
type master;
file "reverse/ip6.arpa.rev";
allow-update { trusted; };
allow-transfer { trusted; };
};
@@ -1,99 +0,0 @@
types {
text/html html htm shtml;
text/css css;
text/xml xml;
image/gif gif;
image/jpeg jpeg jpg;
application/javascript js;
application/atom+xml atom;
application/rss+xml rss;
text/mathml mml;
text/plain txt;
text/vnd.sun.j2me.app-descriptor jad;
text/vnd.wap.wml wml;
text/x-component htc;
image/avif avif;
image/png png;
image/svg+xml svg svgz;
image/tiff tif tiff;
image/vnd.wap.wbmp wbmp;
image/webp webp;
image/x-icon ico;
image/x-jng jng;
image/x-ms-bmp bmp;
font/woff woff;
font/woff2 woff2;
application/java-archive jar war ear;
application/json json;
application/mac-binhex40 hqx;
application/msword doc;
application/pdf pdf;
application/postscript ps eps ai;
application/rtf rtf;
application/vnd.apple.mpegurl m3u8;
application/vnd.google-earth.kml+xml kml;
application/vnd.google-earth.kmz kmz;
application/vnd.ms-excel xls;
application/vnd.ms-fontobject eot;
application/vnd.ms-powerpoint ppt;
application/vnd.oasis.opendocument.graphics odg;
application/vnd.oasis.opendocument.presentation odp;
application/vnd.oasis.opendocument.spreadsheet ods;
application/vnd.oasis.opendocument.text odt;
application/vnd.openxmlformats-officedocument.presentationml.presentation
pptx;
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
xlsx;
application/vnd.openxmlformats-officedocument.wordprocessingml.document
docx;
application/vnd.wap.wmlc wmlc;
application/wasm wasm;
application/x-7z-compressed 7z;
application/x-cocoa cco;
application/x-java-archive-diff jardiff;
application/x-java-jnlp-file jnlp;
application/x-makeself run;
application/x-perl pl pm;
application/x-pilot prc pdb;
application/x-rar-compressed rar;
application/x-redhat-package-manager rpm;
application/x-sea sea;
application/x-shockwave-flash swf;
application/x-stuffit sit;
application/x-tcl tcl tk;
application/x-x509-ca-cert der pem crt;
application/x-xpinstall xpi;
application/xhtml+xml xhtml;
application/xspf+xml xspf;
application/zip zip;
application/octet-stream bin exe dll;
application/octet-stream deb;
application/octet-stream dmg;
application/octet-stream iso img;
application/octet-stream msi msp msm;
audio/midi mid midi kar;
audio/mpeg mp3;
audio/ogg ogg;
audio/x-m4a m4a;
audio/x-realaudio ra;
video/3gpp 3gpp 3gp;
video/mp2t ts;
video/mp4 mp4;
video/mpeg mpeg mpg;
video/quicktime mov;
video/webm webm;
video/x-flv flv;
video/x-m4v m4v;
video/x-mng mng;
video/x-ms-asf asx asf;
video/x-ms-wmv wmv;
video/x-msvideo avi;
}
@@ -1,65 +0,0 @@
# Default nginx configuration
user root;
worker_processes 1;
error_log /dev/stderr warn;
pid /tmp/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
keepalive_timeout 65;
gzip on;
map $http_upgrade $connection_upgrade { default upgrade; '' close; }
server {
listen SERVER_PORT;
root /data/htdocs/www;
index index.html index.php index.cgi index.pl index.aspx awstats.pl index.unknown.php index.default.php index.txt index.json;
proxy_intercept_errors off;
add_header X-Frame-Options "SAMEORIGIN" always;
add_header X-XSS-Protection "1; mode=block" always;
add_header X-Content-Type-Options "nosniff" always;
add_header Referrer-Policy "no-referrer-when-downgrade" always;
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
add_header Content-Security-Policy "script-src 'self' 'unsafe-inline' 'unsafe-eval' *; frame-src 'self' *; object-src 'self'" always;
location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
location /nginx_status {
stub_status;
}
location /health {
default_type text/html;
allow all;
access_log off;
return 200 'OK';
}
location /health.json {
default_type application/json;
allow all;
access_log off;
return 200 '{"status":"OK"}';
}
}
}
@@ -1,73 +0,0 @@
# Default nginx configuration
user root;
worker_processes 1;
error_log /dev/stderr warn;
pid /tmp/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
keepalive_timeout 65;
gzip on;
map $http_upgrade $connection_upgrade { default upgrade; '' close; }
server
listen SERVER_PORT ssl http2 default_server;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log info;
keepalive_timeout 75 75;
root /data/htdocs/www;
index index.html index.php index.cgi index.pl index.aspx awstats.pl index.unknown.php index.default.php index.txt index.json;
proxy_intercept_errors off;
add_header X-Frame-Options "SAMEORIGIN" always;
add_header X-XSS-Protection "1; mode=block" always;
add_header X-Content-Type-Options "nosniff" always;
add_header Referrer-Policy "no-referrer-when-downgrade" always;
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
add_header Content-Security-Policy "script-src 'self' 'unsafe-inline' 'unsafe-eval' *; frame-src 'self' *; object-src 'self'" always;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
ssl_prefer_server_ciphers off;
ssl_certificate /config/ssl/localhost.crt;
ssl_certificate_key /config/ssl/localhost.key;
location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
location /nginx_status {
stub_status;
}
location /health {
default_type text/html;
allow all;
access_log off;
return 200 'OK';
}
location /health.json {
default_type application/json;
allow all;
access_log off;
return 200 '{"status":"OK"}';
}
}
}
@@ -1,10 +0,0 @@
# RADVD with DHCPd6 configuration
# /etc/radvd.conf
interface eth0 {
AdvManagedFlag on;
AdvSendAdvert on;
# AdvAutonomous off;
AdvOtherConfigFlag on;
MinRtrAdvInterval 3;
MaxRtrAdvInterval 60;
};
@@ -1,49 +0,0 @@
## https://github.com/torproject/tor/blob/main/src/config/torrc.sample.in
############### Configuration file for a typical Tor user
ControlSocket /run/tor/control
ControlSocketsGroupWritable 1
CookieAuthentication 1
CookieAuthFile /run/tor/control.authcookie
CookieAuthFileGroupReadable 1
SOCKSPort 9050
SOCKSPolicy accept *
RunAsDaemon 0
DataDirectory /var/lib/tor
ControlPort 9051
Log error stderr
#HashedControlPassword 16:kfhkajdsfhkjadhfiuhfhdjcahsf
############### dnsforwarder
DNSPort 8053
AutomapHostsOnResolve 1
AutomapHostsSuffixes .exit,.onion
############### This section is just for location-hidden services ###
#HiddenServiceDir /data/tor/hidden/default
#HiddenServicePort 22 127.0.0.2:22
################ This section is just for relays #####################
#ORPort 9001
#ORPort 443 NoListen
#ORPort 127.0.0.1:9090 NoAdvertise
#Address noname.example.com
# OutboundBindAddress 10.0.0.5
#Nickname ididnteditheconfig
#RelayBandwidthRate 100 KBytes # Throttle traffic to 100KB/s (800Kbps)
#RelayBandwidthBurst 200 KBytes # But allow bursts up to 200KB (1600Kb)
#AccountingMax 40 GBytes
#AccountingStart day 00:00
#AccountingStart month 3 15:00
#ContactInfo Random Person <nobody AT example dot com>
#DirPort 9030 # what port to advertise for directory connections
#DirPort 80 NoListen
#DirPort 127.0.0.1:9091 NoAdvertise
#DirPortFrontPage /etc/tor/tor-exit-notice.html
#MyFamily $keyid,$keyid,...
#ExitPolicy accept *:6660-6667,reject *:* # allow irc ports on IPv4 and IPv6 but no more
#ExitPolicy accept *:119 # accept nntp ports on IPv4 and IPv6 as well as default exit policy
#ExitPolicy accept *4:119 # accept nntp ports on IPv4 only as well as default exit policy
#ExitPolicy accept6 *6:119 # accept nntp ports on IPv6 only as well as default exit policy
#ExitPolicy reject *:* # no exits allowed
#BridgeRelay 1
#PublishServerDescriptor 0
@@ -1,139 +0,0 @@
<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset='utf-8'>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="Keywords" content="Casjay, CasjaysDev, Jason M. Hempstead, Website, About Me">
<meta name="Description" content="Created By Casjays Developments">
<meta name="generator" content="CasjaysDev">
<link rel="shortcut icon" href="https://casjaysdev-sites.github.io/static/favicon.ico" />
<link rel="stylesheet" href="https://casjaysdev-sites.github.io/static/default-css/github-ribbon.css" />
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootswatch/4.5.0/darkly/bootstrap.min.css"
integrity="sha384-Bo21yfmmZuXwcN/9vKrA5jPUMhr7znVBBeLxT9MA4r2BchhusfJ6+n8TLGUcRAtL" crossorigin="anonymous">
<link rel="stylesheet" type="text/css" href="https:///static.casjay.pro/default-css/casjaysdev.css">
<script src="https://static.casjay.pro/default-js/errorpages/isup.js" async defer></script>
<script src="https://casjaysdev-sites.github.io/static/default-js/errorpages/homepage.js" async defer></script>
<script src="https://casjaysdev-sites.github.io/static/default-js/errorpages/loaddomain.js" async defer></script>
<script src="https://cdn.jsdelivr.net/npm/@widgetbot/crate@3" async defer></script>
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" async defer></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js" async defer></script>
<!-- Begin Main Site -->
<title>Dynamic DNS Server</title>
</head>
<!-- Begin Body -->
<body>
<!-- Begin Main Body -->
<div class="container pt-3">
<h1>Welcome</h1>
Your dynamic dns server has been setup<br />
Your config files can be found in the /config directory.<br />
Your data files can be found in the /data directory.<br />
Your web files can be found in the /data/htdocs/www directory.<br />
and your log files can be found in /data/logs<br />
</div>
<!-- End Main End Body -->
<br />
<!-- Begin Footer -->
<div class="footer footer-custom col-sm-12" align="center">
<br>
<!-- Begin Casjays Developments Footer -->
Copyright 1999 - 2021
<br />
<a href="https://casjay.pro" target="_blank">Casjays Developments</a> and <a
href="https://malaks-us.github.com/jason" target="_blank">Jason M. Hempstead-Malak</a><br />
Hosting by <a href="https://casjay.pro/hosting" target="_blank">Casjays Developments: Hosting</a><br />
and powered by <a href="https://casjaysdev.pro" target="_blank">CasjaysDev.pro</a>
<br />
<br />
<a href="https://www.patreon.com/casjay" target="_blank"><img
src="https://img.shields.io/badge/patreon-donate-orange.svg" border="0" alt="Casjays Patreon Page"></a>
<a href="https://www.paypal.me/casjaysdev" target="_blank"><img
src="https://img.shields.io/badge/Donate-PayPal-green.svg?casjay@yahoo.com" alt="Casjays Paypal Page"></a>
<br />
<br />
<a href="https://help.casjay.pro" target="_blank">CasjaysDev Support</a> |
<a href="https://bugs.casjay.pro" target="_blank">CasjaysDev Bugs</a> <br />
<a href="https://uptime.servicestat.us" target="_blank">System Status</a> |
<a href="https://services.servicestat.us" target="_blank">Service Status</a> |
<a href="https://uptime.servicestat.us" target="_blank">Complete Status</a> <br />
<a href="https://casjaysdev.pro/domains.html" target="_blank">Casjays Developments Domains</a>
<br />
<br />
Casjays Developments privacy policy can be found at<br />
<a href="https://casjaysdev.pro/policy/" target="_blank">https://casjaysdev.pro/policy</a>
<br />
<!-- End Casjays Developments Footer -->
<!-- Begin theme Code -->
<div class="text-center" style="color: royalblue;">
<br />
Made with 💜💜💜💜💜💜 by <br />
<a href="http://github.com/casjay" target="_blank" rel="noopener">Jason M. Hempstead (Casjay)</a>
<br />
This site is powered by an <a href="https://github.com/casjay-templates" target="_blank">open source</a> theme
</div>
<br />
<!-- End theme Code -->
<!-- Begin last updated -->
<span style="color: skyblue;">Last update on: 11/12/2021</span>
<!-- End last updated -->
<!-- Begin Google Track -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-936146-1"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() {
dataLayer.push(arguments);
}
gtag('js', new Date());
gtag('config', 'UA-936146-1');
</script>
<!-- Eng Google Track -->
<br />
<!-- Begin EU compliant -->
<div align="center">
<link rel="stylesheet" type="text/css"
href="https://cdnjs.cloudflare.com/ajax/libs/cookieconsent2/3.0.3/cookieconsent.min.css" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/cookieconsent2/3.0.3/cookieconsent.min.js"></script>
<script>
window.addEventListener("load", function () {
window.cookieconsent.initialise({
"palette": {
"popup": {
"background": "#64386b",
"text": "#ffcdfd"
},
"button": {
"background": "transparent",
"text": "#f8a8ff",
"border": "#f8a8ff"
}
},
"content": {
"message": "In accordance with the EU GDPR law this message is being displayed. - ",
"dismiss": "I Agree",
"link": "CasjaysDev Policy",
"href": "https://casjaysdev.pro/policy/"
},
"type": "opt-out"
})
});
</script>
</div>
<br />
<!-- End EU compliant -->
<br /> <br />
<!-- End Footer -->
<!-- End Body -->
</body>
<!-- End Site -->
</html>
@@ -1,77 +0,0 @@
;
. 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 199.9.14.201
B.ROOT-SERVERS.NET. 3600000 AAAA 2001:500:200::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
@@ -1,13 +0,0 @@
; Default zone
$ORIGIN local.
$TTL 38400
; ***********CHANGE THESE TO MATCH PROVIDER***************
$INCLUDE /etc/named/hosted/host.ddns.conf
$INCLUDE /etc/named/hosted/ip.ddns.conf
; **********Common Files**********
$INCLUDE /etc/named/common/001-soa.inc
$INCLUDE /etc/named/common/002-nameservers.inc
$INCLUDE /etc/named/common/003-dns.inc
$INCLUDE /var/named/dynamic/inc/static.ipv4.ddns.zone
$INCLUDE /var/named/dynamic/inc/static.ipv6.ddns.zone
@@ -1,11 +0,0 @@
$ttl 38400
localhost. IN SOA localhost. admin.localhost. (
2018020901 10800 3600 1209600 38400
)
localhost. IN NS localhost.
localhost. IN A 127.0.0.1
localhost. IN AAAA ::1
localhost. IN MX 0 localhost.
localhost. IN TXT "v=spf1 a mx ptr all"
localhost. IN SPF "v=spf1 a mx ptr all"
@@ -1,7 +0,0 @@
$ttl 38400
0.0.127.in-addr.arpa. IN SOA 127.0.0.1. admin.localhost. (
2018020901 10800 3600 1209600 38400
)
0.0.127.in-addr.arpa. IN NS localhost.
1.0.0.127.in-addr.arpa. IN PTR localhost.
@@ -1,7 +0,0 @@
$ttl 38400
0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa. IN SOA 127.0.0.1. admin.localhost. (
2018020901 10800 3600 1209600 38400
)
0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa. IN NS localhost.
1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa. IN PTR localhost.
@@ -1,23 +0,0 @@
; REPLACE_DOMAIN
$ORIGIN REPLACE_DOMAIN.
$TTL 38400 ; 10 hours 40 minutes
@ IN SOA dns.REPLACE_DOMAIN. dns-admin.REPLACE_DOMAIN. (
2020083021 ; serial
10800 ; refresh (3 hours)
3600 ; retry (1 hour)
1209600 ; expire (2 weeks)
38400 ; minimum (10 hours 40 minutes)
)
; **********Common Files**********
$INCLUDE /etc/named/common/002-nameservers.inc
$INCLUDE /etc/named/common/003-dns.inc
; ***********CHANGE THESE TO MATCH PROVIDER***************
$INCLUDE /etc/named/hosted/host.ddns.conf
$INCLUDE /etc/named/hosted/ip.ddns.conf
; **********Address Files**********
$INCLUDE /var/named/dynamic/inc/static.ipv4.ddns.zone
$INCLUDE /var/named/dynamic/inc/static.ipv6.ddns.zone
$INCLUDE /var/named/dynamic/inc/cnames.ddns.zone
@@ -1,7 +0,0 @@
; cname mappings
smtp CNAME mail
pop3 CNAME mail
imap CNAME mail
@ MX 1 mail
* MX 1 mail
@@ -1,14 +0,0 @@
; static ipv4 reverse mappings
$ORIGIN .
$TTL 38400 ; 10 hours 40 minutes
in-addr.arpa IN SOA dns.REPLACE_DOMAIN. admin.REPLACE_DOMAIN. (
2018013087 ; serial
10800 ; refresh (3 hours)
3600 ; retry (1 hour)
1209600 ; expire (2 weeks)
38400 ; minimum (10 hours 40 minutes)
)
NS dns1.REPLACE_DOMAIN.
NS dns2.REPLACE_DOMAIN.
$ORIGIN in-addr.arpa.
@@ -1,5 +0,0 @@
; static ipv4 mappings
localhost A 127.0.0.1
gateway A 192.168.1.254
* A REPLACE_IPV4_ADDRESS
@@ -1 +0,0 @@
; static ipv6 reverse mappings
@@ -1 +0,0 @@
; static ipv6 mappings
@@ -1,12 +0,0 @@
; static srv mappings
; _kerberos-master._tcp.REPLACE_DOMAIN. 86400 IN SRV 0 100 88 sso.REPLACE_DOMAIN.
; _kerberos-master._udp.REPLACE_DOMAIN. 86400 IN SRV 0 100 88 sso.REPLACE_DOMAIN.
; _kerberos._tcp.REPLACE_DOMAIN. 86400 IN SRV 0 100 88 sso.REPLACE_DOMAIN.
; _kerberos._udp.REPLACE_DOMAIN. 86400 IN SRV 0 100 88 sso.REPLACE_DOMAIN.
; _kerberos.REPLACE_DOMAIN. 86400 IN TXT "REPLACE_DOMAIN"
; _kpasswd._tcp.REPLACE_DOMAIN. 86400 IN SRV 0 100 464 sso.REPLACE_DOMAIN.
; _kpasswd._udp.REPLACE_DOMAIN. 86400 IN SRV 0 100 464 sso.REPLACE_DOMAIN.
; _ldap._tcp.REPLACE_DOMAIN. 86400 IN SRV 0 100 389 sso.REPLACE_DOMAIN.
; _ntp._udp.REPLACE_DOMAIN. 86400 IN SRV 0 100 123 sso.REPLACE_DOMAIN.
; ipa-ca.REPLACE_DOMAIN. 86400 IN A REPLACE_IPV4_ADDRESS
; ipa-ca.REPLACE_DOMAIN. 86400 IN AAAA 2001:db8:edfa:1234:5678::ff1f
@@ -1,12 +0,0 @@
$ORIGIN .
$TTL 38400 ; 10 hours 40 minutes
in-addr.arpa IN SOA dns.REPLACE_DOMAIN. admin.REPLACE_DOMAIN. (
2018013087 ; serial
10800 ; refresh (3 hours)
3600 ; retry (1 hour)
1209600 ; expire (2 weeks)
38400 ; minimum (10 hours 40 minutes)
)
NS dns.REPLACE_DOMAIN.
$INCLUDE /var/named/dynamic/inc/static.ipv4.arpa.rev
@@ -1,13 +0,0 @@
$ORIGIN .
$TTL 38400 ; 10 hours 40 minutes
ip6.arpa. IN SOA dns.REPLACE_DOMAIN. admin.REPLACE_DOMAIN. (
2018013087 ; serial
10800 ; refresh (3 hours)
3600 ; retry (1 hour)
1209600 ; expire (2 weeks)
38400 ; minimum (10 hours 40 minutes)
)
NS dns.REPLACE_DOMAIN.
$ORIGIN ip6.arpa.
$INCLUDE /var/named/dynamic/inc/static.ipv6.arpa.rev