X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;ds=sidebyside;f=nixops%2Fmodules%2Fwebsites%2Fdefault.nix;h=e40c8f4f17d866375c3bc15ef4435a22fcd4a9f7;hb=bf3b7671904b8a8bf4da4eba30564140387499f9;hp=49dc5f7d0e55a338dff8ea102bb2fe9b79720bbd;hpb=c336bac4e891ad66c9fa110f840b00cf6bbe72bf;p=perso%2FImmae%2FConfig%2FNix.git
diff --git a/nixops/modules/websites/default.nix b/nixops/modules/websites/default.nix
index 49dc5f7..e40c8f4 100644
--- a/nixops/modules/websites/default.nix
+++ b/nixops/modules/websites/default.nix
@@ -8,7 +8,7 @@ let
enableSSL = true;
sslServerCert = "/var/lib/acme/${vhostConf.certName}/cert.pem";
sslServerKey = "/var/lib/acme/${vhostConf.certName}/key.pem";
- sslServerChain = "/var/lib/acme/${vhostConf.certName}/fullchain.pem";
+ sslServerChain = "/var/lib/acme/${vhostConf.certName}/chain.pem";
logFormat = "combinedVhost";
listen = map (ip: { inherit ip; port = 443; }) cfg.ips;
hostName = builtins.head vhostConf.hosts;
@@ -117,18 +117,19 @@ in
./ftp/florian.nix
./ftp/denisejerome.nix
./ftp/leila.nix
+ ./ftp/papa.nix
./ftp/immae.nix
./ftp/release.nix
./ftp/temp.nix
- ./tools/db
+ ./tools/db.nix
./tools/tools
./tools/dav
- ./tools/cloud
+ ./tools/cloud.nix
./tools/git
- ./tools/mastodon
- ./tools/mediagoblin
- ./tools/diaspora
- ./tools/ether
+ ./tools/mastodon.nix
+ ./tools/mediagoblin.nix
+ ./tools/diaspora.nix
+ ./tools/ether.nix
./tools/peertube
# built using:
# sed -e "s/services\.httpd/services\.httpdProd/g" .nix-defexpr/channels/nixpkgs/nixos/modules/services/web-servers/apache-httpd/default.nix
@@ -167,9 +168,11 @@ in
};
config = {
+ users.users.wwwrun.extraGroups = [ "keys" ];
networking.firewall.allowedTCPPorts = [ 80 443 ];
nixpkgs.overlays = [ (self: super: rec {
+ #openssl = self.openssl_1_1;
php = php72;
php72 = (super.php72.override {
mysql.connector-c = self.mariadb;
@@ -187,9 +190,6 @@ in
# '';
});
phpPackages = super.php72Packages.override { inherit php; };
- composerEnv = import ./commons/composer-env.nix {
- inherit (self) stdenv writeTextFile fetchurl php unzip;
- };
}) ];
services.myWebsites.tools.databases.enable = true;
@@ -212,6 +212,7 @@ in
services.myWebsites.Nassime.production.enable = cfg.production.enable;
services.myWebsites.Florian.production.enable = cfg.production.enable;
services.myWebsites.Leila.production.enable = cfg.production.enable;
+ services.myWebsites.Papa.production.enable = cfg.production.enable;
services.myWebsites.DeniseJerome.production.enable = cfg.production.enable;
services.myWebsites.Emilia.production.enable = cfg.production.enable;
services.myWebsites.Capitaines.production.enable = cfg.production.enable;
@@ -227,6 +228,25 @@ in
services.myWebsites.TellesFlorian.integration.enable = true;
services.myWebsites.Florian.integration.enable = true;
+ mySecrets.keys = [{
+ dest = "apache-ldap";
+ user = "wwwrun";
+ group = "wwwrun";
+ permissions = "0400";
+ text = ''
+
+
+ AuthLDAPURL ldap://ldap.immae.eu:389/dc=immae,dc=eu STARTTLS
+ AuthLDAPBindDN cn=httpd,ou=services,dc=immae,dc=eu
+ AuthLDAPBindPassword "${myconfig.env.httpd.ldap.password}"
+ AuthType Basic
+ AuthName "Authentification requise (Acces LDAP)"
+ AuthBasicProvider ldap
+
+
+ '';
+ }];
+
services.myWebsites.apacheConfig = {
gzip = {
modules = [ "deflate" "filter" ];
@@ -264,16 +284,7 @@ in
LDAPOpCacheTTL 600
-
-
- AuthLDAPURL ldap://ldap.immae.eu:389/dc=immae,dc=eu STARTTLS
- AuthLDAPBindDN cn=httpd,ou=services,dc=immae,dc=eu
- AuthLDAPBindPassword "${myconfig.env.httpd.ldap.password}"
- AuthType Basic
- AuthName "Authentification requise (Acces LDAP)"
- AuthBasicProvider ldap
-
-
+ Include /var/secrets/apache-ldap
'';
};
global = {
@@ -395,8 +406,10 @@ in
install -d -m 0755 /var/lib/acme/acme-challenge
install -d -m 0750 -o wwwrun -g wwwrun /var/lib/php/sessions
install -d -m 0750 -o wwwrun -g wwwrun /var/lib/php/sessions/adminer
+ install -d -m 0750 -o wwwrun -g wwwrun /var/lib/php/tmp/adminer
install -d -m 0750 -o wwwrun -g wwwrun /var/lib/php/sessions/mantisbt
install -d -m 0750 -o wwwrun -g wwwrun /var/lib/php/sessions/davical
+ install -d -m 0750 -o wwwrun -g wwwrun /var/lib/php/sessions/phpldapadmin
'';
};
@@ -414,8 +427,10 @@ in
phpOptions = ''
session.save_path = "/var/lib/php/sessions"
post_max_size = 20M
- session.gc_maxlifetime = 60*60*24*15
- session.cache_expire = 60*24*30
+ ; 15 days (seconds)
+ session.gc_maxlifetime = 1296000
+ ; 30 days (minutes)
+ session.cache_expire = 43200
'';
extraConfig = ''
log_level = notice