From 6e23a06b9d5e0bdb21c737285e36dbe76b2d3ac1 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Isma=C3=ABl=20Bouya?= Date: Tue, 16 Apr 2019 00:35:59 +0200 Subject: [PATCH] Move Ludivine Piedsjaloux and Florian's websites passwords to a secure location Related issue: https://git.immae.eu/mantisbt/view.php?id=122 --- nixops/modules/websites/ludivine/default.nix | 2 ++ .../websites/ludivine/ludivinecassal.nix | 21 +++++++++++++--- .../modules/websites/piedsjaloux/default.nix | 2 ++ .../websites/piedsjaloux/piedsjaloux.nix | 13 +++++++--- .../websites/tellesflorian/default.nix | 1 + .../websites/tellesflorian/tellesflorian.nix | 25 +++++++++++++------ 6 files changed, 49 insertions(+), 15 deletions(-) diff --git a/nixops/modules/websites/ludivine/default.nix b/nixops/modules/websites/ludivine/default.nix index 3dd0ee7..220f5c2 100644 --- a/nixops/modules/websites/ludivine/default.nix +++ b/nixops/modules/websites/ludivine/default.nix @@ -21,6 +21,7 @@ in { config = lib.mkMerge [ (lib.mkIf cfg.production.enable { + deployment.keys = ludivinecassal_prod.keys; services.myWebsites.commons.stats.enable = true; services.myWebsites.commons.stats.sites = [ { @@ -51,6 +52,7 @@ in { }; }) (lib.mkIf cfg.integration.enable { + deployment.keys = ludivinecassal_dev.keys; security.acme.certs."eldiron".extraDomains."ludivine.immae.eu" = null; services.myPhpfpm.poolConfigs.ludivinecassal_dev = ludivinecassal_dev.phpFpm.pool; diff --git a/nixops/modules/websites/ludivine/ludivinecassal.nix b/nixops/modules/websites/ludivine/ludivinecassal.nix index 114c4ac..244b05e 100644 --- a/nixops/modules/websites/ludivine/ludivinecassal.nix +++ b/nixops/modules/websites/ludivine/ludivinecassal.nix @@ -3,8 +3,12 @@ let ludivinecassal = { config }: rec { environment = config.environment; varDir = "/var/lib/ludivinecassal_${environment}"; - configRoot = - writeText "parameters.yml" '' + keys."${environment}-ludivinecassal" = { + destDir = "/run/keys/webapps"; + user = apache.user; + group = apache.group; + permissions = "0700"; + text = '' # This file is auto-generated during the composer install parameters: database_host: ${config.mysql.host} @@ -34,6 +38,7 @@ let sass: ${sass}/bin/sass ruby: ${ruby}/bin/ruby ''; + }; phpFpm = rec { socket = "/var/run/phpfpm/ludivinecassal-${environment}.sock"; pool = '' @@ -45,7 +50,7 @@ let php_admin_value[upload_max_filesize] = 20M php_admin_value[post_max_size] = 20M ;php_admin_flag[log_errors] = on - php_admin_value[open_basedir] = "${configRoot}:${webappDir}:${varDir}:/tmp" + php_admin_value[open_basedir] = "/run/keys/webapps/${environment}-ludivinecassal:${webappDir}:${varDir}:/tmp" php_admin_value[session.save_path] = "${varDir}/phpSessions" ${if environment == "dev" then '' pm = ondemand @@ -151,7 +156,14 @@ let noDev = (environment == "prod"); preInstall = '' export SYMFONY_ENV="${environment}" - ln -sf ${configRoot} app/config/parameters.yml + cp app/config/parameters.yml.dist app/config/parameters.yml + cat >> app/config/parameters.yml <" @@ -145,7 +156,7 @@ let postInstall = '' cd $out rm app/config/parameters.yml - ln -sf ${configRoot} app/config/parameters.yml + ln -sf /run/keys/webapps/${environment}-tellesflorian app/config/parameters.yml rm -rf var/{logs,cache} ln -sf ${varDir}/var/{logs,cache,sessions} var/ ''; -- 2.41.0