diff options
-rw-r--r-- | custom/ymir-nginx.nix | 6 | ||||
-rw-r--r-- | ymir.nix | 47 |
2 files changed, 31 insertions, 22 deletions
diff --git a/custom/ymir-nginx.nix b/custom/ymir-nginx.nix index 854dd4d4..975bb344 100644 --- a/custom/ymir-nginx.nix +++ b/custom/ymir-nginx.nix | |||
@@ -86,10 +86,10 @@ in { | |||
86 | ssl_ciphers 'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH'; | 86 | ssl_ciphers 'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH'; |
87 | ssl_prefer_server_ciphers on; | 87 | ssl_prefer_server_ciphers on; |
88 | ssl_session_cache shared:SSL:10m; | 88 | ssl_session_cache shared:SSL:10m; |
89 | ssl_dhparam /etc/ssl/dhparam.pem; | 89 | ssl_dhparam ${config.security.dhparams.params.nginx.path}; |
90 | 90 | ||
91 | ssl_certificate /var/lib/acme/yggdrasil.li/fullchain.pem; | 91 | ssl_certificate ${config.security.acme.directory}/yggdrasil.li/fullchain.pem; |
92 | ssl_certificate_key /var/lib/acme/yggdrasil.li/key.pem; | 92 | ssl_certificate_key ${config.security.acme.directory}/yggdrasil.li/key.pem; |
93 | 93 | ||
94 | server { | 94 | server { |
95 | listen *:80; | 95 | listen *:80; |
@@ -11,8 +11,11 @@ let | |||
11 | enabled = true; | 11 | enabled = true; |
12 | domain = name; | 12 | domain = name; |
13 | ssl = { | 13 | ssl = { |
14 | key = "/var/lib/acme/yggdrasil.li/key.pem"; | 14 | key = "${config.security.acme.directory}/yggdrasil.li/key.pem"; |
15 | cert = "/var/lib/acme/yggdrasil.li/fullchain.pem"; | 15 | cert = "${config.security.acme.directory}/yggdrasil.li/fullchain.pem"; |
16 | extraOptions = { | ||
17 | dhparam = config.security.dhparams.params.prosody.path; | ||
18 | }; | ||
16 | }; | 19 | }; |
17 | }; | 20 | }; |
18 | myDomains = [ "dirty-haskell.org" "www.dirty-haskell.org" "lists.dirty-haskell.org" "l.dirty-haskell.org" | 21 | myDomains = [ "dirty-haskell.org" "www.dirty-haskell.org" "lists.dirty-haskell.org" "l.dirty-haskell.org" |
@@ -402,7 +405,7 @@ in rec { | |||
402 | 405 | ||
403 | strict-export=git-daemon-export-ok | 406 | strict-export=git-daemon-export-ok |
404 | section-from-path=2 | 407 | section-from-path=2 |
405 | scan-path=/srv/git/repositories | 408 | scan-path=${config.services.gitolite.dataDir}/repositories |
406 | ''; | 409 | ''; |
407 | }; | 410 | }; |
408 | environment.etc."cgit/git.rheperire.org" = { | 411 | environment.etc."cgit/git.rheperire.org" = { |
@@ -440,7 +443,7 @@ in rec { | |||
440 | cryptoids.git | 443 | cryptoids.git |
441 | ''} | 444 | ''} |
442 | section-from-path=2 | 445 | section-from-path=2 |
443 | scan-path=/srv/git/repositories | 446 | scan-path=${config.services.gitolite.dataDir}/repositories |
444 | ''; | 447 | ''; |
445 | }; | 448 | }; |
446 | 449 | ||
@@ -492,12 +495,13 @@ in rec { | |||
492 | /^localhost$/ ACCEPT | 495 | /^localhost$/ ACCEPT |
493 | /\.?ymir$/ ACCEPT | 496 | /\.?ymir$/ ACCEPT |
494 | ''}'']; | 497 | ''}'']; |
495 | sslCert = "/var/lib/acme/yggdrasil.li/fullchain.pem"; | 498 | sslCert = "${config.security.acme.directory}/yggdrasil.li/fullchain.pem"; |
496 | sslKey = "/var/lib/acme/yggdrasil.li/key.pem"; | 499 | sslKey = "${config.security.acme.directory}/yggdrasil.li/key.pem"; |
497 | config = { | 500 | config = { |
498 | #the dh params | 501 | #the dh params |
499 | smtpd_tls_dh1024_param_file = "/etc/ssl/dhparam.pem"; | 502 | smtpd_tls_dh2048_param_file = config.security.dhparams.params.postfix-2048.path; |
500 | smtpd_tls_dh512_param_file = "/etc/ssl/dhparam.pem"; | 503 | smtpd_tls_dh1024_param_file = config.security.dhparams.params.postfix-1024.path; |
504 | smtpd_tls_dh512_param_file = config.security.dhparams.params.postfix-512.path; | ||
501 | #enable ECDH | 505 | #enable ECDH |
502 | smtpd_tls_eecdh_grade = "strong"; | 506 | smtpd_tls_eecdh_grade = "strong"; |
503 | #enabled SSL protocols, don't allow SSLv2 and SSLv3 | 507 | #enabled SSL protocols, don't allow SSLv2 and SSLv3 |
@@ -728,8 +732,8 @@ in rec { | |||
728 | enableLmtp = true; | 732 | enableLmtp = true; |
729 | enablePop3 = false; | 733 | enablePop3 = false; |
730 | enablePAM = false; # do that manualy | 734 | enablePAM = false; # do that manualy |
731 | sslServerCert = "/var/lib/acme/yggdrasil.li/fullchain.pem"; | 735 | sslServerCert = "${config.security.acme.directory}/yggdrasil.li/fullchain.pem"; |
732 | sslServerKey = "/var/lib/acme/yggdrasil.li/key.pem"; | 736 | sslServerKey = "${config.security.acme.directory}/yggdrasil.li/key.pem"; |
733 | mailLocation = "maildir:~/mail:LAYOUT=index:UTF-8"; | 737 | mailLocation = "maildir:~/mail:LAYOUT=index:UTF-8"; |
734 | modules = with pkgs; [ dovecot_pigeonhole ]; | 738 | modules = with pkgs; [ dovecot_pigeonhole ]; |
735 | protocols = [ "sieve" ]; | 739 | protocols = [ "sieve" ]; |
@@ -809,11 +813,6 @@ in rec { | |||
809 | } | 813 | } |
810 | } | 814 | } |
811 | 815 | ||
812 | service managesieve { | ||
813 | } | ||
814 | protocol sieve { | ||
815 | } | ||
816 | |||
817 | plugin { | 816 | plugin { |
818 | sieve = file:~/sieve;active=~/.dovecot.sieve | 817 | sieve = file:~/sieve;active=~/.dovecot.sieve |
819 | sieve_redirect_envelope_from = orig_recipient | 818 | sieve_redirect_envelope_from = orig_recipient |
@@ -981,8 +980,8 @@ in rec { | |||
981 | 980 | ||
982 | services.infinoted = { | 981 | services.infinoted = { |
983 | enable = true; | 982 | enable = true; |
984 | keyFile = "/var/lib/acme/yggdrasil.li/key.pem"; | 983 | keyFile = "${config.security.acme.directory}/yggdrasil.li/key.pem"; |
985 | certificateFile = "/var/lib/acme/yggdrasil.li/fullchain.pem"; | 984 | certificateFile = "${config.security.acme.directory}/yggdrasil.li/fullchain.pem"; |
986 | plugins = [ "note-text" "note-chat" "logging" "autosave" "certificate-auth" "directory-sync" ]; | 985 | plugins = [ "note-text" "note-chat" "logging" "autosave" "certificate-auth" "directory-sync" ]; |
987 | extraConfig = '' | 986 | extraConfig = '' |
988 | [certificate-auth] | 987 | [certificate-auth] |
@@ -1053,8 +1052,8 @@ in rec { | |||
1053 | localUsers = true; | 1052 | localUsers = true; |
1054 | writeEnable = true; | 1053 | writeEnable = true; |
1055 | chrootlocalUser = true; | 1054 | chrootlocalUser = true; |
1056 | rsaKeyFile = "/var/lib/acme/yggdrasil.li/key.pem"; | 1055 | rsaKeyFile = "${config.security.acme.directory}/yggdrasil.li/key.pem"; |
1057 | rsaCertFile = "/var/lib/acme/yggdrasil.li/fullchain.pem"; | 1056 | rsaCertFile = "${config.security.acme.directory}/yggdrasil.li/fullchain.pem"; |
1058 | extraConfig = '' | 1057 | extraConfig = '' |
1059 | local_umask=022 | 1058 | local_umask=022 |
1060 | 1059 | ||
@@ -1090,4 +1089,14 @@ in rec { | |||
1090 | users.extraUsers."vsftpd" = { | 1089 | users.extraUsers."vsftpd" = { |
1091 | home = mkForce "/srv/ftp"; | 1090 | home = mkForce "/srv/ftp"; |
1092 | }; | 1091 | }; |
1092 | |||
1093 | security.dhparams = { | ||
1094 | enable = true; | ||
1095 | nginx.bits = 3072; | ||
1096 | posfix-512.bits = 512; | ||
1097 | postfix-1024.bits = 1024; | ||
1098 | postfix-2048.bits = 2048; | ||
1099 | dovecot2.bits = 2048; | ||
1100 | prosody.bits = 3072; | ||
1101 | }; | ||
1093 | } | 1102 | } |