Instalación
En la instalación de apache2 por defecto ya están incluidos los módulos necesarios, tan sólo tenemos que habilitarlos, para ello:
a2enmod dav_fs
a2enmod dav # en realidad al habilitar el anterior ya lo hará con este también
Configurando el host virtual
En mi caso crearé una carpeta llamada upload en la que daré permiso para la utilización de webdav para la subida y bajada de archivos, haré al usuario de apache (www-data) propietario del directorio:
mkdir /var/www/websegura/upload
chown www-data /var/www/websegura/upload
Tras ello he modificado el fichero /etc/apache2/sites-available/websegura para permitir webdav en dicho directorio, copio el fichero completo con las modificaciones en rojo:
<VirtualHost *:443>
ServerAdmin webmaster@localhost
ServerName websegura.mczones.es
ServerAlias websegura.es
DirectoryIndex index.html
DocumentRoot /var/www/websegura
<IfModule mod_dav_fs.c>
DavLockDB /var/lib/apache2/DAVLock
</IfModule>
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/websegura>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
SSLRequireSSL
</Directory>
<Directory /var/www/websegura/upload>
#habilitamos webdav
DAV On
Options Indexes MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
<Location />
AuthBasicProvider ldap
AuthType Basic
AuthzLDAPAuthoritative On
AuthName "Identificacion websegura.mczones.es"
AuthLDAPURL "ldap://127.0.0.1:389/ou=usuarios,dc=mczones,dc=es?uid?one"
AuthLDAPBindDN "cn=admin,dc=mczones,dc=es"
AuthLDAPBindPassword "ldapadmin"
Require valid-user
SSLRequireSSL #obligamos al uso de https
</Location>
# SSL Engine Switch:
# Enable/Disable SSL for this virtual host.
SSLEngine on
SSLCertificateFile /etc/ssl/certs/websegura.pem
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory /usr/lib/cgi-bin>
SSLOptions +StdEnvVars
</Directory>
BrowserMatch ".*MSIE.*" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
</VirtualHost>
Una vez hecho debemos reiniciar el servidor:
/etc/init.d/apache2 restart
Fichero de configuración webdav, ssl con autenticación básica de apache
<VirtualHost *:443>
ServerAdmin webmaster@localhost
ServerName websegura.mczones.es
ServerAlias websegura.es
DirectoryIndex index.html
DocumentRoot /var/www/websegura
<IfModule mod_dav_fs.c>
DavLockDB /var/lock/apache2/DAVLock
</IfModule>
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/websegura>
Options Indexes FollowSymLinks MultiViews
Order allow,deny
allow from all
SSLRequireSSL
</Directory>
<Directory /var/www/websegura/upload>
# habilitamos webdav
DAV On
Options Indexes MultiViews
#requerir encriptación
SSLRequireSSL
# Solicitamos autenticación
AllowOverride AuthConfig
AuthType Basic
AuthName "Acceso restringido a alumnos A websegura"
# (La siguiente línea es opcional)
AuthBasicProvider file
AuthUserFile /etc/apache2/mczones/passwords
Require valid-user
Order allow,deny
Allow from all
</Directory>
# SSL Engine Switch:
# Enable/Disable SSL for this virtual host.
SSLEngine on
SSLCertificateFile /etc/ssl/certs/websegura.pem
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory /usr/lib/cgi-bin>
SSLOptions +StdEnvVars
</Directory>
BrowserMatch ".*MSIE.*" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
</VirtualHost>
Conectándonos desde Ubuntu a la carpeta Webdav
Dado que en la práctica de Windows ya expliqué cómo conectarnos a un servidor webdav usando el sistema de Microsoft, en esta ocasión haremos lo mismo pero desde un cliente Ubuntu.
Como en nautilus sólo nos aparece la posibilidad de conectarnos a un servidor webdav bajo http hemos de instalar otro paquete que nos permita la conexión webdav encriptada -empleando https-.
Para ello instalamos el paquete davfs2:
sudo apt-get install davfs2
tras ello creamos una carpeta local dónde montaremos la carpeta webdav:
sudo mkdir /media/websegura
OJO con los permisos, para tener permiso todos de escritura:
chmod 776 /media/websegura.
finalmente montamos la carpeta:
sudo mount -t davfs https://websegura.mczones.es/upload /media/websegura
Al hacerlo solicitará el usuario y la contraseña y me preguntará si acepto el certificado, del que me mostrará los datos, tal y cómo se puede ver en la imagen:
Finalmente hacemos un ls dónde podemos observar los ficheros del servidor.
1 comentario:
Hola
Podriamos tener mas de una carpeta?? es decir una carpeta webdav por cada usuario???
Publicar un comentario