]> Git — Sourcephile - sourcephile-nix.git/blob - machines/losurdo/users.nix
tor: improve type-checking and hardening
[sourcephile-nix.git] / machines / losurdo / users.nix
1 { inputs, pkgs, lib, config, machineName, ... }:
2 let
3 inherit (config.security) gnupg;
4 inherit (config.users) users;
5 in
6 {
7 imports = [
8 ../../members/julm.nix
9 ];
10
11 nix.trustedUsers = [
12 users."julm".name
13 ];
14
15 networking.nftables.ruleset = lib.concatMapStringsSep "\n"
16 (rule: "add rule inet filter fw2net meta skuid ${users.julm.name} " + rule) [
17 ''tcp dport {25,465} counter accept comment "SMTP"''
18 ''tcp dport 43 counter accept comment "Whois"''
19 ''tcp dport 6697 counter accept comment "IRCS"''
20 ''tcp dport 5222 counter accept comment "XMPP"''
21 ''tcp dport 11371 counter accept comment "HKP"''
22 ''tcp dport {9009,9010,9011,9012,9013} counter accept comment "croc"''
23 #''ip protocol tcp counter accept comment "all"''
24 ];
25
26 users = {
27 mutableUsers = false;
28 users = {
29 root = {
30 openssh.authorizedKeys.keys =
31 users."julm".openssh.authorizedKeys.keys;
32 hashedPassword = "!";
33 };
34 };
35 groups = {
36 wheel = {
37 members = [ users."julm".name ];
38 };
39 tor = {
40 members = [ users."julm".name ];
41 };
42 };
43 };
44
45 security.gnupg.secrets."ssh/backup.ssh-ed25519" = {};
46 security.gnupg.secrets."/root/.ssh/id_ed25519" = {
47 gpg = "${gnupg.store}/ssh/root.ssh-ed25519.gpg";
48 };
49 }