Settare i permessi a file/directory per apache
I permessi su linux sono essenziali
Una buona configurazione dei permessi per apache è settare il proprietario a root e solo i file/directory necessari a www-data.
Inoltre i permessi per i file devono essere a 644 (permessi di scrittura solo al proprietario e
lettura a tutti), mentre le directory a 755.
Per farlo in modo automatico è sufficiente dare i seguenti comandi:
find /directory/da/modificare -type f -exec chmod 644 {} \;
In questo modo si ricerca ogni file e si setta a 644
find /directory/da/modificare -type d -exec chmod 755 {} \;
Qui invece si ricercano le directory e si settano a 755
Ovviamente per cambiare l'utente/gruppo si da il comando
chown -R www-data:www-data /directory
Dove con -R si intende in modo recursivo.
Come proteggere una cartella in apache
Per proteggere una cartella in apache da occhi indiscreti la procedura è molto semplice.
Per prima cosa bisogna creare il file .htaccess nella directory da proteggere:
AuthUserFile /percorso/htdocs/dir-protetta/.htpasswd AuthGroupFile /dev/null AuthName "Directory protetta, inserire i dati di accesso:" AuthType Basic <Limit GET> require valid-user </Limit>
In dettaglio:
- AuthUserFile: Specifica il file contenente le password
- AuthName: Testo da visualizzare nella finestra di accesso
Bene, ora bisogna creare il file .htpasswd nella directory specificata in AuthUserFile.
Per farlo si utilizza il comando htpaswd:
htpasswd –c .htpasswd username
Dove al posto di username inseriremo il nome utente che vogliamo.
Eseguito il comando ci chiederà la password e il gioco è fatto!
Attivare un sito in apache contenuto in sites-available in linux
sites-available a2ensite nomesito