- Installare la libreria di autenticazione:
apt-get install libaprutil1-dbd-mysql
- Abilitare i moduli necessari, anche la cache di autenticazione, altrimenti fa una queery sql pe rogni immagine in una pagina:
a2enmod dbd
a2enmod authn_dbd
authn_socache
systemctl restart apache2.service
- Si suppone di usare il DB di Postfixadmin per l'autenticazione, creare uno user apposta in select
- Verificare l'accesso dalla macchina apache verso il DBHost con le credenziali
- Impostare la configurazione a livello di virtualhost:
vi /etc/apache/sites-enabled/myvurtualhost.cpnf
DBDriver mysql
DBDParams "host=mydbserver.example.priv dbname=postfixadmin user=postadmremote pass=SecretPass"
DBDMin 4
DBDKeep 8
DBDMax 20
DBDExptime 300
- Impostare la configurazione per la location protetta:
vi /etc/apache2/conf-enabled/mediawiki.conf
<Location /mediawiki>
AuthType Basic
AuthName "Mediawiki Protected"
# To cache credentials, put socache ahead of dbd here
AuthBasicProvider socache dbd
# Also required for caching: tell the cache to cache dbd lookups!
AuthnCacheProvideFor dbd
AuthnCacheContext my-server
# mod_authz_core configuration
Require valid-user
# mod_authn_dbd SQL query to authenticate a user
AuthDBDUserPWQuery "SELECT password FROM mailbox WHERE username = %s"
</location>
systemctl restart apache2.service
Riferimenti