Skip navigation

su server Debian based:


aptitude install apache2 mysql-server mysql-client libapache2-mod-auth-mysql

successivamente abilitare i moduli installati


a2enmod dav_fs
a2enmod dav
a2enmod auth_mysql

WebDAV può utilizzare mysql per l’autenticazione, creando una tabella contenente:

  • username
  • passwd
  • groups

(ovviamente per ragioni di sicurezza è consigliato creare un utente MySQL (web_dav) con password (password_di_web_dav) e con privilegi limitati

mysqladmin -u root -p create webdav
mysql -u root -p
GRANT SELECT, INSERT, UPDATE, DELETE ON webdav.* TO 'web_dav'@'localhost' IDENTIFIED BY 'password_di_web_dav';
GRANT SELECT, INSERT, UPDATE, DELETE ON webdav.* TO 'web_dav'@'localhost.localdomain' IDENTIFIED BY 'password_di_web_dav';
FLUSH PRIVILEGES;

USE webdav;
create table mysql_auth (
username char(25) not null,
passwd char(32),
groups char(25),
primary key (username)
);

ora popoliamo il database con gli utenti.
in questo esempio:
username: user_webdav
passwd: user_webdav_pswd
groups: webdav_group

INSERT INTO `mysql_auth` (`username`, `passwd`, `groups`) VALUES('user_webdav', MD5('user_webdav_pswd'), 'webdav_group');

se preferite usare phpmyadmin vi ricordo che per “giocare” a criptare in md5 basta dare:

echo -n "password" | md5sum

in una shell linux

ora manca solo di creare il VirtualHost in Apache che utilizzi WebDAV, quindi modificare con gli opportuni cambiamenti il file di configurazione riportato:

NameVirtualHost *
<VirtualHost *>
ServerAdmin webmaster@localhost

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

Alias /webdav /var/www/share
<Location /webdav>
DAV On
AuthBasicAuthoritative Off
AuthUserFile /dev/null
AuthMySQL On
AuthName “webdav”
AuthType Basic
Auth_MySQL_Host localhost
Auth_MySQL_User web_dav
Auth_MySQL_Password password_di_web_dav
AuthMySQL_DB webdav
AuthMySQL_Password_Table mysql_auth
Auth_MySQL_Username_Field username
Auth_MySQL_Password_Field passwd
Auth_MySQL_Empty_Passwords Off
Auth_MySQL_Encryption_Types PHP_MD5
Auth_MySQL_Authoritative On
require valid-user
</Location>
</VirtualHost>

la directory /var/www/share deve esistere quindi

mkdir -p /var/www/share

Lato client si può usare cadaver (molto simile a un client ftp), il filesystem davfs2, Konqueror o anche gnome Nautilus 😉

presto un aggiornamento della guida per consentire l’accesso anche da client Windows.

Annunci

One Comment

  1. you are actually a good webmaster. The web site loading speed is
    incredible. It sort of feels that you’re doing any unique trick. Furthermore, The contents are masterpiece. you have performed a fantastic task in this subject!


Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

%d blogger hanno fatto clic su Mi Piace per questo: