{"id":4011,"date":"2014-02-22T12:02:05","date_gmt":"2014-02-22T11:02:05","guid":{"rendered":"https:\/\/www.bdjl.de\/localhost\/?p=4011"},"modified":"2014-02-23T08:58:39","modified_gmt":"2014-02-23T07:58:39","slug":"horde5-mit-gnupg-fr-die-schule","status":"publish","type":"post","link":"https:\/\/www.bdjl.de\/localhost\/?p=4011","title":{"rendered":"Horde5 mit GnuPG f&uuml;r die Schule?"},"content":{"rendered":"<p>Auf der Suche nach einer einfach zu handhabenden L\u00f6sung f\u00fcr den Austausch von verschl\u00fcsselten Mails innerhalb des Kollegiums fiel der Blick auf Horde. Dieses bietet nicht nur volle Groupwarefunktionalit\u00e4t, ist auch auf mobilen Endger\u00e4ten bedienbar und kann sich in andere Systeme (Kalender, Adressbuch etc. auf dem Smartphone oder einem lokalen Mailclient) integrieren \u2013 es kann GnuPG im Webmailer nutzbar machen. Den durchaus vorhandenen DAUs im Kollegium bliebe so die Installation von Thunderbird, Gnu4Win, Enigmail und die lokale Schl\u00fcsselerzeugung ohne Anleitung erspart. Das klang erst einmal nicht schlecht.<\/p>\n<p>Was mir nicht so gefiel, war die Idee, dass dann die Private Keys der User auf einem Server rumliegen. Konkret: Horde speichert diese in der MySQL-DB ab. Schutz f\u00fcr den Key ist demnach nur durch den Schutz der MySQL-Installation selbst und durch das Passwort auf dem Key gegeben.<\/p>\n<p>Klingt heikel. Ist auch heikel.<\/p>\n<p>Andererseits muss man im Auge haben, dass im Kollegium Trojaner auf schlecht gewarteten Client-Systemen, Adressb\u00fccher bei MS, Apple, Google &amp; Co sowie unverschl\u00fcsselte Mails mit Noten und p\u00e4dagogischen Bemerkungen zu einzelnen (selbstverst\u00e4ndlich mit vollem Namen genannten) Sch\u00fclern insgesamt betrachtet die gr\u00f6\u00dfere Gefahr f\u00fcr den Datenschutz darstellen, als ein zentraler Server im Intranet, der gut gewartet und gepflegt wird.<\/p>\n<p>Das ist gleichzeitig aber wieder die Krux an der Sache: Die zentrale Bereitstellung eines solchen Verschl\u00fcsselung-Dienstes ist im Grunde anti-aufkl\u00e4rerisch. Die Kollegen werden an der \u00dcbernahme von Verantwortung gehindert, oder diese wird zumindest beschr\u00e4nkt auf Passwortsicherheit. Die Aufgabe, sich &#8222;seines eigenen Verstandes zu bedienen&#8220; wird delegiert auf die Netzwerker.<\/p>\n<p>An denen bleibt hierbei nicht wenig h\u00e4ngen: Wenn ich diesen Weg zu Ende gehe, darf ich ein dickes P\u00e4ckchen administrativer Arbeit schultern: Benutzerverwaltung, Backups, Updates, Logfile-Analyse, Speicherplatzverwaltung \u2026 und vor allem Sicherheitsassessments. Gerade bei einem Mailserver darf man dies nicht untersch\u00e4tzen, w\u00fcrde ein solcher doch weitaus mehr als schulische Moodles, WordPresse oder DokuWikis etc. zum Kernbereich der Netzinfrastruktur z\u00e4hlen. Ein \u201cschon wieder tut alles gar nicht\u201d ginge voll auf die Kappe der Netzer. Keine sch\u00f6ne Vorstellung, sich dies f\u00fcr Umme und ein paar warme Worte bei der Einf\u00fchrung des Systems an\u2019s Bein zu binden.<\/p>\n<p>Ausprobieren wollte ich es trotzdem &#8211; und so kam Horde auf eine meiner Maschinen. Ich orientierte mich bei der Installation weitgehend an dieser Anleitung:<\/p>\n<p><a href=\"http:\/\/www.linuxmuster.net\/anwenderwiki:webapps:horde:installhorde5ubuntu\" target=\"_blank\">http:\/\/www.linuxmuster.net\/anwenderwiki:webapps:horde:installhorde5ubuntu<\/a><\/p>\n<p>Einige Anmerkungen zu derselben:<\/p>\n<p>1. Eine Anbindung an den LDAP des Schulservers wollte ich nicht haben. Zu schnell gibt ein Kollege f\u00fcr alle Sch\u00fcler sichtbar sein Passwort am Beamer ein &#8230; und vergisst dann, dieses z\u00fcgig zu \u00e4ndern. Ich habe Horde deswegen f\u00fcr Benutzer eingerichtet, die im System selbst zu Hause sind, also ein lokales Benutzerkonto haben, das sie \u00fcber SSH (abgesichert durch Keys) erreichen k\u00f6nnen. Passwort\u00e4nderungen sind demnach ausdr\u00fccklich nicht \u00fcber Horde selbst m\u00f6glich. IMP erledigt damit innerhalb von Horde die Authentifizierung und kein LDAP.<\/p>\n<p>Das bringt den Vorteil mit, dass ich die Passwortsicherheit besser kontrollieren kann &#8211; und den Nachteil, dass die wenigsten Kollegen ihre Passw\u00f6rter selbst \u00e4ndern k\u00f6nnen. Die Vorteile \u00fcberwiegen bei meinem Kollegium hier ganz klar die Nachteile. Vor allem: Wer \u00e4ndert schon seine Passw\u00f6rter \ud83d\ude41 Bei dieser L\u00f6sung mach ich das dann &#8211; und zwar zwangsweise f\u00fcr die Kollegen gleich mit. Der Rhythmus ist mir noch nicht klar, aber einmal im Jahr w\u00e4re cool.<\/p>\n<p>2. Die Anbindung von Gollem, dem Filemanager von Horde, an Samba unterblieb bei meiner Installation auf einen dezidierten Server. Das ist einerseits klar, ist doch der Schulserver-Samba nicht \u00fcber&#8217;s Netz zu erreichen &#8211; andererseits aber auch wieder problematisch, weil nun f\u00fcr die Kollegen drei Wege f\u00fcr die Dateiablage offen stehen: a) den Dateimanager im Mailserver-Horde benutzen b) den Dateimanager im Schulserver-Horde f\u00fcr den Zugriff auf&#8217;s Home benutzen c) die ownCloud Installation der Schule benutzen.<\/p>\n<p>Vielfalt und Freiheit f\u00fchrt in meinem Kollegium immer zu Problemen. Andererseits: Da kaum jemand \u00fcberhaupt jemals die genannten Dienste verwendet hat, kann ich mit dem Nachteil leben. Und: Wenn ich hiermit Probleme im Alltag der nicht v\u00f6llig hoffnungslosen F\u00e4lle erlebe, dann klemm ich Gollem im Mailserver-Horde schlicht ab.<\/p>\n<p>3. Die oben verlinkte Installationsanleitung tr\u00e4gt schon arg dick auf und sollte sich auf ungef\u00e4hr die folgenden Schritte &#8211; nach dem Anlegen einer Datenbank &#8211; verschlanken lassen. Ich muss das in einer zweiten Installation noch einmal verifizieren &#8211; aber f\u00fcr den Moment kann man sich ja, sollte etwas Entscheidendes fehlen, wieder an der Anleitung bei linuxmuster.net orientieren:<\/p>\n<blockquote><p>apt-get install php5-tidy php5-memcache memcached php5-auth-pam php5-intl php5-sasl<\/p>\n<p>pear channel-discover pear.horde.org<\/p>\n<p>pear install horde\/horde_role<\/p>\n<p>pear run-scripts horde\/Horde_Role<\/p>\n<p>mkdir \/var\/www\/horde<\/p>\n<p>pear install -a -B horde\/webmail<\/p>\n<p>webmail-install<\/p>\n<p>chown root:www-data \/var\/www\/horde\/static<\/p>\n<p>chmod 775 \/var\/www\/horde\/static<\/p><\/blockquote>\n<p>Die Apachekonfiguration ist noch anzupassen und der Apache im Anschluss neu zu starten:<\/p>\n<blockquote><p>Alias \/horde \/var\/www\/horde<\/p>\n<p>&lt;Directory \/var\/www\/horde&gt;<\/p>\n<p>Options Indexes FollowSymLinks MultiViews<\/p>\n<p>AllowOverride All<\/p>\n<p>AcceptPathInfo On<\/p>\n<p>Order allow,deny<\/p>\n<p>allow from all<\/p>\n<p>&lt;\/Directory&gt;<\/p><\/blockquote>\n<p>Nag fiel bei mir gleich auf die Nase und warf beim Anlegen von neuen Tasks Fehlermeldungen zu einer nicht gefundenen <em>rampage.php<\/em> aus. Die Rewrite Anweisungen in der .htaccess im Horde Stammverzeichnis wollten nicht recht wirken &#8211; also legte ich mir den folgenden Eintrag direkt in die Apache Konfiguration<\/p>\n<blockquote><p>&lt;Location \/horde&gt;RewriteEngine on<\/p>\n<p>RewriteBase \/horde<\/p>\n<p>RewriteCond %{REQUEST_FILENAME} !-d<\/p>\n<p>RewriteCond %{REQUEST_FILENAME} !-f<\/p>\n<p>RewriteRule ^(.*)$ rampage.php [QSA,L]<\/p>\n<p>&lt;\/Location&gt;<\/p><\/blockquote>\n<p>Da l\u00f6ste sich der Knoten gr\u00fcndlich.<\/p>\n<p>Das Ticketsystem Whups habe ich gleich wieder runter geworfen &#8211; es lief eh nicht rund und zog zu viele Betapakete aus PECL Repositories mit sich.<\/p>\n<p>4. Der Mailserver ist eine VM. Das ist ja erst einmal ein Vorteil, weil sich so Backups leichter durchf\u00fchren lassen und Updates mir nicht alles zerrei\u00dfen k\u00f6nnen &#8211; aber virtuelle Maschinen bringen keine Entropy auf die Pfanne, um z\u00fcgig 2048er-GnuPG-Keys zu erzeugen. Das dauerte halbe Ewigkeiten &#8211; aber man kann sich von haveged [<a href=\"https:\/\/www.digitalocean.com\/community\/articles\/how-to-setup-additional-entropy-for-cloud-servers-using-haveged\" target=\"_blank\">1<\/a>] helfen lassen.<\/p>\n<p>5. Es ist nicht nur die Erzeugung der Keys, die mit den Kollegium durchexerziert werden muss, und deren Nutzung im Alltag. Kaum einer hat sich je mit Verschl\u00fcsselung besch\u00e4ftigt, so dass schon grundlegende Konzepte nicht verstanden werden. Alice and Bob werden in der Schule gel\u00e4ufige Namen werden m\u00fcssen.<\/p>\n<p>Dazu kommt die Einrichtung von Horde selbst, auf dass sp\u00e4ter alles rund l\u00e4uft (z.B. Pubkey als Anhang verschicken, keine HTML Mails etc. pp.).<\/p>\n<p>Der Schulungsaufwand f\u00fcr die zentrale Mailserver-L\u00f6sung ist alles in allem nicht zu untersch\u00e4tzen. Ich behaupte mal: Selbst f\u00fcr eine Gruppe eher erfahrener Kollegen, die nicht alle 5 Minuten aus Versehen den Browser zumachen und dann &#8222;ich war&#8217;s nicht&#8220; heulen, dauert die Ersteinrichtung mindestens einen Nachmittag (3-4 Schulstunden).<\/p>\n<p>Jetzt beginne ich die Arbeit mit zwei geeigneten Kandidaten, werte dann die Erfahrungen aus und erweitere die Gruppe langsam und Schritt f\u00fcr Schritt. Ich selbst kann dann meine Einf\u00fchrungen optimieren und gewinne &#8211; wenn dann ein Verfahren fest steht &#8211; Multiplikatoren im Lehrerzimmer. Bei den ersten Schritten finde ich so auch heraus, ob Horde \u00fcberhaupt der richtige Weg f\u00fcr meine Kollegen ist. Wenn ich n\u00e4mlich f\u00fcr die Einf\u00fchrung in Horde mit allem drum und dran \u00e4hnlich viel Zeit verbrate wie f\u00fcr eine Einf\u00fchrung in Thunderbird + Enigmail, dann kann ich mir den administrativen Overkill sparen und habe am Ende eindeutig sicherere Systeme, die jederzeit noch in Richtung S\/MIME erweitert werden k\u00f6nnen.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Auf der Suche nach einer einfach zu handhabenden L\u00f6sung f\u00fcr den Austausch von verschl\u00fcsselten Mails innerhalb des Kollegiums fiel der Blick auf Horde. Dieses bietet nicht nur volle Groupwarefunktionalit\u00e4t, ist auch auf mobilen Endger\u00e4ten bedienbar und kann sich in andere Systeme (Kalender, Adressbuch etc. auf dem Smartphone oder einem lokalen Mailclient) integrieren \u2013 es kann [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9,10],"tags":[436,442],"class_list":["post-4011","post","type-post","status-publish","format-standard","hentry","category-lfb","category-schule","tag-gnupg","tag-horde"],"_links":{"self":[{"href":"https:\/\/www.bdjl.de\/localhost\/index.php?rest_route=\/wp\/v2\/posts\/4011","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bdjl.de\/localhost\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bdjl.de\/localhost\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.bdjl.de\/localhost\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bdjl.de\/localhost\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4011"}],"version-history":[{"count":14,"href":"https:\/\/www.bdjl.de\/localhost\/index.php?rest_route=\/wp\/v2\/posts\/4011\/revisions"}],"predecessor-version":[{"id":4025,"href":"https:\/\/www.bdjl.de\/localhost\/index.php?rest_route=\/wp\/v2\/posts\/4011\/revisions\/4025"}],"wp:attachment":[{"href":"https:\/\/www.bdjl.de\/localhost\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4011"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bdjl.de\/localhost\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4011"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bdjl.de\/localhost\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4011"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}