Eigener Mailserver auf Blacklist?

Jürgen Auer

Legendäres Mitglied
Bei Heise gibt es unter Mail-Blacklist-Überwachung einen Hinweis, wie man per Script testen kann, ob der eigene Mailserver auf einer Blacklist gelandet ist.

Klar: Passiert das jemandem, dann hat er Probleme, Mails zu versenden - und bemerkt das womöglich erst Wochen später (also viel zu spät).


Die Technik ist im Prinzip ganz einfach (ich hatte früher immer gedacht, das sei weitaus komplizierter):

Soll überprüft werden, ob der eigene Server mit der IP 1.2.3.4 auf der Blacklist sbl.spamhaus.org steht (was man auch manuell per http://www.spamhaus.org/query/bl?ip=1.2.3.4 überprüfen kann, was aber offenkundig sehr aufwendig ist, wenn man das für zwanzig Seiten testen will), dann genügt es, den folgenden Betriebssystembefehl abzusetzen:

QUOTE nslookup 4.3.2.1.sbl.spamhaus.org.


also die Reverse-IP, hinten die Blacklist rangehängt.

Kommt dann 'Non-existing Domain' zurück, ist die überprüfte IP nicht auf dieser Blacklist drauf. Bei einer Listung gibt es irgendein Ergebnis mit einer lokalen Adresse 127.0.0.1.


Im Prinzip ist es dann nur eine doppelte Schleife - alle Server gegen alle Blacklisten - oder - per Sql - alle Daten in eine Tabelle packen und diese per Komma-Verknüpfung (Select * From Tabelle As A, Tabelle As B) mit sich selbst verknüpfen, so daß jede Kombination aus eigenem Server und Blacklist überprüft wird. Eine Variante mit Tabellen ist natürlich eleganter als eine Variante mit einem roh codierten Script - außerdem kann man das dann gleich als nächtlichen Sql-Job laufen lassen.


Wenn man dann am Ende eine bescheidene Mail mit


QUOTE Gesamt: 42
OK: 42
Critical: 0


bekommt, dann ist das doch ein erfreuliches Ergebnis
biggrin.gif
tongue.gif
 
Jetzt musst du Tabelle & Script nur noch als kleine Server-Daten-Applikation zum Taschengeldpreis anbieten und schon hast du bei 1/4 aller Ayom-Mitglieder einen Fuss in der Tür.
wink.gif
 
QUOTE (TSc @ Di 15.09.2009, 10:58)Jetzt musst du Tabelle & Script nur noch als kleine Server-Daten-Applikation zum Taschengeldpreis anbieten und schon hast du bei 1/4 aller Ayom-Mitglieder einen Fuss in der Tür.
wink.gif


Oh - das wäre ja tatsächlich eine Möglichkeit.

Die Nutzerverwaltung existiert ohnehin.

In dem Fall hätte man zwei Seiten: Eine für die eigenen Rechnungsdaten und eine für die eigenen Server, die einmal nächtlich überprüft werden sollen. Plus eine Registrierungs- und eine Loginseite.

Eine häufigere Überprüfung macht in der Regel keinen Sinn, da ja das DNS-System die Daten ohnehin cacht.


Sprich: Jemand registriert sich, loggt sich ein, trägt seine Stammdaten und seine Benachrichtigungsoptionen ein (Mail immer, nur im Fehlerfall).

Hat er bezahlt (über den Preis müßte man sich noch Gedanken machen), dann kriegt er nächtlich eine Mail, falls gewünscht.

Danke für den Hinweis. Weitere Ergänzungen und Wünsche bitte hier rein
tongue.gif
 
Vor ein paar Jahren hatte ich einmal 2 Tage das Problem mit einem offenen Relais, dass dann für Spamversand missbraucht wurde. Bei postgrey wird man nicht nach ip sondern nach domain für immer und ewig gelistet, weil die Autoren zu bescheiden sind die Datenbank zu pflegen. So toll sind manche blacklists auch nicht.
 
QUOTE (Jürgen Auer @ Di 15.09.2009, 11:15) Danke für den Hinweis. Weitere Ergänzungen und Wünsche bitte hier rein
tongue.gif


Bitte, Danke, immer gern.

Weitere Ergänzungen?

Man kann seine Blacklist-Server als "einsehbar" kennzeichnen, so man will, und so mit anderen Usern abgleichen um die eigenen Liste zu erweitern.


Als Bezalhung würde ich, so du einen geringen Betrag erreichen kannst, über PaidSMS nachdenken, mit denen man sich jeweils z.B. 30 Tage kaufen kann.
Dann hast du auch keine Arbeit mit der Abrechnung der Kleinstbeträgt.

 
QUOTE (TSc @ Di 15.09.2009, 11:42)Man kann seine Blacklist-Server als "einsehbar" kennzeichnen, so man will, und so mit anderen Usern abgleichen um die eigenen Liste zu erweitern.


Das läßt sich einfach realisieren. Das ist einerseits eine zusätzliche Spalte (frei ja / nein), andererseits eine Abfrage.

Allerdings könnte man auch fragen, ob nicht bsp. die Grundliste aus dem Heise-Artikel ohnehin immer abgefragt werden soll.


QUOTE (TSc @ Di 15.09.2009, 11:42)Als Bezalhung würde ich, so du einen geringen Betrag erreichen kannst, über PaidSMS nachdenken, mit denen man sich jeweils z.B. 30 Tage kaufen kann.
Dann hast du auch keine Arbeit mit der Abrechnung der Kleinstbeträgt.


Die Bezahlung ist allerdings etwas, das eher kritisch ist.

Würde ich das innerhalb von Server-Daten für einen Kunden einrichten, dann lägen die Einrichtungskosten zwischen 500 und 1000 Euro.

Bei einem Euro netto / Server und Monat kommt man auf 12 Euro / Server+Jahr bei Einmalzahlung, dafür muß eine Rechnung geschrieben werden. Praktisch braucht man 100 zahlende Kunden, um ungefähr zu Null rauszukommen. Allzuviel teurer kann man so einen Service wohl eher nicht anbieten, drunter wird das bloß noch zum Zuschußgeschäft.
 
QUOTE (Bernd Rickert @ Di 15.09.2009, 11:30)Bei postgrey wird man nicht nach ip sondern nach domain für immer und ewig gelistet, weil die Autoren zu bescheiden sind die Datenbank zu pflegen. So toll sind manche blacklists auch nicht.

Das mag ja sein, daß das so ist. Aber das hilft einem selbst nicht, wenn ein eigener Server (auf dem bsp. ein Shop läuft und der Bestätigungsmails an Kunden verschicken soll) auf so eine Blacklist kommt und dann die Mails alle im Nirvana landen.

In solchen Fällen hilft nur, möglichst schnell wieder von so einer Liste runterzukommen, dafür muß man sie allerdings zuerst einmal finden.



Inzwischen ist die Überprüfungsroutine auf 110 Blacklists angewachsen. Aktuell weiß ich noch nicht ganz, wie ich da am besten weitermache. Denn nun benötigt die Überprüfung von zwei Servern bereits eine Minute.

Macht man das also seriell, dann würden sechzig Nutzer mit je zwei IP-Adressen schon fast eine Stunde brauchen. Immerhin führt das zu einer Prozessorauslastung von 2 - 3 %. Prinzipiell würden also 120 * 24 (Stunden) = 2880 Server bzw. 1440 Nutzer mit je zwei Adressen zu einem ständig laufenden Script führen. Bei einer Abrechnung pro Server wären das 2880 Euro / Monat an Einnahmen.

Eigentlich bräuchte man da eine andere Logik, so daß die Überprüfungen quasi zufallsverteilt über den ganzen Tag (und nicht ausschließlich nachts ab 02:30 in Form eines einzigen Scripts) ablaufen. Beim MS-SqlServer ginge das über Jobs - damit würde mir aber der ganze Server mit solchen Jobs überflutet werden. Eine vergleichbare Metajoblogik, die einen einzelnen Job generiert, gibt es bei der Newsletter-Logik. Im Prinzip müßte man so etwas entwickeln, damit steigt allerdings der interne Entwicklungsaufwand ziemlich stark an.

Andererseits könnte man bei nun 110 Blacklists auch den Preis erhöhen, bsp. auf 2 Euro / Server und Monat. Aktuell weiß ich noch nicht genau, ob - und falls ja, in welcher Form - das weitergehen wird. Das hier war 'lautes Denken'.


PS: Man sieht an dieser Sache schön, wie eine zunächst einfache und leicht realisierbare Idee zu Folgeüberlegungen und damit zu ganz neuen Problemen (und zum Risiko von richtig dicken Skalierungsproblemen) führt. Und das, obwohl die ganze Infrastruktur der Nutzerverwaltung vollständig existiert und auch das Einrichten von Tabellen kein Problem ist. Die Kosten dafür sind mit der obigen Kalkulation längst abgedeckt.

PPS: Normalerweise sind Anregungen für funktionale Erweiterungen immer interessant, weil das ein Kunde vorschlägt und andere Kunden dasselbe ebenfalls brauchen können. Bloß: Diese Erweiterung braucht kein Kunde. Das müßte sich tatsächlich aus den so zusätzlich gewonnenen Nutzern einer neuen Datenbank refinanzieren.
 
QUOTE (Bernd Rickert @ Di 15.09.2009, 12:30) [...] Bei postgrey wird man nicht nach ip sondern nach domain für immer und ewig gelistet, weil die Autoren zu bescheiden sind die Datenbank zu pflegen. So toll sind manche blacklists auch nicht.

Hallo,

hab ich was verpasst oder nicht mitbekommen? Ich dachte immer Postgrey wäre nur ein Daemon um Greylisting zu betreiben, und keine Blacklist.


Gruß,
Sascha
 
So, eine erste, noch eher einfache Variante ist nun online:

http://online-tools.server-daten.de/


Allerdings hat sich bei einigen Tests gezeigt, daß es bei selbst definierten Blacklist-Servern zu Problemen bzw. zu false positive - Meldungen kommen kann. Es gibt deshalb aktuell eine interne Liste von nun 171 Blacklists, die überprüft werden. Man kann keine eigenen Blacklists hinzufügen.

Derzeit wird der Job lediglich einmal nachts durchlaufen, alle Einträge werden der Reihe nach abgearbeitet. Falls das Angebot auf ein sehr großes Interesse stoßen sollte, wird das eventuell später auf eine Joblogik umgestellt: Nutzer speichert seine Daten, ab da wird alle 24 Stunden einmal überprüft, so daß sich die Prüfungen über 24 Stunden verteilen.


Derzeit kann man sich registrieren und eigene Server hinterlegen. Ob der Job bereits diese Nacht durchläuft, weiß ich noch nicht so genau. Ein paar andere Dinge warten noch ...
tongue.gif



Aktuell ist mir noch unklar: Sollen die positiven Prüfergebnisse nur per Mail zugesandt werden oder sollen diese auch gespeichert und online verfügbar sein?


Update Freitag, 16:55: Ab der nächsten Nacht ist das aktiv.
 
Zurück
Oben