4. A WebDAV szolgáltatások telepítése és beállítása

Ez egy könnyű rész. Ebben a fejezetben engedélyezni fogjuk a WebDAV szolgáltatást az Apache egy főkönyvtárában.

4.1. Módosítások az /usr/local/apache/conf/httpd.conf fájlban

Ellenőrizd a következő Apache direktívák meglétét az /usr/local/apache/conf/httpd.conf fájlban:


  Addmodule mod_dav.c

Amennyiben nincs benne, add hozzá. Ez jelzi az Apache számára a DAV képesség meglétét. A direktívát mindenképp konténeren (container) kívül kell elhelyezni.

Ezt követően meg kell adnod azt, hogy az Apache hol tárolja a DAVLockDB fájlt. Ez egy zárolási adatbázis a WebDAV-hoz, ezt írhatóvá kell tenned a httpd processz számára.

A DAVLock fájlt én az /usr/local/apache/var könyvtárban tárolom. Én ezt a könyvtárat más célokra is használom. Add hozzá a következő sort az /usr/local/apache/conf/httpd.conf fájlhoz, annak meghatározásához, hogy a DAVLockDB fájl az /usr/local/apache/var könyvtárban van:


  DAVLockDB      /usr/local/apache/var/DAVLock 

Az utasítást a tárolón kívül helyezd el.

4.2. Egy DAVLockDB könyvtár létrehozása

Mint fent említettem, egy könyvtárat kell létrehoznod a DAVLockDB fájl számára, majd írhatóvá kell tenned a webszerver folyamat számára. Általában a webszerver folyamat "nobody" felhasználói néven fut. Ellenőrizd ezt a következő parancs használatával:
ps -ef | grep httpd
Az /usr/local/apache alatt hozz létre egy könyvtárat, és állítsd be a hozzáférési jogokat, a következő parancsok használatával:


  # cd /usr/local/apache
  # mkdir var
  # chmod -R 755 var/
  # chown -R nobody var/
  # chgrp -R nobody var/

4.3. A DAV engedélyezése

A DAV engedélyezése pofonegyszerű. Az Apache főkönyvtára alatti könyvtár DAV engedélyezéséhez, add hozzá annak a bizonyos könyvtárnak a tárolójához a következő direktívát:


  DAV On

Ez engedélyezi a DAV-ot arra a könyvtárra és alkönyvtáraira.

A következő példa beállítás engedélyezi a DAV és LDAP azonosítást/hitelesítést az /usr/local/apache/htdocs/DAVtest könyvtárra. Rakd be az /usr/local/apache/conf/httpd.conf fájlba.


 DavLockDB /tmp/DavLock
<Directory "/usr/local/apache2/htdocs/DAVtest">
Options Indexes FollowSymLinks
AllowOverride None
order allow,deny
allow from all
AuthName "SMA Development server"
AuthType Basic
LDAP_Debug On
#LDAP_Protocol_Version 3
#LDAP_Deref NEVER
#LDAP_StartTLS On
LDAP_Server you.ldap.server.com 
#LDAP_Port 389
# Ha az SSL aktív, meg kell adnod az LDAP SSL portot, ez általában 636
LDAP_Port 636
LDAP_CertDbDir /usr/local/apache2/sslcert
Base_DN "o=SDS"
UID_Attr uid
DAV On
#require valid-user
require valid-user
#require roomnumber "123 Center Building"
#require filter "(&(telephonenumber=1234)(roomnumber=123))"
#require group cn=rcs,ou=Groups
</Directory>

4.4. Egy "DAVtest" nevű könyvtár létrehozása

Mint egy korábbi részben említettem, minden DAV könyvtárnak írhatónak kell lennie a webszerver folyamat által. Ebben a példában feltételezzük, hogy a webszerver "nobody" név alatt fut. Ez az általános. A felhasználó megtekintéséhez (akinek neve alatt a webszerver fut) használd a

# ps -ef | grep httpd

parancsot.

Hozz létre egy tesztkönyvtárat "DAVtest" néven az /usr/local/apache2/htdocs könyvtár alatt:

# mkdir /usr/local/apache/htdocs/DAVtest

Változtasd meg a hozzáférési jogokat a könyvtárban, az legyen írható-olvasható a httpd folyamat számára. Feltételezve, hogy a httpd "nobody" felhasználónév alatt fut, használd a következő parancsokat:


  # cd /usr/local/apache/htdocs
  # chmod -R 755 DAVtest/
  # chown -R nobody DAVtest/
  # chgrp -R nobody DAVtest/

4.5. Az Apache újraindítása

Végül le kell futtatnod az Apache-hoz mellékelt konfigurációs tesztrutint, a httpd.conf fájl szintaxisának ellenőrzéséhez:

# /usr/local/apache/bin/apachectl configtest

Ha hibaüzenetet kapsz, akkor ellenőrizd le, hogy minden utasítást helyesen követtél-e. Ha nem tudod kitalálni a hiba okát, írj nekem (a hibaüzenetet is írd meg) a saqib@seagate.com e-mail címre.

Ha a konfiguráció tesztje sikeres, indítsd el az Apache webszervert:

# /usr/local/apache/bin/apachectl restart

Most van egy WebDAV engedélyezett Apache szervered LDAP hitelesítéssel és SSL titkosítással.

4.6. A WebDAV protokoll tesztelése

Nagyon fontos, hogy a most telepített WebDAV teljesen összhangban legyen a WebDAV-2 protokollal. Ha nem teljesen kompatibilis, akkor a WebDAV alkalmazások kliens oldala nem fog rendesen működni.

A kompatibilitás teszteléséhez a Litmus nevű eszközt használjuk. A Litmus a WebDAV protokoll tesztelője, amely azt vizsgálja, hogy összhangban van-e egy szerver az RFC2518-ben leírt WebDAV protokollal.

Töltsd le a Litmus forráskódját a http://www.webdav.org/neon/litmus/ webhelyről, majd másold be a /tmp/downloads könyvtárba.

Használd a gzip és tar programokat a kicsomagoláshoz:


# cd /tmp/downloads
# gzip -d litmus-0.6.x.tar.gz
# tar -xvf litmus-0.6.x.tar
# cd litmus-0.6.x

A Litmus fordítása és telepítése egyszerű:


# ./configure
# make
# make install

A make install parancs a bináris fájlokat az /usr/local/bin, a súgó fájljait pedig az /usr/local/man könyvtárba teszi.

A most telepített WebDAV szerver teszteléséhez használd a


# /usr/local/bin/litmus http://you.dav.server/DAVtest userid passwd

parancsot.