mirror of
https://github.com/callumio/nixfiles.git
synced 2025-12-17 03:29:20 +00:00
ddns
This commit is contained in:
parent
967f911b5a
commit
188d9cb439
7 changed files with 27 additions and 0 deletions
13
hosts/hermes/ddns.nix
Normal file
13
hosts/hermes/ddns.nix
Normal file
|
|
@ -0,0 +1,13 @@
|
||||||
|
{config, ...}: {
|
||||||
|
services.cloudflare-dyndns = {
|
||||||
|
enable = true;
|
||||||
|
ipv4 = true;
|
||||||
|
ipv6 = false;
|
||||||
|
proxied = false;
|
||||||
|
deleteMissing = false;
|
||||||
|
domains = [];
|
||||||
|
apiTokenFile = config.age.secrets.cloudflare-api.path;
|
||||||
|
};
|
||||||
|
# services.cloudflare-dyndns.domains = [];
|
||||||
|
age.secrets."cloudflare-api".file = ../../secrets/cloudflare-api.age;
|
||||||
|
}
|
||||||
|
|
@ -2,6 +2,7 @@
|
||||||
imports = [
|
imports = [
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
./configuration.nix
|
./configuration.nix
|
||||||
|
./ddns.nix
|
||||||
./quassel.nix
|
./quassel.nix
|
||||||
./fail2ban.nix
|
./fail2ban.nix
|
||||||
./containers.nix
|
./containers.nix
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,7 @@
|
||||||
domain = "git.cleslie.uk";
|
domain = "git.cleslie.uk";
|
||||||
in {
|
in {
|
||||||
services = {
|
services = {
|
||||||
|
cloudflare-dyndns.domains = [domain];
|
||||||
forgejo = {
|
forgejo = {
|
||||||
enable = true;
|
enable = true;
|
||||||
database.type = "postgres";
|
database.type = "postgres";
|
||||||
|
|
|
||||||
|
|
@ -13,6 +13,7 @@ in {
|
||||||
ip_prefixes = "100.64.0.0/10";
|
ip_prefixes = "100.64.0.0/10";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
cloudflare-dyndns.domains = [domain];
|
||||||
caddy.virtualHosts.${domain}.extraConfig = ''
|
caddy.virtualHosts.${domain}.extraConfig = ''
|
||||||
reverse_proxy localhost:${toString config.services.headscale.port}
|
reverse_proxy localhost:${toString config.services.headscale.port}
|
||||||
'';
|
'';
|
||||||
|
|
|
||||||
|
|
@ -85,6 +85,8 @@ in {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
cloudflare-dyndns.domains = ["media.cleslie.uk" "watch.cleslie.uk" "request.cleslie.uk"];
|
||||||
|
|
||||||
jellyfin = {
|
jellyfin = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.jellyfin;
|
package = pkgs.jellyfin;
|
||||||
|
|
|
||||||
8
secrets/cloudflare-api.age
Normal file
8
secrets/cloudflare-api.age
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
age-encryption.org/v1
|
||||||
|
-> ssh-ed25519 /RyXeg p2ROUhWiDQDOjALQnhhf566js8ivYTsgwNfCaaoe6yQ
|
||||||
|
UnCc2/4lb+PxnrKdAPVqwAyXavFGr8M3NV3+fSSdAU0
|
||||||
|
-> ssh-ed25519 aSaoJQ hHqpvUCaH5RLAQwTdH1llfF/0aTraXtl25qFDaFhUwk
|
||||||
|
+4VMHc3PGR9HBlVTw4anbYORQPgFl24WGF5pwmt7w20
|
||||||
|
--- qa7ctM764SNg3u/ITk+6DRXbLqF1Lom1xgKysY9DrkE
|
||||||
|
ô›Zš¾;Qš
|
||||||
|
7î‡kÔ4%ú½#<08>ŸÞåpqÃÅâvìyú]
ièeǺð]É©i¾Ó!4Ø=ÇsŒä‰<C3A4>JfÉpúH«sæò29½¥œs¯åF}µ‘˪—#ói8ù
|
||||||
|
|
@ -10,4 +10,5 @@ in {
|
||||||
"mesh-conf-infra.age".publicKeys = keys.c ++ allSystems;
|
"mesh-conf-infra.age".publicKeys = keys.c ++ allSystems;
|
||||||
"mesh-conf-cleslie.age".publicKeys = keys.c ++ allSystems;
|
"mesh-conf-cleslie.age".publicKeys = keys.c ++ allSystems;
|
||||||
"forgejo-password.age".publicKeys = keys.c ++ [systems.hermes];
|
"forgejo-password.age".publicKeys = keys.c ++ [systems.hermes];
|
||||||
|
"cloudflare-api.age".publicKeys = keys.c ++ [systems.hermes];
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue