service/dyndns: migrate from serverle

This commit is contained in:
Felix Buehler 2023-06-04 17:17:35 +02:00
parent 828a73a0f8
commit 797261aad1
6 changed files with 45 additions and 14 deletions

View file

@ -3,7 +3,6 @@
imports = [
./hardware-configuration.nix
./disks.nix
./dyndns.nix
./network.nix
./services.nix
./syncthing.nix

View file

@ -1,11 +0,0 @@
{ config, lib, pkgs, ... }:
{
services.ddclient = {
enable = true;
server = "dyndns.inwx.com";
username = "Stunkymonkey-dyndns";
passwordFile = "/root/.dyndns_password";
domains = [ "serverle.stunkymonkey.de" ];
ipv6 = true;
};
}

View file

@ -16,6 +16,8 @@ sso:
totp-secret: ENC[AES256_GCM,data:J60zceMAWdUuUIHyV57mcEatt5zhbMatvL+Z0NBoEJyDG2u9MornLJju/+AoBUq/erbY4Z/ymlI=,iv:kUBIGMy1yDQ8Vc6GvxmGGqgQ341Lfvmq+Q/DCTHiT0k=,tag:fzCvUmnKuioArq7ObFwDUA==,type:str]
acme:
inwx: ENC[AES256_GCM,data:yf1Xi0YOSUMfTd91NCjMUD7uMPzFjK7wfsxnDeIXBfd1U0hopemF6KBDYVLIP7NrTDz+wGWCqvgO3w8FjfWjCgtcqw==,iv:4HOFyvuhCDTSFGgEqbdVmC8pDpf/CpapDaSUwwRZOGI=,tag:ynQxQS1VzpqCJZOfUP0Bwg==,type:str]
dyndns:
password: ENC[AES256_GCM,data:WsgT4Un6/yirszfONzhYQDT66arEdmzkeA==,iv:9IbyEwX8DvJMfW3XaUaObmsD8mZCr1eQo7MglGn8dl0=,tag:XM0Qf4KbdkercBvpEwJdtg==,type:str]
sops:
kms: []
gcp_kms: []
@ -40,8 +42,8 @@ sops:
a1BjcjVaM01UV0o5bTFTVTE5QUZKMmsKPAGYDf1FVtp4+Z/KUrI6z0aZYEwN1DYa
jKtA1IUXrmdaRllN0SfC+YjMXTk7IoJvrjagCv9Zo0zEKasfO8PL4g==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2023-02-21T22:00:55Z"
mac: ENC[AES256_GCM,data:pdoMUpMymTqJJ2GSjtu8PTsF8xx10mY7bTunpRdk2YJOtaes2urYWdH7jmX3NszqYeD0cY8KWAVgOgQxdGI1PW9uy+Xt7aiYDeaxDoYo2yot+5zj8lyV/ncAPRDEn5exGi7AmbJh6Wo84aS27AhMGC6KSJfRQx/uZMQqIvxFQlw=,iv:pexQtkKgjoBJnZMsR16hCc2hhaIo7TsezKgx2if3Wwo=,tag:3eTABZYlb+hh17EmhRBspg==,type:str]
lastmodified: "2023-06-04T14:25:20Z"
mac: ENC[AES256_GCM,data:vHbLSsIFoathXRhvEIlJZyPQr/nKguel72hiaCP0Z/jjrtr+2imFWTPzi4BxRIHJwybITh59ytxDBm3cxXuN0GbBsSVHjYAp5oLqiQHWyjWQsJpE8ITP/0W61lNGeVAzixntgz/QJKqavXs0duEDSqqw+7+fULo6Xzx794vnY1M=,iv:MTpTnDRRhPnV2e6xX42juXciWIbYtbIzy6GC+aYj9Gc=,tag:8e3uGqwW2CZnrQartHb5DQ==,type:str]
pgp: []
unencrypted_suffix: _unencrypted
version: 3.7.3

View file

@ -7,6 +7,7 @@ in
sops.secrets."acme/inwx" = { };
sops.secrets."borgbackup/password" = { };
sops.secrets."borgbackup/ssh_key" = { };
sops.secrets."dyndns/password" = { };
sops.secrets."sso/auth-key" = { };
sops.secrets."sso/felix/password-hash" = { };
sops.secrets."sso/felix/totp-secret" = { };
@ -20,6 +21,11 @@ in
sshKeyFile = secrets."borgbackup/ssh_key".path;
};
dyndns = {
enable = true;
passwordFile = secrets."dyndns/password".path;
};
prowlarr = {
enable = true;
};

View file

@ -6,6 +6,7 @@
./backup
./bazarr
./blocky
./dyndns
./freshrss
./gitea
./grafana

View file

@ -0,0 +1,34 @@
# running dyndns updates
{ config, lib, pkgs, ... }:
let
cfg = config.my.services.dyndns;
domain = config.networking.domain;
in
{
options.my.services.dyndns = with lib; {
enable = mkEnableOption "Dyndns";
username = mkOption {
type = types.str;
description = "Username for the dyndns.";
example = "admin";
default = "Stunkymonkey-dyndns";
};
passwordFile = mkOption {
type = types.path;
description = "Password for the username for dyndns.";
example = "/run/secrets/freshrss";
};
};
config = lib.mkIf cfg.enable {
services.ddclient = {
enable = true;
server = "dyndns.inwx.com";
username = cfg.username;
passwordFile = cfg.passwordFile;
domains = [ "serverle.${domain}" ];
ipv6 = true;
};
};
}