Pensate per un secondo alle operazioni che si possono effettuare su un qualsiasi file o cartella del vostro computer. Potete crearlo, aprirlo per leggere i dati, modificarlo, eliminarlo. Il file, inoltre, può essere accessibile solo al proprietario/amministratore, oppure ad altri utenti del computer, se presenti.
Lo stesso avviene con i file e le cartelle di un’installazione di WordPress. Ci sono diversi tipi di utenti e ad ognuno di questi può essere concesso un livello di accesso diverso sui file.
Nel caso dei siti web, e quindi anche di WordPress, è necessario prestare una particolare attenzione a chi può effettuare operazioni sui file e sulle cartelle di un’installazione e che tipo di operazioni può effettuare. La corretta impostazione dei permessi sui file può essere determinante per la sicurezza di un sito web.
I permessi sui file
Installato il CMS, sarà necessario effettuare delle verifiche sul file system. Queste operazioni preliminari garantiranno non solo il corretto funzionamento del software, ma, come anticipato, permetteranno anche di aumentare la sicurezza dell’installazione.
La prima verifica consiste nell’accertarsi che siano impostati i permessi giusti sui file e sulle cartelle dell’installazione.
In pratica, si tratta di stabilire chi possa leggere, modificare ed eseguire i file di WordPress. I soggetti che possono agire sui file sono:
- Utente (user): amministratore del sito
- Gruppo(group): insieme degli utenti del sito
- Mondo (world): chiunque su Internet
Per ogni soggetto esistono tre diversi tipi di azione sui file e sulle cartelle:
- Lettura (read – r)
- Scrittura (write – w)
- Esecuzione (execute – x)
I permessi sui file e sulle cartelle vengono rappresentati con tre numeri di tre cifre.
- La prima cifra rappresenta i permessi del proprietario;
- la seconda cifra rappresenta i permessi del gruppo;
- la terza cifra rappresenta i permessi pubblici.
Ogni cifra può assumere un valore da 0 a 7, ognuno dei quali rappresenta il livello dei permessi concessi a quell’utente:
- 0 – Nessun accesso
- 1 – Esecuzione
- 2 – Scrittura
- 3 – Scrittura ed esecuzione
- 4 – Lettura
- 5 – Lettura ed esecuzione
- 6 – Lettura e scrittura
- 7 – Lettura, scrittura ed esecuzione
Facciamo alcuni esempi. Assegnare ad un file un permesso 755
vuol dire esattamente quanto segue:
- Il proprietario ha permessi di lettura, scrittura ed esecuzione:
7
- Il gruppo ha permessi di lettura ed esecuzione:
5
- Il mondo ha permessi di lettura ed esecuzione:
5
7 | 5 | 5 |
---|---|---|
user | group | world |
r + w + e | r + x | r + x |
4 + 2 + 1 | 4 + 1 | 4 + 1 |
Assegnare al file il permesso 644 vorrà dire che:
- Il proprietario ha permessi di lettura e scrittura:
6
- Il gruppo ha permessi di lettura:
4
- Il mondo ha permessi di lettura:
4
6 | 4 | 4 |
---|---|---|
user | group | world |
r + w | r | r |
4 + 2 | 4 | 4 |
Vediamo come si applica tutto questo a WordPress.
I permessi sui file di WordPress
Il Codex, la documentazione ufficiale di WordPress.org, offre una descrizione molto approfondita dei permessi sul file system di WordPress e avverte che questi possono cambiare da host a host, e che per questo non c’è uno schema di permessi universalmente valido, ma un sistema di regole generali che possono cambiare leggermente a seconda dell’ambiente che ospita il sito.
Per utenti meno avanzati, basterà dire che è bene evitare di assegnare ad alcun file o cartella il permesso 777
, che vorrebbe dire che una risorsa è accessibile in lettura, scrittura ed esecuzione per chiunque su Internet.
In genere è consigliabile non andare oltre il valore 755
per le directory e non oltre 644
per i file. I file di configurazione dovrebbero avere dei livelli più bassi. Abbiamo visto che, in fase di installazione, WordPress genera due file di configurazione, il file .htaccess e il file wp-config.php (parleremo di questi due file più avanti in questa guida). Questi due file sono molto delicati e andrebbero protetti da intrusioni esterne. Per questo è consigliabile assegnare a questi due file permessi più bassi: da 600
a 644
.
Ricapitoliamo:
- Per le directory:
755
- Per i file:
644
- .htaccess:
600
- wp-config.php: da
600
a644
Come verificare i permessi sui file
Ci sono molti modi per verificare i permessi sui file in un’installazione remota di WordPress. Uno di questi è accedere al file system del sito attraverso un client FTP.
Se accedete al vostro sito tramite un client FTP come FileZilla, visualizzerete i permessi sui file e sulle cartelle dell’installazione nella colonna Permessi. Come visto in precedenza, rw
sta per read/write
, e corrisponde al livello di permesso 6
; r
sta per read
, e corrisponde al livello 4
.
Facendo clic con il pulsante destro del mouse su un file o su una cartella, si aprirà un menu contestuale.
Facendo clic sulla voce Permessi file… del menu contestuale, si accederà alla finestra da cui è possibile modificare i permessi sul file.
La stessa finestra presenterà delle opzioni aggiuntive per le cartelle dell’installazione.