Guide Open Source

GUIDE E MANUALI DEL MONDO LINUX E CMS

Guide Open Source

GUIDE E MANUALI DEL MONDO LINUX E CMS

Guide Open Source

GUIDE E MANUALI DEL MONDO LINUX E CMS

Come impostare WebDAV con Apache2 su CentOS 5.5

Questa guida spiega come impostare WebDAV con Apache2 su un server CentOS 5.5. WebDAV è sinonimo di Web-based Distributed Authoring and Versioning ed è un insieme di estensioni del protocollo HTTP che consentono agli utenti di modificare direttamente i file sul server Apache in modo che non devono essere scaricati/caricati tramite FTP. Naturalmente, WebDAV può essere utilizzato anche per caricare e scaricare file.

Io non rilasciano alcuna garanzia che questo funziona per voi!

 

1 Nota preliminare

Sto usando un server CentOS 5.5 con l’IP indirizzo 192.168.0.100 qui.

 

2 installazione di WebDAV

Se Apache non è già installato, è possibile installarlo come segue:

yum install httpd

In seguito, aprire /etc/httpd/conf/httpd.conf e assicurarsi che i moduli dav e dav_fs sono abilitati nella sezione LoadModule (dovrebbe essere abilitati di default):

vi /etc/httpd/conf/httpd.conf
[...]
LoadModule dav_module modules/mod_dav.so
[...]
LoadModule dav_fs_module modules/mod_dav_fs.so
[...]

Quindi creare i collegamenti di avvio del sistema per Apache e avviarlo:

chkconfig --levels 235 httpd on
 /etc/init.d/httpd start

 

3 creazione di un Host virtuale

Ora creo un vhost Apache predefinito nella directory /var/www/web1/webPer questo scopo, vorrei aggiungere un vhost predefinito alla fine di /etc/httpd/conf/httpd.conf.Se hai già un vhost per il quale si desidera abilitare WebDAV, è necessario regolare questo tutorial alla vostra situazione.

In primo luogo, creiamo la directory /var/www/web1/web e rendere l’utente Apache e il gruppo (apache) il proprietario della directory:

mkdir -p /var/www/web1/web
 chown apache:apache /var/www/web1/web

Quindi aggiungere il vhost di nuovo alla fine di /etc/httpd/conf/httpd.conf.:

vi /etc/httpd/conf/httpd.conf
[...]
NameVirtualHost *:80
<VirtualHost *:80>
        ServerAdmin webmaster@localhost

        DocumentRoot /var/www/web1/web/
        <Directory /var/www/web1/web/>
                Options Indexes MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>

</VirtualHost>

Quindi ricaricare Apache:

/etc/init.d/httpd reload

 

4 configurare l’Host virtuale per WebDAV

Ora creiamo il file di password WebDAV /var/www/web1/passwd.dav con l’utente di prova (l’opzione – c crea il file se non esiste):

htpasswd -c /var/www/web1/passwd.dav test

Verrà chiesto di digitare una password per l’utente di prova.

(Non utilizzare l’opzione -c se la /var/www/web1/passwd.dav è già esistenti perché questo verrà ricreato il file da zero, significato che si perdono tutti gli utenti in quel file!)

Ora cambiamo le autorizzazioni del file /var/www/web1/passwd.dav in modo che solo la radice e i membri del gruppo apachepossono accedervi:

chown root:apache /var/www/web1/passwd.dav
 chmod 640 /var/www/web1/passwd.dav

Ora modificare il nostro vhost alla fine di /etc/httpd/conf/httpd.conf. e aggiungere le seguenti righe:

vi /etc/httpd/conf/httpd.conf
[...]
        Alias /webdav /var/www/web1/web

        <Location /webdav>
           DAV On
           AuthType Basic
           AuthName "webdav"
           AuthUserFile /var/www/web1/passwd.dav
           Require valid-user
       </Location>
[...]

La direttiva Alias rende (insieme a < posizione >) che quando si chiama /webdav, WebDAV viene richiamato, ma è comunque possibile accedere la radice di tutto il documento del vhost. Tutti gli altri URL di quel vhost sono ancora “normale” HTTP.

Il vhost finale dovrebbe assomigliare a questo:

[...]
NameVirtualHost *:80
<VirtualHost *:80>
        ServerAdmin webmaster@localhost

        DocumentRoot /var/www/web1/web/
        <Directory /var/www/web1/web/>
                Options Indexes MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>

        Alias /webdav /var/www/web1/web

        <Location /webdav>
           DAV On
           AuthType Basic
           AuthName "webdav"
           AuthUserFile /var/www/web1/passwd.dav
           Require valid-user
       </Location>

</VirtualHost>

Reload Apache afterwards:

/etc/init.d/httpd reload

 

5 test WebDAV

Ora installeremo il cadavere, un client WebDAV da riga di comando:

yum install cadaver

Per testare se funziona WebDAV, digitare:

cadaver http://localhost/webdav/

Verrà richiesto un nome utente. Tipo in prova e poi la password per l’utente di provaSe tutto va bene, si dovrebbe essere concesso l’accesso che significa che WebDAV sta funzionando bene. Digitare quit per lasciare la shell di WebDAV:

[root@server1 ~]# cadaver http://localhost/webdav/
 Authentication required for webdav on server `localhost':
 Username: test
 Password:
 dav:/webdav/> quit
 Connection to `localhost' closed.
 [root@server1 ~]#

6 configurare un Client di Windows XP per connettersi alla condivisione WebDAV

Fare clic su Risorse di rete sul desktop (ho una tedesca di Windows, quindi i nomi sono un po’ diversi negli screenshot):

Selezionare Aggiungi risorsa di rete dal menu Operazioni di rete (a sinistra):

L’ Aggiunta guidata risorse di rete si avvicina. Fare clic sul pulsante Avanti :

Selezionare scegliere un altro percorso di retee fare clic su prossimo:

Immettere http://192.168.0.100: 80/webdav come la posizione e fare clic su AvantiÈ necessario specificare la porta nell’URL WebDAV (: 80). Per qualche strana ragione che questo rende Windows XP accetta il nome utente normale (ad esempio test) – altrimenti Windows XP prevede nomi utente NTLM (che avrebbero la forma \test www.example.com).

Vi verrà richiesto un nome utente e una password. Digitare il nome utente di prova e la password per l’utente di prova:

Quindi digitare un nome per la cartella di WebDAV:

Per aprire la nuova connessione, tenere selezionata la casella Apri questa risorsa di rete quando si fa clic su fine e fare clic su Finish:

La cartella WebDAV aprirà quindi dove è possibile visualizzare il contenuto della directory /var/www/web1/web e nelle relative sottodirectory sul server, e troverete un’icona nella cartella Risorse di rete per la nuova condivisione di WebDAV:

7 configurare un Client di Linux (GNOME) per connettersi alla condivisione WebDAV

Se si desidera connettersi alla condivisione WebDAV da un desktop GNOME, andare al posti > Connetti al Server…:

Selezionare WebDAV (HTTP) come il tipo di servizio, digitare il Server (192.168.0.100 in questo esempio) e quindi la cartella (webdav). Non inserire un Nome utente ancora perché in caso contrario la connessione avrà esito negativo. Fare clic su Connetti in seguito:

Ora viene chiesto un nome utente e la password. Digitare nella prova insieme alla password, quindi fare clic su Connetti:

Si potrebbe ottenere il seguente errore…

… ma allo stesso tempo la condivisione WebDAV dovrebbe apparire sul desktop, il che significa che è possibile ignorare l’errore:

Fare doppio clic sull’icona per aprire la condivisione di WebDAV:

 

Piaciuto l'articolo? Condividilo sui social!

Share on facebook
Facebook
Share on twitter
Twitter
Share on linkedin
LinkedIn
Share on whatsapp
WhatsApp