Proteggere una pagina web in Apache con .htaccess

protect1

Proteggere siti web o pagine specifiche nel web server della rete è una prassi comune per tenere lontano occhi indiscreti.

La sicurezza è un concetto fondamentale per una rete, specialmente se gli accessi provengono anche dall’esterno. Soprattutto determinate aree (Intranet, IT, etc.) richiedono un certo grado di sicurezza per non precludere l’integrità dei dati o dei sistemi.

 

Procedura

Supponiamo di voler proteggere una specifica pagina/web nel server Apache salvata in:

protect2

Per richiedere l’autenticazione all’accesso, un metodo utilizzato dal server Apache è l’utilizzo del file .htaccess. Creare il file .htaccess nella directory da proteggere tramite l’editor vi.

# vi /var/www/html/webtest/.htaccess

Editare il file creato ed inserire le istruzioni:

protect3

A questo punto bisogna impostare il file delle password per gli utenti abilitati tramite il comando htpasswd.

# htpasswd –c .htpasswd username

Creare la password per l’utente a cui si vuole dare l’accesso alla pagina web.

# htpasswd -c ~/.htpasswd admin

Il simbolo ~ (si ottiene con la combinazione ALT + 162) indica che il file viene creato nella home directory dello user corrente.

protect4

Per visualizzare il contenuto del file .htpasswd appena creato, utilizzare il comando cat. Ovviamente la password è criptata.

# cat .htpasswd

protect5

Per proteggere il file in scrittura, assegnare i diritti con il comando chmod.

# chmod 644 .htpasswd

protect6

 

Test

Dal browser accedere alla pagina precedentemente protetta. Se viene visualizzata la finestra di richiesta di user e password ed è possibile successivamente accedere, il sistema è correttamente configurato.

protect7

Questo metodo deve essere utilizzato tenendo presente alcuni punti:

  • La password serve per proteggere l’accesso via web. Tramite shell è sempre possibile accedere alla directory.
  • Sono protette solo le directory non i file.
  • La password viaggia in chiaro quindi facilmente intercettabile.
  • Fare attenzione a cosa si protegge con questo metodo poichè non ha un alto livello di sicurezza.