MME – Moodle Mail Essentials

Aus Mood­le­sys­te­men wer­den vie­le Mails verschickt:

  • Mails bei neu­en Forenbeiträgen
  • Mails nach Benutzerregistrierungen
  • Mails für den Admin nach Backupläufen
  • usw.

Je nach Grö­ße des Mood­le­sys­tems kön­nen das sehr vie­le Mails sein – z.B. wenn der Admin im Nach­rich­ten­fo­rum eine neue Nach­richt schreibt und alle Nut­zer des Sys­tems die­ses Forum abon­niert haben. Oft macht man dabei am Anfang die Erfah­rung, dass ein Teil die­ser Mails nicht ankommt. Dar­an ist sehr oft mit­nich­ten Mood­le schuld. Eini­ge Anbie­ter schie­ben zusätz­lich die Schuld auf Free­mail­diens­te, bei denen die Mails „aus uner­find­li­chen Grün­den“ im Spam­ord­ner lan­den wür­den. Die Grün­de sind in den sel­tens­ten Fäl­len uner­find­lich, son­dern las­sen sich durch eine Ana­ly­se der betref­fen­den Mail sehr leicht ermit­teln. Es gibt also Aspek­te des Mail­pro­blems, die der Mood­lead­min lösen kann und es gibt Aspek­te, die nur der Pro­vi­der zu rich­ten vermag.

Wei­ter­le­sen

KK-Antrag (inbound)

Unse­re Schu­le besitzt wie vie­le Schu­len eine eige­ne Domain. Neu­er­dings besit­zen wir auch einen eige­nen Ser­ver (Wer den wohl admi­nis­triert?). Da lag ja nichts näher, das Geld für das bis­he­ri­ge Web­space­pa­ket zu spa­ren und die Domain auf den Ser­ver umzuziehen.

Mein Anbie­ter stellt zusätz­lich zu dezi­dier­ten Ser­vern auch noch ein Domain­ro­bot bereit. der die Regis­trie­rung, das Update und die Über­nah­me von DE- und CNO­BI-Domains erlaubt. Die Domain­prei­se gehö­ren im DE-Bereich mit zu den nied­rigs­ten am Markt, eige­ne Name­ser­ver besit­ze ich auch, also flugs die Domain vom alten Pro­vi­der über­nom­men. Des­sen und mei­nen Name­ser­ver hat­ten wir bereits vor­her mit allen not­wen­di­gen Zonen­ein­trä­gen ver­sorgt, die Datei­en der Home­page bereits auf den neu­en Ser­ver überspielt.

Der alte Pro­vi­der war 1und1. Bis­her war die Schul­do­main auf eine Pri­vat­per­son ein­ge­tra­gen, der ich die Schlüs­sel­wor­te für das Kün­di­gungs­schrei­ben auf die Tas­ta­tur gelegt habe. Frei­ga­be der Domain zum KK stand dar­auf. Da ich ja ein ordent­li­cher Mensch bin, habe ich mir den anste­hen­den Pro­vi­der- und not­wen­di­gen Inha­ber­wech­sel – das muss­te ja der Schul­lei­ter sein – schrift­lich bestä­ti­gen las­sen – so sehen es die Denic-Richt­li­ni­en ja auch vor.

Die betref­fen­de Pri­vat­per­son hat­te das betrof­fe­nen Paket frsit­ge­recht und 1un­d1-genehm gekün­digt und die Bestä­ti­gung erhal­ten, dass die Domain bis zum 17. März zum KK frei­ge­ge­ben ist. Mich mach­te die For­mu­lie­rung „bis zum“ stutzig.

Wei­ter­le­sen

lighttpd und PositiveSSL-Certs

Ich habe gera­de die lite-Ver­si­on der auf http://www.psw.net feil­ge­bo­te­nen SSL-Certs aus­pro­biert. Es gibt kei­ne direk­te Anlei­tung für die Instal­la­ti­on des Zer­ti­fi­ka­tes inner­halb von lighttpd (ligh­ty) und die in der Bestä­ti­gungs­mail ange­ge­be­nen Links sind mei­ner Erfah­rung nach bes­ten­falls irreführend.

Der Bestell­pro­zess

Zunächst ist ein Ser­ver­key für die Domain www.domain.tld mit Open­S­SL zu erstel­len. Im wah­ren Leben ist natür­lich der Aus­druck „www_domain_tld“ durch eine eige­ne, rea­le Domain zu erset­zen. Das geht auf der Kom­man­do­zei­le z.B. durch Ein­ga­be von:

open­s­sl req ‑new ‑nodes ‑key­out www_domain_tld.key ‑out www_domain_tld.csr

Dabei wer­den eini­ge Infor­ma­tio­nen abge­fragt, die man mit sinn­vol­len Daten füt­tern soll­te. Immens wich­tig ist die Eingabe

Com­mon Name (eg, YOUR name) []: www.domain.tld

Nur dann schützt spä­ter das aus­ge­stell­te Zer­ti­fi­kat die Domains http://domain.tld und http://www.domain.tld (das ist bei der ver­wen­de­ten CA Posi­ti­ve­SSL auto­ma­tisch so).

Für den Bestell­pro­zess wird der Inhalt der Datei www_domain_tld.csr benö­tigt. Für die Instal­la­ti­on des Zer­ti­fi­ka­tes brau­chen wir spä­ter noch die Datei www_domain_tld.key.

Wei­ter­le­sen

Running on lenny…

Pein­lich genug: Durch sources.list-Gemurkse hat­te mein gutes Ser­ver­lein für den Pri­vat­ge­brauch irgend­wie die ver­wund­ba­ren SSH-Keys aus open­s­sl nicht kuriert – darf man eigent­lich gar nicht erzäh­len… Das ist dan­kens­wer­ter Wei­se dadurch auf­ge­fal­len, dass ich einen SSL-Key durch eine CA unter­schrei­ben las­sen woll­te. Tja, und http://www.psw.net ver­wei­ger­te dar­auf doch gleich die Annah­me mei­nes Schlüs­sels  (vul­nerable key used), sehr emp­feh­lens­wer­te Fir­ma. Und da dach­te ich mir: Wenn schon, denn schon.

Ergeb­nis:

riecken.de läuft seit eben auf der neu­en, sta­bi­len Debian­ver­si­on Len­ny. Ich hat­te noch kurz über­legt, vor­her MyS­QL zu repli­zie­ren und den Stand­by­mail­ser­ver auf Funk­ti­on zu über­prü­fen – aber: no risk, no fun. Ein Back­up-MX wäre viel­leicht ein­mal ein Projekt.

Eine Ant­wort auf pings nach der „reboot“-Eingabe hat doch etwas beru­higt, obwohl das hier kein Pro­duk­tiv­sys­tem ist. Das Back­up lag hier zu Hau­se auf der Plat­te und wäre auch Dank Kabel­deutsch­land recht schnell wie­der online gewe­sen – aber so ist es doch viel bes­ser. Ich mag Debian.

End­lich xcache und diver­se ande­re, neue Soft­ware­ver­sio­nen… Neben­bei fällt einem dann auch noch auf, dass poli­cy-weight irgend­wann ama­vis-Expe­ri­men­ten geop­fert wur­de. Der tut jetzt auch wie­der sei­nen Dienst – Post­fix hat aber schon so mit den ein­ge­bau­ten Fil­tern ziem­lich viel Mist weggefangen.

Verschlüsselung in Webapplikationen (MD5)

Pass­wör­ter gehö­ren nicht in die Hän­de von Drit­ten, auch nicht in die von Admi­nis­tra­to­ren. Daher wur­den für die Spei­che­rung von Pass­wör­tern soge­nann­te Fall­tür­me­cha­nis­men (trap­door mecha­nisms) entwickelt:

Es ist zwar mög­lich, ein Pass­wort zu ver­schlüs­seln, nicht jedoch es wie­der zu entschlüsseln.

Der Ver­schlüs­se­lungs­al­go­rith­mus funk­tio­niert also genau wie eine Fall­tür nur in eine Rich­tung. Das mag auf den ers­ten Blick sinn­los erschei­nen, ist aber eigent­lich sehr pfif­fig. Neh­men wir als Bei­spiel den weit ver­brei­te­ten MD5-Algo­rith­mus. Mit die­sem sichert fast jede Web­an­wen­dung in PHP ihre Pass­wör­ter ab. Dabei wird aus

123456=> MD5-Ver­schlüs­se­ler => e10adc3949ba59abbe56e057f20f883e

Die­se lan­ge Zei­chen­ket­te sieht der Admin. Er weiß aber des­we­gen das Pass­wort im Klar­text noch nicht, da der Weg

e10adc3949ba59abbe56e057f20f883e => MD5-Ent­schlüs­se­ler (Gibt es nicht) => Passwort

prin­zip­be­dingt ver­sperrt ist. Die dabei ent­ste­hen­de, lan­ge Zei­chen­ket­te wird „Hash“ genannt.

Wenn man sich nun an einer Web­an­wen­dung (Mood­le, Joom­la, egroup­ware …) anmel­det, macht die Web­an­wen­dung folgendes: 

Benut­zer gibt Pass­wort im Klar­text ein => MD5-Ver­schlüss­ler => Hash1

Die­ser Hash1 wird nun mit dem Hash – nen­nen wir ihn Hash2 – ver­gli­chen, der in der Daten­bank für den User gespei­chert ist (er könn­te etwa bei der Regis­trie­rung erzeugt wor­den sein).

Stim­men bei­den Hash­es über­ein, hat der User das kor­rek­te Pass­wort ein­ge­ge­ben, weil der Ver­schlüs­se­lungs­me­cha­nis­mus ja immer gleich ist. Stim­men die Hash­es nicht über­ein, muss der Benut­zer ein fal­sches Pass­wort ein­ge­ge­ben haben.

Soweit so gut. Das ist auch die Erklä­rung dafür, dass einen – so man sein Pass­wort ver­ges­sen hat – stets ein neu­es Pass­wort zuge­wie­sen wird, denn der Admin kann das alte Pass­wort ja nicht wis­sen, son­dern ledig­lich ein neu­es setzen.

Eigent­lich hört sich das Gan­ze recht sicher an – ist es bloß nicht, denn es gibt Angrif­fe gegen die­ses Ver­fah­ren, die aber alle­samt vor­aus­set­zen, dass der Angrei­fer an den Hash kommt.

Wei­ter­le­sen

1 18 19 20 21 22 24