modularize ssh-server

This commit is contained in:
Felix Buehler 2022-11-29 17:07:45 +01:00
parent 9b7778663e
commit 75aed3a84f
3 changed files with 30 additions and 12 deletions

View file

@ -4,6 +4,7 @@
./homer
./mumble-server
./rss-bridge
./ssh-server
];
}

View file

@ -0,0 +1,29 @@
# An SSH server, using 'mosh'
{ config, lib, ... }:
let
cfg = config.my.services.ssh-server;
in
{
options.my.services.ssh-server = {
enable = lib.mkEnableOption "SSH Server using 'mosh'";
};
config = lib.mkIf cfg.enable {
services.openssh = {
# Enable the OpenSSH daemon.
enable = true;
# Be more secure
permitRootLogin = "no";
passwordAuthentication = false;
};
# Opens the relevant UDP ports.
programs.mosh.enable = true;
# WARNING: if you remove this, then you need to assign a password to your user, otherwise
# `sudo` won't work. You can do that either by using `passwd` after the first rebuild or
# by setting an hashed password in the `users.users.felix` block as `initialHashedPassword`.
# additionally needed by deploy-rs
security.sudo.wheelNeedsPassword = false;
};
}