Spam über eigenen Server

Morgen Leute!

Ich bin schier am verzweifeln. Habe das gleiche Problem. Bekomme immer wieder Bounce-Nachrichten von Mails die ich angeblich verschickt haben sollte.

Online Open Relay-Test habe ich gemacht: Alles zu.
Dann habe ich den wrapper von huschi installiert: Von meinen Scripten mit mail-Funktion geht das nicht aus. Es gibt allerdings noch Scripte die über SMTP senden. Aber ich glaube, dass es auch nicht daran liegt.
Und zuletzt habe ich noch Greylisting installiert. Aber bis jetzt gibt es keinen Eintrag weder in /tmp/greylist_dbg.txt noch in der Datenbank. Wie kann man testen ob es funktoniert?

Anbei noch ein Mail mit dazugehörigem Log.

Bitte helft mir, ich weiß nicht mehr weiter!

lg lixx


FC4, Plesk 8.2.0 bei united-hoster

/usr/local/psa/var/log/maillog:
Code:
Aug 21 07:20:31 host qmail-local-handlers[22238]: Handlers Filter before-local for qmail started ...
Aug 21 07:20:31 host qmail-local-handlers[22238]: from=
Aug 21 07:20:31 host qmail-local-handlers[22238]: to=webmaster@mydomain.com
Aug 21 07:20:31 host spamd[4090]: got connection over /tmp/spamd_full.sock 
Aug 21 07:20:31 host spamd[4090]: Using default config for webmaster@mydomain.com: /var/qmail/mailnames/mydomain.com/webmaster/.spamassassin/user_prefs 
Aug 21 07:20:31 host spamd[4090]: processing message <633232451881720373@mx249g.mysite4now.com> for webmaster@mydomain.com:110. 
Aug 21 07:20:32 host spamd[4090]: clean message (-2.6/7.0) for webmaster@mydomain.com:110 in 0.5 seconds, 1990 bytes. 
Aug 21 07:20:32 host spamd[4090]: result: . -2 - BAYES_00 scantime=0.5,size=1990,mid=<633232451881720373@mx249g.mysite4now.com>,bayes=0,autolearn=ham 
Aug 21 07:20:32 host qmail-local-handlers[22243]: Handlers Filter before-local for qmail started ...
Aug 21 07:20:32 host qmail-local-handlers[22243]: from=
Aug 21 07:20:32 host qmail-local-handlers[22243]: to=webmaster@mydomain.com
Aug 21 07:20:32 host qmail: 1187673632.420769 delivery 324: success: did_1+0+2/did_0+0+1/
Aug 21 07:20:32 host qmail: 1187673632.420827 status: local 0/10 remote 0/200
Aug 21 07:20:32 host qmail: 1187673632.421087 end msg 61440346

Das Mail dazu:
Code:
Return-Path: <>
Delivered-To: 30-webmaster@mydomain.com
Received: (qmail 22237 invoked by uid 110); 21 Aug 2007 07:20:31 +0200
Delivered-To: 30-akstcmydomainmnsdgs@mydomain.com
Received: (qmail 22232 invoked from network); 21 Aug 2007 07:20:31 +0200
Received: from mx249g.mysite4now.com (209.132.244.249)
  by host.com with SMTP; 21 Aug 2007 07:20:31 +0200
Message-ID: <633232451881720373@mx249g.mysite4now.com>
From: "System Administrator"
To: akstcmydomainmnsdgs@mydomain.com
Date: Mon, 20 Aug 2007 22:19:48 -0700
Subject: Delivery Failure
X-Spam-Checker-Version: SpamAssassin 3.0.6 (2005-12-07) on 
	host.com
X-Spam-Level: 
X-Spam-Status: No, score=-2.6 required=7.0 tests=BAYES_00 autolearn=ham 
	version=3.0.6


Could not deliver message to the following recipient(s):

Failed Recipient: david@multi-south.com
Reason: Remote host said: 554 5.6.0 Message rejected by content filter. Possible Spam

   -- The header and top 20 lines of the message follows --

Received: from 157024.viamedia.info [217.197.157.24] by mx249g.mysite4now.com with SMTP;
   Mon, 20 Aug 2007 22:19:07 -0700
Received: from [217.197.157.24] by mail.mydomain.com; Tue, 21 Aug 2007 05:18:46 -0100
Message-ID: <01c7e3b2$c009cca0$189dc5d9@akstcmydomainmnsdgs>
From: "Ola Metz" <akstcmydomainmnsdgs@mydomain.com>
To: <laurie@mirabellamemphis.com>
Subject: For: laurie
Date: Tue, 21 Aug 2007 05:18:46 -0100
MIME-Version: 1.0
Content-Type: multipart/related;
	type="multipart/alternative";
	boundary="----=_NextPart_000_0006_01C7E3C3.83929CA0"
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2900.2180
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180

This is a multi-part message in MIME format.

------=_NextPart_000_0006_01C7E3C3.83929CA0
Content-Type: multipart/alternative;
	boundary="----=_NextPart_001_0007_01C7E3C3.83929CA0"

------=_NextPart_001_0007_01C7E3C3.83929CA0
Content-Type: text/plain;
	charset="windows-1250"
Content-Transfer-Encoding: quoted-printable



------=_NextPart_001_0007_01C7E3C3.83929CA0
Content-Type: text/html;
	charset="windows-1250"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
 
Hi!

Evt. hilft dir es noch ab und zu die Mails aus der Que herauszulöschen. Ich habe das so gemacht, da bei mir speziell an diese yahoo-Domain verschickt worden war:

find /var/qmail/queue/ -exec grep -l "yahoo.com.tw" '{}' ';' -exec rm '{}' ';'

Zumindest haben so die Kunden Ihre Mails wieder zügig bekommen ;)

gm
 
Hallo mausi!

Evt. hilft dir es noch ab und zu die Mails aus der Que herauszulöschen. Ich habe das so gemacht, da bei mir speziell an diese yahoo-Domain verschickt worden war:

Die Warteschlange habe ich abgeschalten in dem ich eine Catch-All-Adresse eingerichtet habe. Es ist auch nur eine Domain damit belastet, da die anderen von vornherein gut geschützt und noch eher neu sind.

Da aber die Datei /tmp/greylist_dbg.txt noch immer leer ist, möchte ich gerne das Greylisting zum laufen bringen, falls dem noch nicht der Fall ist. Nur weiß ich leider nicht, ob es läuft.
 
So. Jetzt habe ich auch das Plesk Greylisting Config Panel installiert (Danke haggybear!). Aber wenn in der /tmp/greylist_dbg.txt nix drin steht, hilft mir das wohl auch nicht weiter :(
 
Mal so in den Raum geworfen:

- B. Spammer sendet eine Mail über den Mailserver A, weil da ein schlechter Admin am Werk ist ;)
- B. Spammer verwendet als Absender Adresse eine auf deinem Server B existierende
- Mailserver A versucht die B. Spammer Mail an den Empfänger zuzustellen, mit dem Ergebnis, das das vom Ziel Mailserver C abgeblockt wird
- Mailserver A generiert basierend auf der Ablehnung von Mailserver C eine Bounce Mail, die natürlich an die verwendete Absender Adresse auf deinem Server B geschickt wird

Ich glaube nicht, das man das unterbinden kann.

Habe aber jetzt nicht genau in die Mail geschaut, ob genanntes Vorgehen nachvollziehbar ist. Nur eine Idee, warum die Bounce Mail so oder so bei dir ankommen könnte, egal was du machst.

Sollte das so nicht funktionieren können, dann bitte ne kurze Erklärung von einem Mailprofi. Mir fällt momentan kein Argument gegen das Funktionieren des oben geschilderten Ablaufes ein. Ich selbst bin aber auch kein Mailprofi.
 
Last edited by a moderator:
Nur weiß ich leider nicht, ob es läuft.

Code:
$ [COLOR="RoyalBlue"]telnet [I]mx.meinserver.de[/I] smtp[/COLOR]
Trying x.x.x.x...
Connected to mx.meinserver.de (x.x.x.x).
Escape character is '^]'.
220 mx.meinserver.de ESMTP Postfix
[COLOR="RoyalBlue"]HELO testrechner.local[/COLOR]
250 mx.meinserver.de
[COLOR="RoyalBlue"]MAIL FROM: <[I]deine@mail.addresse[/I]>[/COLOR]
250 2.1.0 Ok
[COLOR="RoyalBlue"]RCPT TO: <[I]eine.der@zutestenden.domains[/I]>[/COLOR]
450 4.7.1 <eine.der@zutestenden.domains>: Recipient address rejected: Server is busy, please try again!
[COLOR="RoyalBlue"]QUIT[/COLOR]
221 2.0.0 Bye
Connection closed by foreign host.
Blau gibst Du ein, kursive Daten entsprechend anpassen. Wenn statt der 450er Fehlermeldung gleich die Meldung "250 2.1.5 Ok" kommt, läuft das Greylisting nicht!

(Falls die 450-Meldung kommt, kannst Du es nach der eingestellten Zeit nochmal versuchen, diesmal sollte dann die 250er Meldung kommen, worauf Du mit "DATA" antworten kannst und dann Deine Mail eintippen kannst; abgeschlossen wird die Mail mit einem einzelnen Punkt in einer Zeile)

LinuxAdmin

PS: Den Test solltest Du nicht auf dem Server ausführen, sondern auf einem andren Rechner.
 
Ich denke, dass du dabei ganz richtig liegst. Habe nochmals die Logs durchgeforstet und musste feststellen, dass die Absender-MID (01c7e3b2$c009cca0$189dc5d9) nicht in meinen Logs auftaucht. Nur die MID des Bounce-Absenders (633232451881720373).

Ist dann alles i.O. ?
 
Danke LinuxAdmin, für deine tolle Anleitung. Nur muss ich noch etwas nachhaken.

Der Server (mx.meinserver.de) von dir, ist das so wie bei meinem Versuch (mx.mydomain.com) der Server auf dem Greylisting installiert ist? Oder soll das ein anderer sein? So wie ich es verstanden habe, müsste es so stimmen. Jemand verbindet sich mit meinem Rechner und versucht dann mit meiner E-Mail (From) zu einer anderen zu spammen.

Ich bekomme da eine 553-Meldung.

Code:
telnet mx.mydomain.com smtp
Trying x.x.x.x...
Connected to mx.mydomain.com.
Escape character is '^]'.
220 mydomain.com ESMTP
HELO testrechner.local
250 mydomain.com
MAIL FROM: office@mydomain.com
250 ok
RCPT TO: eineEmailVon@gmx.net
553 sorry, that domain isn't in my list of allowed rcpthosts (#5.7.1)
QUIT

Wenn ich nun die E-Mailadressen tausche:

Code:
telnet mx.mydomain.com smtp
Trying x.x.x.x...
Connected to mx.mydomain.com.
Escape character is '^]'.
220 mydomain.com ESMTP
HELO testrechner.local
250 mydomain.com
MAIL FROM: eineEmailVon@gmx.net
250 ok
RCPT TO: office@mydomain.com
250 ok
QUIT

Bekomme ich eine 250.
 
Gut, der erste Test darf nicht funktionieren, sonst hättest Du ja ein open-relay. (schließlich nimmst Du ja keine Mails für GMX an).

Was den zweiten Test angeht, kann ich Dir nicht genau sagen, ob es so richtig ist, da ich mich mit qmail nicht genau auskenne -- es kann sein, dass das Greylisting bei qmail erst an einer späteren Stelle zuschlägt. Daher versuch einmal die Mail vollständig zu schicken:

Code:
....
[COLOR="DeepSkyBlue"]RCPT TO: <office@mydomain.com>[/COLOR]
250 ok
[COLOR="DeepSkyBlue"]DATA[/COLOR]
354 End data with <CR><LF>.<CR><LF>
[COLOR="DeepSkyBlue"]From: eineEmailVon@gmx.net
To: office@mydomain.com
Subject: Tut das jetzt ?

blah, blah
.[/COLOR]
250 2.0.0 Ok: queued as 22FDE19A8192
[COLOR="DeepSkyBlue"]QUIT[/COLOR]
(Die Leerzeile nach Subject: ist wichtig... um RFC-konform zu sein, sollten außerdem die Adressen beim MAIL FROM: und RCPT TO: in spitzen Klammern stehen -- manche Mailer sind da ziemlich penibel ;) )

Wenn das auch nach dem "." noch angenommen wird, läuft Dein Greylisting definitiv nicht. Die Mail sollte beim ersten Versuch abgelehnt werden und erst beim zweiten Versuch durchkommen.

LinuxAdmin
 
Noch ein Nachtrag:

Jemand verbindet sich mit meinem Rechner und versucht dann mit meiner E-Mail (From) zu einer anderen zu spammen.

Normalerweise verbinden sich die Spammer nicht mit Deinem Rechner, um dann mit Deinen Mailadressen zu spammen -- dazu nehmen sie irgendeinen Rechner, der das Relaying erlaubt. Und falls Dein Server falsch konfiguriert ist und Relaying erlauben sollte, machen die wenigsten Spammer die Mühe, auch noch Deine Adressen zu verwenden...

Ansonsten bietet das Greylisting, um das es ja die ganze Zeit geht, keinen Schutz gegen das Versenden von SPAM -- es schützt nur vor dem Empfangen, da die meisten SPAM-Bots auf Durchsatz optimiert sind, und keinen weiten Versuch starten, wenn die Mail mit einem temporären Fehler (450) abgelehnt wird, während RFC-konforme Mailer das tun. Leider rüsten die auch die Spammer nach und halten sich mehr und mehr an die RFCs, so dass das Greylisting leider immer unwirksamer wird. Bisher funktioniert es aber noch zufriedenstellend ;)

Falls ein Spammer Deine Mailadressen missbraucht und daher massenhaft Bounces zurückkommen, kann man leider nichts dagegen tun -- nach ein bis zwei Wochen hört die Mailflut normalerweise wieder auf (und dann ist zur Abwechselung jemand anderes der Dumme)...

LinuxAdmin
 
Wenn das auch nach dem "." noch angenommen wird, läuft Dein Greylisting definitiv nicht.

Code:
250 ok 1187700250 qp 22346

Läuft durch wie nix. Was kann ich jetzt machen? Die installation erfolgte auch ohne Fehler. Hier meine Doc über die einzelnen Schritte. Vll. fehlt da noch was.

Code:
==> Greylisting support to qmail on Plesk 8
--> http://clausvb.de/doku_greylisting.htm

# cd /usr/local/src
# wget http://meshier.com/wp-content/uploads/2006/09/qmail-105-greylist-psa8.tar.gz
# tar -xf qmail-105-greylist-psa8.tar.gz
# cd qmail-1.05

--> phpMyAdmin

CREATE DATABASE qmail;
GRANT ALL ON qmail.* TO 'greylisting'@'localhost' IDENTIFIED BY 'gH7+zH4+T4D';
FLUSH PRIVILEGES;

USE qmail;

CREATE TABLE relaytofrom (
id bigint(20) NOT NULL auto_increment,
relay_ip varchar(16) default NULL,
mail_from varchar(255) default NULL,
rcpt_to varchar(255) default NULL,
block_expires datetime NOT NULL default '0000-00-00 00:00:00',
record_expires datetime NOT NULL default '0000-00-00 00:00:00',
blocked_count bigint(20) NOT NULL default '0',
passed_count bigint(20) NOT NULL default '0',
aborted_count bigint(20) NOT NULL default '0',
origin_type enum('MANUAL','AUTO') NOT NULL default 'MANUAL',
create_time datetime NOT NULL default '0000-00-00 00:00:00',
last_update timestamp(14) NOT NULL,
PRIMARY KEY  (id),
KEY relay_ip (relay_ip),
KEY mail_from (mail_from(20)),
KEY rcpt_to (rcpt_to(20))
) TYPE=MyISAM;

# make
# vi local_scan.c
# /etc/rc.d/init.d/qmail stop
# cp qmail-envelope-scanner /var/qmail/bin/.
# cp qmail-smtpd /var/qmail/bin/.
# chown root.qmail /var/qmail/bin/qmail-envelope-scanner
# chown root.qmail /var/qmail/bin/qmail-smtpd
# /etc/rc.d/init.d/qmail start

--> neu
# vi /etc/cron.daily/qmail-greylist-cleanup.pl
# chmod +x /etc/cron.daily/qmail-greylist-cleanup.pl
 
Falls ein Spammer Deine Mailadressen missbraucht und daher massenhaft Bounces zurückkommen, kann man leider nichts dagegen tun -- nach ein bis zwei Wochen hört die Mailflut normalerweise wieder auf (und dann ist zur Abwechselung jemand anderes der Dumme)...

Kommt man aber so nicht auf eine Blacklist?
 
Nein, das passiert anhand von IP-Adressen. Sonst könnte aus dem Weißen Haus wahrscheinlich keiner mehr eine Email auch nur irgendwo hin schicken :)
 
Nein, das passiert anhand von IP-Adressen. Sonst könnte aus dem Weißen Haus wahrscheinlich keiner mehr eine Email auch nur irgendwo hin schicken :)

Wäre vielleicht gar nicht mal so schlecht :p
(konnt' ich mir jetzt nicht verkneifen :D
 
Hi!

Da der Spamversand über den Jahreswechsel wieder stattfand, haben wir heute noch einmal eingehend alles gechecked. So wie es aussieht, wurde ein test-Mailaccount eines Kunden (also test@domain.tld) missbraucht. Folgende Einträge waren in der messages zu finden (zig tausende):

... smtp_auth: smtp_auth: SMTP user test : /var/qmail/mailnames/domain.tld/test logged in from unknown@220-137-252-204.dynamic.hinet.net [220.137.252.204]

bwz. auch von broad.st.gd.dynamic.163data.com.cn

Der Kunde selber hat den Account nie benutzt bzw. abgerufen.

Mal sehen ob es noch einmal auftritt. Alle PHP-Scripte und Logfiles der fast 100 Domains wurden überprüft ... welch ein Start ins neue Jahr :|

gm
 
Back
Top