Dies ist eine ergänzte Übersetzung der Dokumentation zu Schleuder3 Version 3.4. (Stand: Oktober 2020). Wir haben diese angefertigt, da mehrere unserer Nutzer_innen Probleme mit Schleuder3 haben und auch mit der englischsprachigen Dokumentation nicht zurecht kommen. Daher haben wir die deutsche Dokumentation an einigen Stellen ergänzt oder umformuliert.

Begriffe

Die englischsprachige Dokumentation nutzt ein paar Begriffe, die in der Technik-Welt recht geläufig sind, sich aber darüber hinaus nicht allen sofort erschließen:

listen_name@nadir.org - "listen_name" ist ein Platzhalter, den ihr mit dem Namen eurer Schleuder ersetzen muesst.

public key - der öffentliche gpg Schlüssel

keywords - Schlüsselwörter oder auch die "x-"Befehle, mit denen ihr die Schleuder administriert

fingerprint - Ein Fingerprint eines öffentlichen Schlüssels ist eine eindeutige Kennung dieses Schlüssels. Damit ist es möglich einen Schlüssel ohne Gefahr der Verwechselung eindeutig zu benennen. Ein Fingerprint sieht zB so aus: 909D6819812CAF808A6A1EF6824F5EA09D6697E9 - wenn ähnliches im folgenden Text auftaucht, dann ist ein Fingerprint gemeint :)

keyring - Eine Datei, die alle öffentlichen Keys beinhaltet - auch Schlüsselbund genannt. Jede Schleuderliste hat ihren eigenen Schlüsselbund mit den ihr bekannten keys.

Inhalt

  • Schleuder nutzen

    • Den öffentlichen Schlüssel einer schleuder bekommen

    • Spezielle Schlüsselwörter/Befehle

    • Sicherheit

    • Mitglieder eintragen und gpg-Schlüssel verwalten

    • Weitere Schlüsselwörter

    • Beispiele

  • Bekannte Probleme

    • HTML

    • Zeilenumbruch

    • Geistermails

  • Schleuderwebinterface zur Administration

Schleuder nutzen

Mails, die an die Schleuder geschickt werden, werden an die eingetragenen Mitglieder der Liste verschickt. Dabei wird die Ursprungsmail der Versender_in verändert. Zum einen wird diese auf unseren Servern kurz entschlüsselt, um dann mit den öffentlichen Schlüsseln der Listenmitglieder wieder verschlüsselt und verschickt zu werden. Die ausgehenden Mails enthalten zusätzlich zum ursprünglichen Inhalt noch einen kleinen Block am Anfang der mail, der weitere Informationen enthält.

Ein Beispiel:

From: user_in user_in@example.org
To: listen_name@nadir.org
Cc:
Date: Tue, 15 Jan 2019 12:20:30 +0100
Sig: Good signature from 1234567890 user_in user_in@example.org
Enc: Encrypted

Eine Erklärung:

From: Von welcher Adresse die Mail ursprünglich kam
To: An welche Liste die Mail ging
Cc: meistens leer
Date: Datum und Uhrzeit, wann die Mail von der Schleuder verarbeitet wurde
Enc: Zeigt an, ob die Mail, als sie die Schleuder erreicht hat verschlüsselt war oder nicht

Den öffentlichen Schlüssel einer schleuder bekommen

Um den öffentlichen Schlüssel einer Schleuder zu erhalten, reicht es, eine leere und unverschlüsselte Mail an die Schleuder zu schicken mit dem Zusatz "-sendkey" zwischen listen_name und @nadir.org. Wer z.B. an uns ein verschlüsselte Mail schicken will und den public key noch braucht: nadir-technik-sendkey@nadir.org.

Spezielle Schlüsselwörter

Um eine Schleuder mit Email-Befehlen zu verwalten, sind spezielle Schlüsselwörter notwendig, die ein bestimmtes Verhalten auslösen. Damit können neue Mitglieder eingetragen, Schlüssel getauscht oder auch an eine Mailadresse eine Nachricht verschickt werden, die nicht auf der Schleuder eingetragen ist.

Damit das dann auch funktioniert, müssen diese Schlüsselwörter einem definierten Format folgen:

  • die erste Zeile muss sein: "x-list-name: listen_name@nadir.org" (ohne die Anführungszeichen)

  • sie müssen direkt am Anfang, in der ersten Zeile mit Zeilenbeginn des Textteils der Mail sein. Also kein Leerzeichen davor und auch keine Leerzeile darüber.

  • die ersten Zeichen müssen immer "x-" sein.

  • Alles, was zu dem Befehl dazugehört (z.B. eine Mail-Adresse oder ein Fingerprint) müssen in der gleichen Zeile stehen, es darf keinen Zeilenumbruch geben (dazu später mehr)

  • die Mail muss verschlüsselt und signiert/unterschrieben sein

  • die Mail muss sog. plain text ("reiner Text") sein, d.h. kein html oder ähnliches enthalten (dazu später mehr)

  • die Mail muss in den allermeisten Fällen an listen_name-request@nadir.org geschickt werden (dazu unten eine Auflistung).

Note: Es kann nur ein Command pro Mail an die request-Adresse verschickt werden!

Sicherheit

Um ein mögliches Angriffszenario auf einzelne Schleuderlisten auszuschließen (sog. replay attacks), muss jede Mail an eine Schleuder, die Schlüsselwörter enthält, mit "x-list-name: listen_name@nadir.org" in der ersten Zeile beginnen. Andernfalls werden keine weiteren "x-"-Befehle verarbeitet. Ihr bekommt dann folgende Fehlermeldung zurück: "Your message did not contain the required "X-LIST-NAME" keyword and was rejected."

Mitglieder eintragen und gpg-Schlüssel verwalten

Damit eine Schleuder überhaupt "mitbekommt", dass in einer Mail Schlüsselwörter enthalten sind und sie irgendwas machen soll, muss die Mailadresse der Schleuder im Adressfeld (To:) um ein -request ergänzt werden, und zwar direkt im Anschluss an den Listennamen: listen_name-request@nadir.org. Andernfalls wird die Mail wie jede andere Mail an die Schleuder behandelt und an alle eingetragenen Mitglieder versendet.

Es folgt nun eine Auflistung der möglichen Schlüsselwörter, die an listen_name-request@nadir.org geschickt werden können, was sie bedeuten, sowie einige Anwendungsbeispiele:

  • x-list-subscriptions

    • Schickt als Antwort eine mail mit der Auflistung aller eingetragenen Mitglieder der Schleuder.
  • x-subscribe: user_in@example.org 0x12345678DEADBEEF12345678DEADBEEF12345678

    • Trägt ein neues Mitglied in die Schleuder ein und weist der Adresse auch direkt den Fingerprint des public keys zu. (Problem: Zeilenumbruch, mehr dazu weiter unten)
  • x-unsubscribe: user_in@example.org

    • Trägt ein eingetragenes Mitglied der Schleuder aus. -> kann nur admin
  • x-unsubscribe:

    • Damit kann mensch sich selbst austragen auch ohne admin zu sein.
  • x-set-fingerprint: 0x12345678DEADBEEF12345678DEADBEEF12345678

    • Weist einen Fingerprint der eigenen(!) Adresse zu. (Beliebter Fehler bei Admins, die damit sich selbst aus der Liste ausschließen)
  • x-set-fingerprint: user_in@example.org 0x12345678DEADBEEF12345678DEADBEEF12345678

    • Weist den fingerprint der angegebenen Adresse zu, die schon Mitglied der Liste sein muss (sinnvoll, wenn ein public key ausgetauscht werden soll)
  • x-list-keys

    • Listet alle öffentliche Schlüssel auf, die im Schlüsselbund der Schleuder enthalten sind, also auch die derjenigen, die nicht Mitglied sind
  • x-add-key:

    • Importiert einen öffentlichen Schlüssel in den Schlüsselbund einer Schleuder. Der öffentliche Schüssel kann dabei als Anhang in der Mail oder in den Textteil - direkt dem "x-add-key" folgend - der Mail kopiert sein.
  • x-delete-key: 0x12345678DEADBEEF12345678DEADBEEF12345678

    • Löscht einen öffentlichen Schüssel (definiert durch den fingerprint) aus dem Schlüsselbund.
  • x-get-key: 0x12345678DEADBEEF12345678DEADBEEF12345678

    • Schickt als Antwort den entsprechenden Schlüssel aus dem Schlüsselbund (z.B. weil wer einer person direkt eine verschlüsselte Mail schreiben will, aber den public key nicht hat)
  • x-fetch-key: 0x12345678DEADBEEF12345678DEADBEEF12345678

    • Importiert einen öffentlichen Schlüssel von einem key-server.
  • x-get-version:

    • Gibt die aktuelle Version der verwendeten Schleuder-Software an.

Weitere Schlüsselwörter

Folgende Schlüsselwörter müssen nur an listen_name@nadir.org ohne den -request Zusatz geschickt werden. Sie sind Teil einer Mail, die über die Liste verschickt wird.

  • x-attach-listkey:

    • Fügt den öffentlichen Schüssel einer Schleuder an die mail an.
  • x-resend-enc: user_in@example.org

    • Versendet die Mail nicht nur an die Listenmitglieder, sondern auch an eine externe user_in@example.org - und zwar mit der Listenaddresse als Absender_in - praktisch, wenn mal im Namen der Liste eine Mail versendet werden soll. Die Mail an user_in@example.org wird verschlüsselt - fehlt der Schlüssel, wird die Mail über die Liste verschickt, aber nicht an die externe user_in@example.org. Die Mail enthält dann die Anmerkung, dass das x-resend-enc fehlgeschlagen ist: "Error: Resending to user_in@example.org failed (0 keys found and unencrypted sending disallowed)." Im erfolgreichen Fall: "Encrypted to user_in@example.org" (123456789ABCDEF0123456789ABCDEF012345678)

Der öffentliche Schlüssel von user_in@example.org muss mit dem x-add-key-Kommando vorher dem Schlüsselbund der Liste hinzugefügt worden sein.

  • x-resend: user_in@example.org

    • Ist wie x-resend-enc mit dem Unterschied, dass die Mail an user_in@example.org auch dann versendet wird, wenn nicht verschlüsselt werden kann, weil der public key fehlt. Ist er vorhanden, wird verschlüsselt. WICHTIG: Wenn ihr sicher sein wollt, dass die Mail verschlüsselt an die externe user_in@example.org verschickt wird, immer x-resend-enc verwenden!

x-resend-enc und x-resend können beliebig häufig verwendet werden.

Hinweis: Es ist zwar erlaubt, mehrere Adressen hinter ein x-resend(-enc) zu schreiben

  • x-resend-enc: user_in1@example.org user_in2@example.org user_in3@example.org

    • um eine Mail gleich an mehrere externe Adressen zu versenden. Wenn euer EMail-Client aber die Zeile umbricht, dann wird ein ungültiges Format erzeugt und alle Adressen nach dem Zeilenumbruch ignoriert - und als normaler Text der mail versendet(!). Sicherer ist es x-resend(-enc) mehrfach zu verwenden:

x-resend-enc: user_in1@example.org
x-resend-enc: user_in2@example.org
x-resend-enc: user_in3@example.org

Bekannte Probleme

HTML

Mail wird als html-Mail (und nicht plain text) verschickt? Dadurch können sich andere Zeichen, meist sind es Leerzeichen, irgendwie vor das x des Schlüsselworts schmuggeln. Oder es wird vor die Zeile mit dem Befehl eine Leerzeile eingefügt. In beiden Fällen bricht Schleuder die Verarbeitung der Mail ab und verschickt entweder eine Fehlermeldung oder leitet die Mail schlicht weiter, mit den Befehlen im Textteil, ohne jedoch etwas zu tun. Es gibt noch einen weiteren, von Schleuder unabhängigen Grund, warum html in Mails nicht verwendet werden sollte, der sog. e-fail. Siehe dazu unseren vorherigen Newseintrag.

Zeilenumbruch

"Ich habe eine neue Listmember eingetragen, aber der Fingerprint wird nicht zugewiesen."

Für Schleuder muss der Fingerprint in einer Zeile mit der Adresse sein, da darf es keinen Zeilenumbruch geben. In Mail-Clients ist sehr oft ein Zeilenumbruch (bei 72 Zeichen) voreingestellt (was durchaus sinnvoll ist, nur in diesem Fall nicht), so dass der recht lange fingerprint in Kombination mit den Mailbefehlen zu lang ist umd umgebrochen wird. In thunderbird lässt sich das ändern: -> Einstellungen -> Reiter: Allgemein -> Konfiguration bearbeiten (es gibt eine Warnung, darauf müsst ihr euch einlassen) -> In der Suchzeile nach "mailnews.wraplength" suchen -> Doppelklick auf das Ergebnis -> neuen Wert für den automatischen Zeilenumbruch eingeben, z.B. 100. Und ja, das ist umständlich, leider gibt es keinen besseren Weg (oder wir kennen wir nicht).

Ausgesperrt

Wenn ihr euch selbst als Admin versehentlich den falschen Fingerorint zugewiesen habt oder euer oeffentlicher Schluessel abgelaufen ist, dann habt ihr euch ausgesperrt. Dann muesst ihr euch bei uns melden und wir muessen das reparieren, denn in dem Fall habt ihr keine gueltigen Adminrechte mehr.

Schleuderwebinterface zur Administration

wir diskutieren schon länger darüber, inwieweit wir das Webinterface für mehr Leute öffnen sollten. Unser aktueller Diskussionsstand dazu ist - den wir auch erst mal so beibehalten werden - dass wir weiterhin keine Web-Zugänge einrichten werden. In einigen wenigen Einzelfällen haben wir das in der Vergangenheit zwar gemacht, nicht immer sind wir damit auch glücklich.

Unser Problem mit dem Webinterface ist, dass es zwar soweit läuft und, so hoffen wir, auch keine nennenswerten Bugs oder Sicherheitslücken hat, aber die Entwicklung gerade stockt und auch noch nicht richtig fertig programmiert ist. Auch macht uns die Art der Account-Verwaltung Sorgen, die im worst case einer Angreifer_in vollen Zugang auf alle Schleuder-Listen geben kann.

Wir verstehen, dass die mail-Administration von Schleuder schon zu 2er-zeiten nervig war und jetzt mit schleuder3 eher komplizierter geworden ist. Daher hoffen wir, dass das Schleuder-Team mit der 4er-Version (an der bereits gearbeitet wird) auch ein neues, fertig programmiertes Webinterface dabei hat.

Listenkonfiguration

Befehle koennen von User_innen mit unterschiedlichen Rechten ausgefuehrt werden, wer was darf steht in der Listenkonfiguration. Die Standardeinstellungen sind, dass nur Admin subscribe, unsubscribe und delete-key ausfuehren duerfen und alle anderen Befehle alle User_innen. Wenn ihr diese Einstellungen geaendert haben wollt, dann schreibt uns Bescheid. Darueberhinaus sind unsere Standarteinstellungen beim Anlegen einer neuen Liste so sicher wie moeglich, das heisst, es duerfen nur verschluesselte, signierte Mail von eingetragenen Listenmitgliedern verschickt und angenommen werden. Auch hier gilt: wenn ihr das geaendert haben wollt, sagt einfach Bescheid.