4 069
contributi
(Creata pagina con '== Introduzione == In molte situazioni i servizi HTTP sono pubblici e pensati per essere accessibili da chiunque abbia la possibilità di connettersi. <br/> Ci sono però diversi...') |
|||
Riga 58: | Riga 58: | ||
# viene negato a tutti l'accesso alla risorsa | # viene negato a tutti l'accesso alla risorsa | ||
# viene consentito l'accesso s chi ha la variabile ''search_traffic'' impostata | # viene consentito l'accesso s chi ha la variabile ''search_traffic'' impostata | ||
== Controllo degli accessi Credential-based == | |||
Un altro modo per proteggere le directory del nostro web server è attraverso una richiesta di autenticazione. | |||
=== Configurare la HTTP Authentication === | |||
Per proteggere tramite password una directory del web server occorre innanzitutto inserire le seguenti linee all'interno della sezione <code><Directory></code> appropriata del nostro file di configurazione di Apache o del Virtual Host: | |||
<pre> | |||
<Directory /var/www/esempio.it/www/> | |||
AuthType Basic | |||
AuthUserFile /var/auth/.htpasswd | |||
AuthName "Richiedi le credenziali per entrare" | |||
Require valid-user | |||
</Directory> | |||
</pre> | |||
La direttiva: | |||
* ''AuthType'' specifica quale metodo di autenticazione dovrà essere utilizzato da Apache quando stabilisce una connessione con un client. ''Basic'' è il metodo più semplice, ma invia in chiaro la password di autenticazione | |||
* ''AuthUserFile'' specifica il percorso completo dove si trova il file delle password | |||
* ''AuthName'' contiene il messaggio visualizzato dal browser all'atto della richiesta di autenticazione | |||
* ''Require valid-user'' indica ad Apache che solo gli utenti validi possono essere autenticati | |||
A questo punto dobbiamo creare il file delle password. | |||
=== Generazione del file HTTP AUTH Passwords === | |||
Per generare questo file abbiamo bisogno di alcuni tool: | |||
<pre> | |||
# apt-get update | |||
# apt-get upgrade | |||
# apt-get install apache2-utils | |||
</pre> | |||
Procediamo poi con la creazione del file: | |||
<pre> | |||
# htpasswd -c /var/auth/.htpasswd utente_ok | |||
Pssword: ******** | |||
Retype Password: ******** | |||
</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): | |||
<pre> | |||
# htpasswd -b /srv/auth/.htpasswd ferdy 5t1ck6 | |||
</pre> | |||
L'opzione <code>-b</code> ci permette di specificare la password direttamente nel comando. | |||
<br/> | |||
Il file di autenticazione sarà quindi qualcosa del genere: | |||
<pre> | |||
# less /var/auth/.htpasswd | |||
utente_ok:isiA3Q4djD/.Q | |||
ferdy:{SHA}x9VvwHI6dmgk9VTE0A8o6hbCw2s= | |||
utente2:$apr1$vVzQJxvX$6EyHww61nnZr6IdQv0pVx/ | |||
</pre> | |||
Possiamo restringere ulteriormente gli accessi alla risorsa sostituendo la linea: | |||
<pre> | |||
Require valid-user | |||
</pre> | |||
con | |||
<pre> | |||
Require utente_ok ferdy | |||
</pre> | |||
Con queste indicazioni all'utente utente2, pur appartenendo al file di autenticazione, sarà impedito l'accesso alla directory. | |||
<br/> | |||
---- | |||
--[[Utente:Ferdybassi|Ferdybassi]] 16:09, 16 apr 2011 (CEST) |