RHEL7: Configurare restrizioni di accesso nelle directory di Apache

By | Dicembre 3, 2018

Nota: questo è un obiettivo d’esame RHCE 7.

Prerequisiti

Innanzitutto, seguire le istruzioni per installare un server Web Apache.

Quindi, crea una directory privata (chiamata qui privata):

# cd /var/www/html 
# mkdir private
# echo "This is a test." > private/index.html
# restorecon -R .

Esistono diversi modi per limitare l’accesso a questa directory:
1) directory private basate su host

Per consentire solo l’host test.example.com (aggiungere il nome/l’indirizzo IP nel file /etc/hosts se necessario) per accedere a una directory specifica (qui privata), modificare il file /etc/httpd/conf/httpd.conf e incollare le seguenti righe alla fine:

<Directory "/var/www/html/private">
AllowOverride None
Options None
Require host test.example.com
</Directory>

Controlla il file di configurazione:

# apachectl configtest
Syntax OK

2) directory private basate sull’utente

Per consentire solo a me di accedere a una directory specifica (qui privata), modificare il file /etc/httpd/conf/httpd.conf e incollare alla fine le seguenti righe:

<Directory "/var/www/html/private">
AuthType Basic
AuthName "Password protected area"
AuthUserFile /etc/httpd/conf/passwd
Require user me
</Directory>

Controlla il file di configurazione:

# apachectl configtest
Syntax OK

Crea il file passwd e salvami la password:

# htpasswd -c /etc/httpd/conf/passwd me
New password: your password
Re-type new password: your password
Adding password for user me
# chmod 600 /etc/httpd/conf/passwd
# chown apache:apache /etc/httpd/conf/passwd

Nota: il file .htpasswd può essere utilizzato localmente anziché il file httpd.conf in 1) e 2) per lo stesso scopo.

Qualunque sia l’opzione scelta, riavvia il servizio httpd:

# systemctl restart httpd

Controllo della configurazione

Controlla il servizio httpd:

# yum install -y curl
# curl -u user:password http://localhost

o

# yum install -y elinks
# elinks http://localhost/private

Suggerimento utile

Se si dimentica la sintassi di alcune direttive di Apache, installare il pacchetto httpd-manual e sfogliare la documentazione nella directory /usr/share/httpd/manual/howto:

# yum install -y httpd-manual
# elinks /usr/share/httpd/manual/howto/auth.html

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.