32 lines
868 B
Nix
32 lines
868 B
Nix
{pkgs, ...}: {
|
|
services.kanidm = {
|
|
enableServer = true;
|
|
enableClient = true;
|
|
|
|
package = pkgs.kanidm_1_7;
|
|
|
|
serverSettings = {
|
|
version = "2"; # Configuration file version.
|
|
origin = "https://idm.peprolinbot.com";
|
|
domain = "idm.peprolinbot.com";
|
|
bindaddress = "[::1]:8443";
|
|
ldapbindaddress = "[::]:636";
|
|
http_client_address_info.x-forward-for = ["::1"];
|
|
tls_chain = "/var/lib/kanidm/cert.pem";
|
|
tls_key = "/var/lib/kanidm/key.pem";
|
|
};
|
|
|
|
clientSettings = {
|
|
uri = "https://idm.peprolinbot.com";
|
|
};
|
|
};
|
|
|
|
security.acme.certs."idm.peprolinbot.com" = {
|
|
postRun = ''
|
|
cp -Lv {cert,key,chain}.pem /var/lib/kanidm/
|
|
chown kanidm:kanidm /var/lib/kanidm/{cert,key,chain}.pem
|
|
chmod 400 /var/lib/kanidm/{cert,key,chain}.pem
|
|
'';
|
|
reloadServices = ["kanidm.service"];
|
|
};
|
|
}
|