3 581
contributi
mNessun oggetto della modifica |
|||
(10 versioni intermedie di 4 utenti non mostrate) | |||
Riga 1: | Riga 1: | ||
{{Versioni compatibili|Squeeze|Wheezy|Jessie}} | |||
== Introduzione == | == Introduzione == | ||
In molte situazioni i servizi HTTP sono pubblici e pensati per essere accessibili da chiunque abbia la possibilità di connettersi. | In molte situazioni i servizi HTTP sono pubblici e pensati per essere accessibili da chiunque abbia la possibilità di connettersi. | ||
Riga 22: | Riga 23: | ||
* ''Deny from all'' dice ad Apache di proibire a chiunque l'accesso alla directory | * ''Deny from all'' dice ad Apache di proibire a chiunque l'accesso alla directory | ||
* ''Allow from'' indica ad Apache di consentire l'accesso alla risorsa a tutte le macchine della rete 192.168.90.0/24 | * ''Allow from'' indica ad Apache di consentire l'accesso alla risorsa a tutte le macchine della rete 192.168.90.0/24 | ||
'''Da Debian Jessie (Apache 2.4.x)''': | |||
<pre> | |||
<Directory /var/www/esempio.it/www/> | |||
Require ip 192.168.90.0/24 | |||
</Directory> | |||
</pre> | |||
La direttiva non prevede più l'utilizzo di ''Order deny,allow'' e ''Deny from all'' | |||
In questo caso specifico basta: | |||
* ''Require ip'' per indicare ad Apache che l'accesso alla risorsa è consentito solo a tutte le macchine della rete 192.168.90.0/24 | |||
=== Regole addizionali === | === Regole addizionali === | ||
Riga 34: | Riga 46: | ||
</Directory> | </Directory> | ||
</pre> | </pre> | ||
'''Da Debian Jessie (Apache 2.4.x)''': | |||
<pre> | |||
<Directory /var/www/esempio.it/www/> | |||
Require not ip 192.168.100.100 | |||
Require not ip 10.0.0.0/24 | |||
Require ip 192.168.90.0/24 | |||
Require ip 10.0.0.11 | |||
</Directory> | |||
</pre> | |||
La direttiva non prevede più l'utilizzo di ''Order deny,allow'', ''Deny from'' e ''Allow from'' | |||
In questo caso specifico basta: | |||
* ''Require not ip'' per indicare ad Apache di negare l'accesso alla risorsa a tutte le macchine delle reti 192.168.100.100 e 10.0.0.0/24 | |||
* ''Require ip'' per indicare ad Apache che l'accesso alla risorsa è consentito solo a tutte le macchine delle reti 192.168.90.0/24 e 10.0.0.11 | |||
Apache permette anche di specificare regole di accesso basate sugli hostname e non solo sugli indirizzi IP. Ad esempio: | Apache permette anche di specificare regole di accesso basate sugli hostname e non solo sugli indirizzi IP. Ad esempio: | ||
<pre> | <pre> | ||
Riga 46: | Riga 74: | ||
</Directory> | </Directory> | ||
</pre> | </pre> | ||
'''Da Debian Jessie (Apache 2.4.x)''': | |||
<pre> | |||
<Directory /var/www/esempio.it/www/> | |||
Require not ip 192.168.100.100 | |||
Require not ip 10.0.0.0/24 | |||
Require not host dominio.it | |||
Require host dominio.org | |||
Require ip 192.168.90.0/24 | |||
Require ip 10.0.0.11 | |||
</Directory> | |||
</pre> | |||
La direttiva non prevede più l'utilizzo di ''Order deny,allow'', ''Deny from'' e ''Allow from'' | |||
In questo caso specifico sono state aggiunte due regole: | |||
* ''Require not host'' per indicare ad Apache di negare l'accesso alla risorsa a tutti gli host del dominio "dominio.it" | |||
* ''Require host'' per indicare ad Apache che l'accesso alla risorsa è consentito solo a tutti gli host del dominio "dominio.org" | |||
È anche possibile costruire delle regole di accesso basate sulle variabili della sessione HTTP: questo ci permette di creare regole leggendo ad esempio il tipo di browser (user agent) o il referrer. Ad esempio: | |||
<pre> | <pre> | ||
<Directory /var/www/esempio.it/www/> | <Directory /var/www/esempio.it/www/> | ||
Riga 55: | Riga 102: | ||
</Directory> | </Directory> | ||
</pre> | </pre> | ||
Questa | Questa regola lavora insieme al modulo Apache mod_setenvif, in questo modo: | ||
# se il referrer del visitatore coincide con google.it viene | # se il referrer del visitatore coincide con google.it viene inizializzata la variabile ''search_traffic'' | ||
# viene negato a tutti l'accesso alla risorsa | # viene negato a tutti l'accesso alla risorsa | ||
# viene consentito l'accesso | # viene consentito l'accesso a chi ha la variabile ''search_traffic'' impostata | ||
== Controllo degli accessi Credential-based == | == Controllo degli accessi Credential-based == | ||
Riga 93: | Riga 140: | ||
Retype Password: ******** | Retype Password: ******** | ||
</pre> | </pre> | ||
Una volta creato il file e aggiunto l'utente ''utente_ok'' possiamo in ogni momento aggiungere altri utenti semplicemente ripetendo il comando precedente, ma omettendo l'opzione <code>-c</code> (create): | Una volta creato il file e aggiunto l'utente ''utente_ok'' possiamo in ogni momento aggiungere altri utenti semplicemente ripetendo il comando precedente, ma omettendo l'opzione <code>-c</code> (''create''): | ||
<pre> | <pre> | ||
# htpasswd -b /srv/auth/.htpasswd ferdy 5t1ck6 | # htpasswd -b /srv/auth/.htpasswd ferdy 5t1ck6 | ||
Riga 110: | Riga 157: | ||
Require valid-user | Require valid-user | ||
</pre> | </pre> | ||
con | con: | ||
<pre> | <pre> | ||
Require utente_ok ferdy | Require utente_ok ferdy | ||
</pre> | </pre> | ||
Con queste indicazioni all'utente utente2, pur appartenendo al file di autenticazione, sarà impedito l'accesso alla directory. | Con queste indicazioni all'utente ''utente2'', pur appartenendo egli al file di autenticazione, sarà impedito l'accesso alla directory. | ||
{{Autori | |||
|Autore = [[Utente:Ferdybassi|Ferdybassi]] 16:09, 16 apr 2011 (CEST) | |||
|Estesa_da = | |||
: [[Utente:Selky|Selky]] | |||
}} | |||
[[Categoria:Web server]] | |||
[[Categoria:Debian e sicurezza]] |
contributi