Autenticazione in Apache via MYSQL

From RVM Wiki
Jump to navigation Jump to search
  • 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
  • Riavviare Apache
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>

  • Riavviare Apache
 systemctl restart apache2.service

Riferimenti