summaryrefslogtreecommitdiff
path: root/config/services/kerberos/default.nix
diff options
context:
space:
mode:
authorquentin@aristote.fr <quentin@aristote.fr>2025-12-31 23:40:37 +0100
committerquentin@aristote.fr <quentin@aristote.fr>2025-12-31 23:40:37 +0100
commit960262a6fb02d148a5a50165ff13a4701e9d907b (patch)
tree3c337f09821867eda545c6cd0a881944fd022d60 /config/services/kerberos/default.nix
parentb470a61fe0ecc476f53a7830960890854b72a5f7 (diff)
services: add kerberos
Diffstat (limited to 'config/services/kerberos/default.nix')
-rw-r--r--config/services/kerberos/default.nix39
1 files changed, 39 insertions, 0 deletions
diff --git a/config/services/kerberos/default.nix b/config/services/kerberos/default.nix
new file mode 100644
index 0000000..e36ab40
--- /dev/null
+++ b/config/services/kerberos/default.nix
@@ -0,0 +1,39 @@
+{
+ config,
+ ...
+}:
+let
+ realm = "aristote.mesh";
+in
+{
+ # client
+ security.krb5 = {
+ enable = true;
+ settings = {
+ libdefaults.default_realm = realm;
+ realms."${realm}" =
+ let
+ server = "${config.networking.hostName}.${realm}";
+ in
+ {
+ kdc = server;
+ admin_server = server;
+ };
+ };
+ };
+
+ # server
+ networking.firewall.allowedTCPPorts = [
+ 88
+ 749
+ ];
+ services.kerberos_server = {
+ enable = true;
+ settings.realms."${realm}" = { };
+ # initialization procedure
+ # https://github.com/NixOS/nixpkgs/issues/72722#issuecomment-557658883
+ # > kdb5_util create -s -r ${realm}
+ # > systemctl restart kadmind.service kdc.service
+ };
+
+}