summary refs log tree commit diff
path: root/nixos/modules/services/networking/ntp
diff options
context:
space:
mode:
authorCtem <c@ctem.me>2021-01-06 19:33:39 +0900
committerCtem <c@ctem.me>2021-01-06 20:04:20 +0900
commit9550d865e9ecf2d3e0767231a68548865da34f87 (patch)
tree5f6743e79e734b125b7def9655452e831ea4cbb0 /nixos/modules/services/networking/ntp
parentfd0c2add78de18bff3303be35564efdcd8dca3f6 (diff)
downloadnixpkgs-9550d865e9ecf2d3e0767231a68548865da34f87.tar
nixpkgs-9550d865e9ecf2d3e0767231a68548865da34f87.tar.gz
nixpkgs-9550d865e9ecf2d3e0767231a68548865da34f87.tar.bz2
nixpkgs-9550d865e9ecf2d3e0767231a68548865da34f87.tar.lz
nixpkgs-9550d865e9ecf2d3e0767231a68548865da34f87.tar.xz
nixpkgs-9550d865e9ecf2d3e0767231a68548865da34f87.tar.zst
nixpkgs-9550d865e9ecf2d3e0767231a68548865da34f87.zip
nixos/chrony: add option to enable NTS authentication
Diffstat (limited to 'nixos/modules/services/networking/ntp')
-rw-r--r--nixos/modules/services/networking/ntp/chrony.nix12
1 files changed, 11 insertions, 1 deletions
diff --git a/nixos/modules/services/networking/ntp/chrony.nix b/nixos/modules/services/networking/ntp/chrony.nix
index e6fa48daf46..5842761ba7e 100644
--- a/nixos/modules/services/networking/ntp/chrony.nix
+++ b/nixos/modules/services/networking/ntp/chrony.nix
@@ -10,7 +10,7 @@ let
   keyFile = "${stateDir}/chrony.keys";
 
   configFile = pkgs.writeText "chrony.conf" ''
-    ${concatMapStringsSep "\n" (server: "server " + server + " iburst") cfg.servers}
+    ${concatMapStringsSep "\n" (server: "server " + server + " iburst" + optionalString (cfg.enableNTS) " nts") cfg.servers}
 
     ${optionalString
       (cfg.initstepslew.enabled && (cfg.servers != []))
@@ -19,6 +19,7 @@ let
 
     driftfile ${driftFile}
     keyfile ${keyFile}
+    ${optionalString (cfg.enableNTS) "ntsdumpdir ${stateDir}"}
 
     ${optionalString (!config.time.hardwareClockInLocalTime) "rtconutc"}
 
@@ -46,6 +47,15 @@ in
         '';
       };
 
+      enableNTS = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Whether to enable Network Time Security authentication.
+          Make sure it is supported by your selected NTP server(s).
+        '';
+      };
+
       initstepslew = mkOption {
         default = {
           enabled = true;