{ config, lib, pkgs, username, ... }: { # Enable the OpenSSH daemon. services.openssh = { enable = true; settings = { AllowUsers = [ username "root" ]; PasswordAuthentication = false; PermitRootLogin = "yes"; # for deploying configs }; }; systemd.tmpfiles.rules = [ "Z /etc/ssh 755 root root" ]; users.users.${username}.openssh.authorizedKeys.keys = [ "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIO4jL6gYOunUlUtPvGdML0cpbKSsPNqQ1jit4E7U1RyH" # laptop "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBJjT5QZ3zRDb+V6Em20EYpSEgPW5e/U+06uQGJdraxi" # desktop ]; # used for deploying configs to server users.users.root.openssh.authorizedKeys.keys = config.users.users.${username}.openssh.authorizedKeys.keys; }