apacheHttpdAvanzato

configurazioni particolari per Apache HTTP

Avanzato nel senso di... un pochino più di quelle base!

Autenticazione

Apache httpd può proteggere alcune cartelle in modo che soltanto le persone autorizzate possano accedervi, il sistema è molto elementare e non consente di fare molte cose ma è semplicissimo da usare e implementa lo standard RFC 7235.

In pratica serve di fare queste cose:

Il risultato sarà che il server quando l'utente accede ad alcune cartelle chiede di fornire un nome utente ed una password.

Basic authentication invia i dati in chiaro quindi...

non va usatosei stato un pochino drastico! sarebbe meglio non usarloperché? va usato insieme a ssl

La creazione del file con le password è semplice: da linea di comando è possibile utilizzare htpasswd che viene installato insieme ad Apache httpd: htpasswd -c nomeDelFile nomeUtente e poi il comando stesso chiede la password, il flag -c serve a creare il file quindi va usato la prima volta soltanto.

Non che la configurazione del server sia più complicata: bisogna in pratica soltanto dire quale cartella va protetta... ricordandosi che la cartella può essere indicata in due modi: usando Directory va messo il path nel file system oppure usando Location e in questo caso il path è relativo a DocumentRoot.

Quello qui sotto è un esempio plausibile:


<Location /protetta>
  AuthType Basic
  AuthName "Fatti riconoscere"
  AuthUserFile "/var/server/basic-passwords"
  Require valid-user
</Location>  

Una ultima considerazione: mettere il file delle password in una cartella accessibile dal web non è una grande idea... capire il perché è lasciato per esercizio.