Configurare WebDAV su Lighttpd: host virtuale, test e client
4 Configurare l’host virtuale per WebDAV
Per prima cosa creiamo il file delle password WebDAV /var/www/web1/passwd.dav e aggiungiamo l’utente test. Il parametro -c crea il file se non esiste:
htpasswd -c /var/www/web1/passwd.dav test
Ti verrà chiesto di digitare la password per l’utente test.
Importante: non usare l’opzione -c se /var/www/web1/passwd.dav esiste già, perché il comando ricreerebbe il file da zero e perderesti tutti gli utenti presenti.
Poi modifichiamo i permessi in modo che solo root e i membri del gruppo lighttpd possano leggere il file delle password:
chown root:lighttpd /var/www/web1/passwd.dav
chmod 640 /var/www/web1/passwd.dav
Ora modifichiamo il virtual host in /etc/lighttpd/lighttpd.conf per abilitare WebDAV su un percorso specifico. Apri il file con il tuo editor preferito:
vi /etc/lighttpd/lighttpd.conf
E inserisci (o modifica) il blocco del vhost in questo modo:
[...]
$HTTP["host"] == "www.example.com" {
server.document-root = "/var/www/web1/web"
alias.url = ( "/webdav" => "/var/www/web1/web" )
$HTTP["url"] =~ "^/webdav($|/)" {
dir-listing.activate = "enable"
webdav.activate = "enable"
webdav.is-readonly = "disable"
auth.backend = "htpasswd"
auth.backend.htpasswd.userfile = "/var/www/web1/passwd.dav"
auth.require = ( "" => ( "method" => "basic",
"realm" => "webdav",
"require" => "valid-user" ) )
}
}
Spiegazione rapida: alias.url insieme all’espressione $HTTP[“url”] =~ “^/webdav($|/)” attiva WebDAV solo quando richiami /webdav. Gli altri URL del sito rimangono normali richieste HTTP.
Dopo le modifiche, riavvia lighttpd:
/etc/init.d/lighttpd restart
5 Testare WebDAV
Installa il client da riga di comando cadaver (esempio con yum):
yum install cadaver
Per verificare che WebDAV risponda, connettiti al percorso WebDAV:
cadaver http://www.example.com/webdav/
Ti verrà chiesto username e password. Inserisci test e la password impostata in precedenza. Se la connessione ha successo, vedrai il prompt del client WebDAV. Digita quit per uscire.
Esempio di sessione:
[root@server1 ~]# cadaver http://www.example.com/webdav/
Authentication required for webdav on server `www.example.com':
Username: test
Password:
dav:/webdav/> quit
Connection to `www.example.com' closed.
[root@server1 ~]#
6 Configurare un client Windows XP per connettersi alla condivisione WebDAV
I dettagli sono disponibili qui: https://www.howtoforge.com/setting-up-webdav-with-apache2-on-debian-etch-p2.
Suggerimento pratico: specifica la porta nell’URL WebDAV, ad esempio http://www.example.com:80/webdav. In alcuni casi Windows XP accetta l’username normale (ad es. test) solo se la porta è esplicitata; altrimenti XP potrebbe richiedere credenziali NTLM nel formato dominio\utente (es. www.example.com\test).
Nota di compatibilità: Windows XP è obsoleto. Se possibile usa una versione di Windows più recente o un client WebDAV dedicato più moderno.
7 Configurare un client Linux (GNOME) per connettersi alla condivisione WebDAV
La procedura è descritta qui: https://www.howtoforge.com/setting-up-webdav-with-apache2-on-debian-etch-p3.
In GNOME puoi usare “Connetti al server” (URI tipo dav:// o http://) oppure montare la risorsa via GVfs/nautilus con l’opzione “Connetti al server” e specificare l’URL completo.
8 Link e risorse
- WebDAV: http://www.webdav.org
- Lighttpd: http://www.lighttpd.net
- Fedora: http://fedoraproject.org
Appendice: checklist rapida per l’amministratore
- Creare il file passwd.dav (senza usare -c se esiste già).
- Controllare owner e permessi: root:lighttpd e 640.
- Aggiungere il blocco WebDAV nel vhost e verificare alias.url e $HTTP[“url”].
- Riavviare lighttpd e monitorare i log (/var/log/lighttpd/error.log).
- Testare con cadaver e con client GUI.
Casi in cui può fallire e come diagnosticarli
- Errore 401 (Unauthorized): verifica che auth.backend.htpasswd.userfile punti al file corretto e che il file abbia permessi leggibili dal processo lighttpd.
- 403 (Forbidden): controlla server.document-root e permessi filesystem per l’utente che esegue lighttpd.
- Comportamento anomalo su client Windows: prova a includere la porta nell’URL o usa un client WebDAV differente.
Suggerimenti di sicurezza
- Evita WebDAV su HTTP non cifrato in produzione. Usa HTTPS (TLS) per proteggere credenziali e traffico.
- Limita il percorso WebDAV tramite alias o regole di accesso. Non esporre l’intera document-root se non necessario.
- Mantieni aggiornato lighttpd e i pacchetti di sistema.
Test di accettazione (criteri di verifica)
- Il comando cadaver su http://www.example.com/webdav/ chiede credenziali.
- L’utente valido (test) può elencare, caricare e cancellare file se webdav.is-readonly = “disable”.
- Altri URL del vhost rispondono come normali richieste HTTP.
Playbook di rollback rapido
- Ripristina /etc/lighttpd/lighttpd.conf dalla copia di backup.
- Riavvia il servizio: /etc/init.d/lighttpd restart.
- Se il problema è l’autenticazione, sostituisci passwd.dav con una copia di backup.
- Controlla i log e riprova i test con cadaver.
Mini-metodologia di decisione: WebDAV vs alternative
- Se serve accesso remoto a file via HTTP con editing diretto, WebDAV è semplice e compatibile.
- Se serve sincronizzazione bidirezionale avanzata o controllo versione, valuta Nextcloud/ownCloud o soluzioni basate su WebDAV+FS.
- Se la necessità è condividere file in rete aziendale con SSO, considera SMB/Active Directory o soluzioni cloud con integrazione SSO.
Importante: tieni sempre backup dei file di configurazione prima di apportare modifiche.
Riepilogo finale:
- Crea e proteggi il file delle password; aggiorna il vhost; riavvia lighttpd; testa con cadaver. Usa TLS e limita l’esposizione del percorso WebDAV in produzione.
Materiali simili

Come aggiungere porte USB al computer

Errore di programma in Photoshop: risoluzione rapida
WebDAV su Lighttpd: configurazione e test

Cancellare la cronologia ricerche YouTube — Guida pratica

Recuperare una Snapchat Streak persa
