Perché i File Permissions Contano
I permessi dei file in WordPress determinano chi può leggere, scrivere, ed eseguire i file del sito. Permessi scorretti sono una delle vulnerabilità più comuni: permessi troppo permissivi (777) permettono a chiunque di modificare file, mentre permessi troppo restrittivi impediscono aggiornamenti e il funzionamento del sito. La configurazione corretta bilancia sicurezza e funzionalità.
I Numeri dei Permessi: 644, 755, 775
I permessi Unix sono rappresentati da tre cifre: proprietario (utente), gruppo, e altri (pubblico). Ogni cifra è la somma di lettura (4), scrittura (2), esecuzione (1). Per WordPress: i file devono essere 644 (rw-r–r–), le directory 755 (rwxr-xr-x). wp-config.php merita 600 (rw——-) per la massima sicurezza. I file 777 sono da evitare assolutamente in produzione.
Proprietà dei File: Chi è il Proprietario
La proprietà dei file dipende dall’utente del server web (www-data, nginx, apache) e dall’utente FTP. In ambienti condivisi, i file sono tipicamente di proprietà dell’utente cPanel, con il gruppo del server web. In VPS dedicati, la proprietà può essere configurata come www-data:www-data per tutti i file. La scelta corretta evita conflitti tra scrittura via FTP e via WordPress.
wp-config.php: Il File Più Sensibile
wp-config.php contiene le credenziali del database, chiavi di sicurezza, e salt. Il permesso ideale è 400 (sola lettura per proprietario) o 440 (lettura per proprietario e gruppo). Su alcuni hosting, potrebbe essere necessario 444 (lettura per tutti) per funzionare. Dopo aver modificato wp-config.php, ripristina sempre i permessi restrittivi.
La Directory wp-content
wp-content richiede attenzione speciale. Le directory al suo interno (uploads, plugins, themes, upgrades) devono essere 755. wp-content/uploads deve essere scrivibile dal server web (775 o 777 in alcuni hosting) per permettere il caricamento di media. Plugin e temi dovrebbero essere scrivibili solo durante installazioni e aggiornamenti, poi reimpostati a 755.
Permessi per l’Aggiornamento Automatico
Per permettere aggiornamenti automatici senza fornire credenziali FTP, WordPress necessita che il proprietario dei file sia l’utente del server web. Se i file sono di proprietà di un utente diverso, WordPress richiederà le credenziali FTP. La soluzione ideale è configurare FS_METHOD direct in wp-config.php, che funziona solo se il server web può scrivere i file.
Strumenti per Verificare i Permessi
Usa il comando find per audit rapidi: find /path/to/wp -type f -perm 777 per trovare file troppo permissivi, find /path/to/wp -type d -perm 777 per directory. Strumenti come Wordfence e iThemes Security includono scanner di permessi. WP-CLI non ha un comando diretto, ma puoi usare wp eval per script PHP personalizzati.
Correggere i Permessi con SSH
Comandi rapidi per correggere i permessi: find /path/to/wp -type f -exec chmod 644 {} + per file, find /path/to/wp -type d -exec chmod 755 {} + per directory, chmod 600 /path/to/wp/wp-config.php per configurazione. Per wp-content/uploads, chmod -R 755 o 775 a seconda delle esigenze di scrittura.
Conclusione
La configurazione corretta dei permessi dei file è fondamentale per la sicurezza di WordPress. Segui la regola del minimo privilegio: dai solo i permessi necessari per il funzionamento. Verifica periodicamente i permessi con audit automatici, specialmente dopo installazioni di plugin o aggiornamenti. Un WordPress con permessi corretti è significativamente più resistente agli attacchi.




