summary refs log tree commit diff stats
path: root/modules/nixos/vhack/openssh/default.nix
diff options
context:
space:
mode:
authorBenedikt Peetz <benedikt.peetz@b-peetz.de>2024-08-02 22:40:47 +0200
committerBenedikt Peetz <benedikt.peetz@b-peetz.de>2024-08-02 23:13:36 +0200
commit4c978e0ccbed6e6a7fdaa2cde21f3951aa0a8ab8 (patch)
treecfb191781ebac23e531d12ad5f3fc9e0f3e8305f /modules/nixos/vhack/openssh/default.nix
parentfix(nixos/git-server): Add the required configuration to support http-clone (diff)
downloadnixos-server-4c978e0ccbed6e6a7fdaa2cde21f3951aa0a8ab8.tar.gz
nixos-server-4c978e0ccbed6e6a7fdaa2cde21f3951aa0a8ab8.zip
refactor(nixos/openssh): Migrate from `system/services`
Diffstat (limited to '')
-rw-r--r--modules/nixos/vhack/openssh/default.nix31
1 files changed, 31 insertions, 0 deletions
diff --git a/modules/nixos/vhack/openssh/default.nix b/modules/nixos/vhack/openssh/default.nix
new file mode 100644
index 0000000..30d16a6
--- /dev/null
+++ b/modules/nixos/vhack/openssh/default.nix
@@ -0,0 +1,31 @@
+{
+  config,
+  lib,
+  ...
+}: let
+  cfg = config.vhack.openssh;
+in {
+  options.vhack.openssh = {
+    enable = lib.mkEnableOption ''
+      a sane openssh implementation.
+    '';
+  };
+
+  config = lib.mkIf cfg.enable {
+    services.openssh = {
+      enable = true;
+      settings.PasswordAuthentication = false;
+      hostKeys = [
+        {
+          # See the explanation for this in /system/impermanence/mods/openssh.nix
+          # path = "/var/lib/sshd/ssh_host_ed25519_key";
+
+          # FIXME: Remove this workaround
+          path = "/srv/var/lib/sshd/ssh_host_ed25519_key";
+          rounds = 1000;
+          type = "ed25519";
+        }
+      ];
+    };
+  };
+}