aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configuration.nix4
-rw-r--r--dns.nix32
-rw-r--r--static.nix53
-rw-r--r--vpsadminos.nix7
4 files changed, 63 insertions, 33 deletions
diff --git a/configuration.nix b/configuration.nix
index 4e7f513..41106e2 100644
--- a/configuration.nix
+++ b/configuration.nix
@@ -42,10 +42,6 @@
networking = {
domain = "loang.net";
hostName = "brno";
- nameservers = [
- "84.200.69.80" "84.200.70.40"
- "2001:1608:10:25::1c04:b12f" "2001:1608:10:25::9249:d69b"
- ];
};
security.sudo = {
diff --git a/dns.nix b/dns.nix
index 35f6676..48c5395 100644
--- a/dns.nix
+++ b/dns.nix
@@ -17,7 +17,28 @@
# along with loang configuration. If not, see <https://www.gnu.org/licenses/>.
{ ... }:
-{
+let
+ cercleLibreZone = builtins.toFile "cercle.libre.zone" ''
+ @ SOA danh.loang.net. mcsinyx.disroot.org. 2023021702 14400 3600 604800 3600
+ @ NS danh.loang.net.
+ @ A 37.205.11.127
+ @ AAAA 2a03:3b40:100::1:2
+ '';
+ sinyxIndyZone = builtins.toFile "sinyx.indy.zone" ''
+ @ SOA danh.loang.net. mcsinyx.disroot.org. 2023022002 14400 3600 604800 3600
+ @ NS danh.loang.net.
+ @ A 37.205.11.127
+ @ AAAA 2a03:3b40:100::1:2
+ * A 37.205.11.127
+ * AAAA 2a03:3b40:100::1:2
+ '';
+ stripromanPirateZone = builtins.toFile "striproman.pirate.zone" ''
+ @ SOA danh.loang.net. mcsinyx.disroot.org. 2023022023 14400 3600 604800 3600
+ @ NS danh.loang.net.
+ @ A 37.205.11.127
+ @ AAAA 2a03:3b40:100::1:2
+ '';
+in {
networking.firewall = {
allowedTCPPorts = [ 53 ];
allowedUDPPorts = [ 53 ];
@@ -63,6 +84,9 @@
dnssec-signing: on
zone:
+ - domain: cercle.libre
+ file: ${cercleLibreZone}
+ dnssec-signing: off
- domain: cnx.gdn
notify: secondary
acl: secondary
@@ -70,6 +94,12 @@
notify: secondary
acl: lego
acl: secondary
+ - domain: sinyx.indy
+ file: ${sinyxIndyZone}
+ dnssec-signing: off
+ - domain: striproman.pirate
+ file: ${stripromanPirateZone}
+ dnssec-signing: off
- domain: xrvs.net
notify: secondary
acl: secondary
diff --git a/static.nix b/static.nix
index 06a10e4..603b3c0 100644
--- a/static.nix
+++ b/static.nix
@@ -68,32 +68,6 @@ in {
root = "/var/lib/www/${domain}";
};
- "xem.${domain}" = let
- address = "http://${phylactery.host}:${toString phylactery.port}";
- in {
- enableACME = true;
- forceSSL = true;
- locations."/".proxyPass = address;
- };
-
- "cnx.gdn" = {
- enableACME = true;
- forceSSL = true;
- root = "/var/lib/www/cnx.gdn";
- };
-
- "px.cnx.gdn" = {
- enableACME = true;
- forceSSL = true;
- locations = {
- "/".index = "index.xhtml";
- "~ /index.xhtml$".extraConfig = ''
- expires -1;
- '';
- };
- root = "/var/lib/www/px.cnx.gdn";
- };
-
"septagram.suricrasia.online" = {
enableACME = true;
extraConfig = ''
@@ -102,7 +76,34 @@ in {
forceSSL = true;
root = "/var/lib/www/septagram.suricrasia.online";
};
+ } // (let aliasOpenNIC = openNIC: icann: config: {
+ ${openNIC} = {
+ # https://wiki.opennic.org/opennic/tls
+ addSSL = true;
+ useACMEHost = icann;
+ } // config;
+ ${icann} = {
+ enableACME = true;
+ forceSSL = true;
+ } // config;
};
+ in (aliasOpenNIC "cercle.libre" "khoanh.${domain}" {
+ root = "/var/lib/www/cercle.libre";
+ }) // (aliasOpenNIC "sinyx.indy" "cnx.gdn" {
+ root = "/var/lib/www/cnx.gdn";
+ }) // (aliasOpenNIC "pix.sinyx.indy" "px.cnx.gdn" {
+ locations = {
+ "/".index = "index.xhtml";
+ "~ /index.xhtml$".extraConfig = ''
+ expires -1;
+ '';
+ };
+ root = "/var/lib/www/px.cnx.gdn";
+ }) // (aliasOpenNIC "striproman.pirate" "cmx.cnx.gdn" (let
+ address = "http://${phylactery.host}:${toString phylactery.port}";
+ in {
+ locations."/".proxyPass = address;
+ })));
};
phylactery = {
diff --git a/vpsadminos.nix b/vpsadminos.nix
index 0a7189b..9c5a666 100644
--- a/vpsadminos.nix
+++ b/vpsadminos.nix
@@ -6,9 +6,12 @@
#
# https://github.com/vpsfreecz/vpsadminos/blob/staging/os/lib/nixos-container/vpsadminos.nix
-{ config, pkgs, lib, ... }:
+{ pkgs, lib, ... }:
with lib;
-let nameservers = [ "9.9.9.9" "2620:fe::fe" ];
+let nameservers = [
+ "88.198.92.222" "2a01:4f8:1c0c:82c0::1" # ns1.by.de.dns.opennic.glue
+ "195.90.211.16" # ns15.de.dns.opennic.glue
+];
in {
networking.nameservers = mkDefault nameservers;
services.resolved = mkDefault { fallbackDns = nameservers; };