kanidm: refactor
This commit is contained in:
parent
6bcc543cb4
commit
cbf449c356
@ -1,6 +1,5 @@
|
|||||||
{
|
{
|
||||||
config,
|
config,
|
||||||
pkgs,
|
|
||||||
lib,
|
lib,
|
||||||
self,
|
self,
|
||||||
...
|
...
|
||||||
@ -10,6 +9,7 @@
|
|||||||
imports = [
|
imports = [
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
./gitea.nix
|
./gitea.nix
|
||||||
|
./kanidm.nix
|
||||||
../server.nix
|
../server.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
@ -47,50 +47,11 @@
|
|||||||
groups = {
|
groups = {
|
||||||
jellyfin = { };
|
jellyfin = { };
|
||||||
};
|
};
|
||||||
extraGroups.acme.members = [
|
|
||||||
"kanidm"
|
|
||||||
"nginx"
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
|
|
||||||
services.openssh.settings.PermitRootLogin = lib.mkForce "prohibit-password";
|
services.openssh.settings.PermitRootLogin = lib.mkForce "prohibit-password";
|
||||||
|
|
||||||
security.acme.certs."auth.vimium.com" = {
|
|
||||||
postRun = "systemctl restart kanidm.service";
|
|
||||||
group = "acme";
|
|
||||||
};
|
|
||||||
|
|
||||||
services.kanidm =
|
|
||||||
let
|
|
||||||
baseDomain = "vimium.com";
|
|
||||||
domain = "auth.${baseDomain}";
|
|
||||||
uri = "https://${domain}";
|
|
||||||
in
|
|
||||||
{
|
|
||||||
package = pkgs.unstable.kanidm;
|
|
||||||
enableClient = true;
|
|
||||||
enableServer = true;
|
|
||||||
clientSettings = {
|
|
||||||
inherit uri;
|
|
||||||
};
|
|
||||||
serverSettings = {
|
|
||||||
bindaddress = "127.0.0.1:3013";
|
|
||||||
ldapbindaddress = "100.64.0.1:636";
|
|
||||||
domain = baseDomain;
|
|
||||||
origin = uri;
|
|
||||||
tls_chain = "${config.security.acme.certs.${domain}.directory}/full.pem";
|
|
||||||
tls_key = "${config.security.acme.certs.${domain}.directory}/key.pem";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
services.nginx.virtualHosts = {
|
services.nginx.virtualHosts = {
|
||||||
"auth.vimium.com" = {
|
|
||||||
useACMEHost = "auth.vimium.com";
|
|
||||||
forceSSL = true;
|
|
||||||
locations."/" = {
|
|
||||||
proxyPass = "https://127.0.0.1:3013";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
"outline.vimium.com" = {
|
"outline.vimium.com" = {
|
||||||
forceSSL = true;
|
forceSSL = true;
|
||||||
enableACME = true;
|
enableACME = true;
|
||||||
|
51
hosts/vps1/kanidm.nix
Normal file
51
hosts/vps1/kanidm.nix
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
baseDomain = "vimium.com";
|
||||||
|
domain = "auth.${baseDomain}";
|
||||||
|
in
|
||||||
|
{
|
||||||
|
services.kanidm =
|
||||||
|
let
|
||||||
|
uri = "https://${domain}";
|
||||||
|
in
|
||||||
|
{
|
||||||
|
package = pkgs.unstable.kanidm;
|
||||||
|
enableClient = true;
|
||||||
|
enableServer = true;
|
||||||
|
clientSettings = {
|
||||||
|
inherit uri;
|
||||||
|
};
|
||||||
|
serverSettings = {
|
||||||
|
bindaddress = "127.0.0.1:3013";
|
||||||
|
ldapbindaddress = "100.64.0.1:636";
|
||||||
|
domain = baseDomain;
|
||||||
|
origin = uri;
|
||||||
|
tls_chain = "${config.security.acme.certs.${domain}.directory}/full.pem";
|
||||||
|
tls_key = "${config.security.acme.certs.${domain}.directory}/key.pem";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
services.nginx.virtualHosts = {
|
||||||
|
"${domain}" = {
|
||||||
|
useACMEHost = "${domain}";
|
||||||
|
forceSSL = true;
|
||||||
|
locations."/" = {
|
||||||
|
proxyPass = "https://127.0.0.1:3013";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
users.extraGroups.acme.members = [
|
||||||
|
"kanidm"
|
||||||
|
"nginx"
|
||||||
|
];
|
||||||
|
|
||||||
|
security.acme.certs."${domain}" = {
|
||||||
|
postRun = "systemctl restart kanidm.service";
|
||||||
|
group = "acme";
|
||||||
|
};
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user