diff options
Diffstat (limited to 'virtual')
-rw-r--r-- | virtual/modules/databases/default.nix | 26 |
1 files changed, 14 insertions, 12 deletions
diff --git a/virtual/modules/databases/default.nix b/virtual/modules/databases/default.nix index 304ad89..94d8d75 100644 --- a/virtual/modules/databases/default.nix +++ b/virtual/modules/databases/default.nix | |||
@@ -111,19 +111,21 @@ in { | |||
111 | }; | 111 | }; |
112 | 112 | ||
113 | security.pam.services = let | 113 | security.pam.services = let |
114 | pam_ldap = pkgs.pam_ldap; | 114 | pam_ldap = "${pkgs.pam_ldap}/lib/security/pam_ldap.so"; |
115 | pam_ldap_mysql = pkgs.writeText "mysql.conf" '' | 115 | pam_ldap_mysql = pkgs.writeText "mysql.conf" '' |
116 | host ldap.immae.eu | 116 | host ${myconfig.env.ldap.host} |
117 | base dc=immae,dc=eu | 117 | base ${myconfig.env.ldap.base} |
118 | binddn cn=mysql,cn=pam,ou=services,dc=immae,dc=eu | 118 | binddn cn=mysql,cn=pam,ou=services,dc=immae,dc=eu |
119 | bindpw ${myconfig.env.databases.mysql.pam_password} | 119 | bindpw ${myconfig.env.databases.mysql.pam_password} |
120 | ssl start_tls | ||
120 | pam_filter memberOf=cn=users,cn=mysql,cn=pam,ou=services,dc=immae,dc=eu | 121 | pam_filter memberOf=cn=users,cn=mysql,cn=pam,ou=services,dc=immae,dc=eu |
121 | ''; | 122 | ''; |
122 | pam_ldap_postgresql_replication = pkgs.writeText "postgresql.conf" '' | 123 | pam_ldap_postgresql_replication = pkgs.writeText "postgresql.conf" '' |
123 | host ldap.immae.eu | 124 | host ${myconfig.env.ldap.host} |
124 | base dc=immae,dc=eu | 125 | base ${myconfig.env.ldap.base} |
125 | binddn cn=eldiron,ou=hosts,dc=immae,dc=eu | 126 | binddn ${myconfig.env.ldap.host_dn} |
126 | bindpw ${myconfig.env.ldap.password} | 127 | bindpw ${myconfig.env.ldap.password} |
128 | ssl start_tls | ||
127 | pam_login_attribute cn | 129 | pam_login_attribute cn |
128 | ''; | 130 | ''; |
129 | in [ | 131 | in [ |
@@ -131,22 +133,22 @@ in { | |||
131 | name = "mysql"; | 133 | name = "mysql"; |
132 | text = '' | 134 | text = '' |
133 | # https://mariadb.com/kb/en/mariadb/pam-authentication-plugin/ | 135 | # https://mariadb.com/kb/en/mariadb/pam-authentication-plugin/ |
134 | auth required ${pam_ldap}/lib/security/pam_ldap.so config=${pam_ldap_mysql} | 136 | auth required ${pam_ldap} config=${pam_ldap_mysql} |
135 | account required ${pam_ldap}/lib/security/pam_ldap.so config=${pam_ldap_mysql} | 137 | account required ${pam_ldap} config=${pam_ldap_mysql} |
136 | ''; | 138 | ''; |
137 | } | 139 | } |
138 | { | 140 | { |
139 | name = "postgresql"; | 141 | name = "postgresql"; |
140 | text = '' | 142 | text = '' |
141 | auth required ${pam_ldap}/lib/security/pam_ldap.so config=${pam_ldap_postgresql_replication} | 143 | auth required ${pam_ldap} config=${pam_ldap_postgresql_replication} |
142 | account required ${pam_ldap}/lib/security/pam_ldap.so config=${pam_ldap_postgresql_replication} | 144 | account required ${pam_ldap} config=${pam_ldap_postgresql_replication} |
143 | ''; | 145 | ''; |
144 | } | 146 | } |
145 | { | 147 | { |
146 | name = "postgresql_replication"; | 148 | name = "postgresql_replication"; |
147 | text = '' | 149 | text = '' |
148 | auth required ${pam_ldap}/lib/security/pam_ldap.so config=${pam_ldap_postgresql_replication} | 150 | auth required ${pam_ldap} config=${pam_ldap_postgresql_replication} |
149 | account required ${pam_ldap}/lib/security/pam_ldap.so config=${pam_ldap_postgresql_replication} | 151 | account required ${pam_ldap} config=${pam_ldap_postgresql_replication} |
150 | ''; | 152 | ''; |
151 | } | 153 | } |
152 | ]; | 154 | ]; |