Site icon Tosolini.info

Apache 2.4 limitare acceso a specifici ip

Cinque anni fa avevo pubblicato un articolo su come limitare l’accesso a phpMyAdmin a specifici indirizzi IP o sottoreti. Da allora le cose si sono evolute e di fatto quella procedura non è più valida. In un certo senso lo stesso progetto ha fatto un passo indietro e non si preoccupa più della questione che è demandata ad Apache. Infatti già dalla versione 2.2 ma ancora meglio nelle 2.4 del server Web più famoso al mondo, è piuttosto facile fare in modo di trattare l’accesso direttamente nella Vhost configuration phpmyadmin.conf , posta solitamente dentro la cartella /etc/apache2/conf-available per Ubuntu.

Qui all’interno delle tag <Directory> si possono aggiungere gli ip interessati, in notazione IPv4 o IPv6. Da notare che se vogliamo aggiungere più elementi su una riga basta separarli con uno spazio. Ma è comunque possibile scrivere tante righe quante desideriamo, e francamente lo consiglio per una migliore “lettura” nel futuro visto che generalmente queste configurazioni una volta fatte resteranno tali a lungo.


Require ip 127.0.0.1 192.168.1.1
Require ip ::1

Altresì si possono aggiungere intere subnet, sia indicando il prefisso che la maschera come nell’esempio sottostante.


Require ip 192.168.1.0/24 10.0.0.0/255.255.255.0

Oppure direttamente un hostname, in questo caso si cambia ip con host


Require host www.google.it

Non meno importante la possibilità di aprire a tutti meno che a specifici IP o Host con la negazione “not”.


Require all granted
Require not ip 10.0.0.1
Require not host google.it

Non ultimo, e probabilmente il più utilizzato, se state restringendo determinate configurazioni al mondo esterno, ma voi operate dall’interno della rete locale dove si presume stiate utilizzando i classici indirizzamenti IP dedicati a tale scopo, Apache è già predisposto, per cui si potrà ad esempio dare l’accesso solo alla rete locale con:


Require local

Come si può intuire le funzioni di limitazione lasciano spazio a parecchie opzioni per limitare un determinato sito, ad esempio come un phpMyAdmin affinché sia raggiungibile solo da chi di dovere, oppure per oscurare un sito al mondo ma non ai webmaster che ci devono lavorare.

Exit mobile version