ICalendar mit WebDAV: Unterschied zwischen den Versionen
K (AuthDigestFile heißt jetzt AuthUserFile!) |
K (Kleiner Vertipper korrigiert) |
||
Zeile 110: | Zeile 110: | ||
*[http://www.sunbird-kalender.de/wiki/Sunbird-Kalender_FAQ#Wie_lassen_sich_Kalender_.FCber_das_Internet_oder_ein_Netzwerk_nutzen.3F Sunbird Netzwerkkalender] - Eine kurze Einführung zum Thema Sunbird-Netzwerkalender | *[http://www.sunbird-kalender.de/wiki/Sunbird-Kalender_FAQ#Wie_lassen_sich_Kalender_.FCber_das_Internet_oder_ein_Netzwerk_nutzen.3F Sunbird Netzwerkkalender] - Eine kurze Einführung zum Thema Sunbird-Netzwerkalender | ||
*[http://www.ppcnux.de/?q=node/7026 ppcnux.de] - Gutes und übersichtliches Howto für Debian | *[http://www.ppcnux.de/?q=node/7026 ppcnux.de] - Gutes und übersichtliches Howto für Debian | ||
− | *[http://de.wikipedia.org/wiki/WebDAV Wikipedia] - | + | *[http://de.wikipedia.org/wiki/WebDAV Wikipedia] - Allgemeine Informationen zum Thema WebDAV |
[[Category: LAMP]] [[Category: HowTo]] | [[Category: LAMP]] [[Category: HowTo]] |
Aktuelle Version vom 10. September 2009, 19:36 Uhr
Inhaltsverzeichnis
Einführung
Es wird im Folgenden geschildert, wie man einen Apache-Server so konfiguriert, dass man den Sunbird/Lightning-Kalender als Netzwerkkalender betreiben kann. Sunbird/Lightning im Netzwerkbetrieb bringt den Vorteil mit sich, dass auch von verschiedenen Rechnern aus ein Kalender leicht und bequem auf dem neusten Stand gehalten werden kann.
Funktionsweise
Die Funktionsweise des Sunbird/Lightning-Kalenders ist sehr einfach. Sämtliche Termine und Aufgaben werden in einer ics-Datei gespeichert. Sunbird liest diese Datei aus und setzt die Werte an der vorgesehenen Stelle im Kalender ein. Im Einzelplatzbetrieb liegt diese Datei lokal auf einem Rechner. Im Netzwerkbetrieb wird diese Datei ausgelagert. Der Server muss daher so konfiguriert werden, dass man die iCalendar-Datei ersteinmal auslesen kann und weitergehend, dass man schreibzugriff auf sie bekommt um Änderungen sofort übernehmen zu können. Außerdem ist es von Vorteil, dass man den Server so absichert, dass nur ausgewählte Personen auf die ics-Datei zugreifen können.
Voraussetzungen
- Apache-Webserver
- Mozilla Sunbird oder Lightning als Add-on für Mozilla Thunderbird
Konfiguration von WebDAV
Diese Beschreibung wurde mit folgenden Distributionen getestet: |
|
Benötige Apache-Module
- dav
- dav_fs
Optional zur Sicherheit:
- auth_digest
Apache2 verfügt über eine vielzahl von Modulen mit denen zusätzliche Aufgaben bewältigt werden können. Die Module, die hier freigeschaltet werden müssen, heißen dav dav_fs und auth_digest. Die ersten Beiden aktivieren WebDAV. Für einen sicheren Zugriff auf die Freigaben sollte man auth_digest hinzuziehen.
Einrichtung des Apache
Standardmäßig werden eine Vielzahl von Apache-Modulen benutzt. Die Auswahl der Module sind in der Datei apache2 in /etc/sysconfig festgelegt.
Dort tragen wir in die Zeile APACHE_MODULES dav und dav_fs ein. Für den sicheren Zugriff sollte dort auch auth_digest stehen."
Ausschnitt aus /etc/sysconfig/apache2:
... APACHE_MODULES="... auth_digest ... dav dav_fs ..." ...
Die neuhinzugefügten Apache-Module werden nach dem Neustart des Dienstes geladen.
Freigaben erstellen und absichern
Als Erstes wird ein Ordner erstellt auf den später zugegriffen und geschrieben werden soll. Dieser sollte unterhalb des DocumentRoot liegen.
Wir erstellen den Ordner mit den Namen dav für die WebDAV-Freigaben.
mkdir /srv/www/htdocs/dav
Nun noch einen Ordner, indem unser Testuser Otto später seinen Kalender ablegen kann.
mkdir /srv/www/htdocs/dav/otto
Wir ändern die Zugriffsrechte für Benutzer und Gruppe um Konflikte mit dem Apache zu vermeiden.
chown -R -v wwwrun:www /srv/www/htdocs/dav
Um sicherzugehen, dass kein anderer Benutzer an die Dateien im Ordner otto kommt empfehle ich Folgendes:
chmod 700 /srv/www/htdocs/dav/otto
Das Grundgerüst steht nun. Jetzt muss das WebDAV-Modul nur noch wissen, welche Ordner wir gerne freigeben wollen. Die Konfigurationsdateien des Apache liegen weitesgehend alle in /etc/apache2. Wir erstellen eine neue Konfigurationsdatei, die abklärt, welche Ornder wir freigeben und wer darauf zugreifen darf. Sie trägt hier den Namen webdav.conf. Wem dies zu unkreativ ist, der kann sich gerne etwas anderes überlegen. Der Inhalt der Datei kann einfach kopiert und angepasst werden.
/etc/apache2/conf.d/webdav.conf:
DavLockDB /var/lib/apache2/DavLockDB <Location /dav/otto> DAV On DAVDepthInfinity on Options FollowSymlinks Indexes MultiViews AllowOverride None AuthType Digest AuthName "WebDAV" AuthUserFile /etc/apache2/passwords/webdav.htdigest.access Require user otto </Location>
In der Konfigurationsdatei wurde die Zugriffsmethode Digest schon vorausgenommen. Nun kommen wir zur Absicherung, die wir schon erwähnt hatten. Der Benutzer Otto soll für seine Freigabe ein Passwort bekommen.
Zuerst legen wir eine Datei an, die die Kennwörter speichert. Es ist eigentlich egal, wo ihr diese Datei abspeichert. Hier liegt sie in /etc/apache2/passwords.
htdigest2 -c webdav.htdigest.access WebDAV otto
Dieser Befehl erstellt eine Datei webdav.htdigest.access. (Wem das zu lang ist als Name für eine Datei, kann hier kreativ zu Werke schreiten.) Der Benutzer Otto wird an den Freigabebereich "WebDAV" gebunden. Außerdem erhält er ein Passwort, mit der er sich Zugriff auf diesen verschaffen kann.
Achtung: Wer weitere Benutzer in die Datei aufnehmen möchte muss das Anhängsel -c weglassen, da sonst die Datei überschrieben wird und wichtige Einstellungen verloren gehen.
Nach dem alle Einstellungen vorgenommen worden sind, muss der Apache-Server neugestartet werden.
rcapache2 restart
Einfacher Test
Um den Erfolg der Einrichtung zu überprüfen:
http://hostname/dav/otto
Es sollte im Webbrowser ein Feld auftauchen, indem ein Benutzername samt Passwort abgefragt wird. Dies ist ein gutes Zeichen. Funktioniert auch die Anmeldung mit Name und Passwort, so sind alle Einstellungen in Ordnung.
Sunbird/Lightning konfigurieren
Neuer Kalender... > Im Netzwerk > Adresse: "http://hostname/dav/otto/ottos_kalender.ics" > Name: "ottos_kalender" > Fertig stellen
Weblinks
- Bsd-Wiki.de - Weiterführendes Howto zur Einrichtung von WebDAV auf einem Apache
- httpd.apache.org - Offizielles Dokumentationsmaterial über Apache2 und Module
- Sunbird-Forum - Ein sehr einfaches Howto mit XAMPP
- Sunbird-Kalender-Seite - Offizielle Website des Sunbird-Projekts
- Sunbird Netzwerkkalender - Eine kurze Einführung zum Thema Sunbird-Netzwerkalender
- ppcnux.de - Gutes und übersichtliches Howto für Debian
- Wikipedia - Allgemeine Informationen zum Thema WebDAV