wildcard dns with ACME

this is just me procrastinating …

(not tested, not deployed – we don't actually own i4f.de)
keep-around/5e7c46a4e96150bf22b674d671362ada79a2247d
stuebinm 2021-10-07 18:04:25 +02:00
parent 9eed435ea3
commit 5e7c46a4e9
No known key found for this signature in database
GPG Key ID: 8FBE8AAD32FA12B7
1 changed files with 19 additions and 11 deletions

View File

@ -2,17 +2,6 @@
let
shortdomain = "i4f.de";
short = name: target: {
inherit name target;
};
toVirtualHosts = {name, target, ...}: {
name = "${name}.${shortdomain}";
value = {
forceSSL = true;
enableACME = true;
locations."/".return = "302 https://${target}$request_uri";
};
};
redirects = [
(short "d" "discuss.infra4future.de")
(short "m" "mattermost.infra4future.de")
@ -20,8 +9,27 @@ let
(short "s" "survey.infra4future.de")
(short "g" "gitlab.infra4future.de")
];
short = name: target: {
inherit name target;
};
toVirtualHosts = {name, target, ...}: {
name = "${name}.${shortdomain}";
value = {
forceSSL = true;
useACMEHost = "*.i4f.de";
locations."/".return = "302 https://${target}$request_uri";
};
};
in
{
security.acme.certs."wildcard.i4f.de" = {
domain = "*.i4f.de";
dnsProvider = "cloudflare";
credentialsFile = "/persist/var/shortdomains/dns-secrents.env";
};
services.nginx.virtualHosts =
lib.listToAttrs (map toVirtualHosts redirects)
// {