Subnetze und IP Adressen extrahieren aus SPF Records (z.B. Office365 oder Google Apps for Business)

Wenn man bei Office365 oder Google Apps for Business einen eigenen Mailserver (Postfix) vorschalten möchte beim versenden/empfangen muss man die Mailserver von Microsoft/Google Whitelisten in den mynetworks bei Postfix. Das Script löst alle SPF Record includes auf und generiert CIDR Maps die sich in Postfix einbinden lassen. Beispiel: max@dev1:~$ python get_subnets_of_spf_record_mynetwoks.py Working on job office365 … Weiterlesen

Postfix Mails aus der Queue von bestimmten Absendern löschen

Mit diesen Kommandos lassen sich aus der Postfix Queue Mails löschen die dort wegen Zustellungsproblemen liegengeblieben sind. Besonders wenn man einen Kunden drauf hat mit Malware Infektion und man die Reste aus der Queue beseitigen möchte. Für die komplette Domain: postqueue -p | tail -n +2 | awk ‚BEGIN { RS = „“ } /@example\.com/ … Weiterlesen

Postfix: Mail-Relay mit SMTP-Auth via Submission/TLS für ausgehende Mails

Ein Server soll als Relayhost (oder in der Windowswelt auch Smarthost gennant) dienen. Wer keine feste IP Adresse mit passenden DNS Reverse Eintrag hat wird schlechte Chancen haben das ein richtig konfigurierter Mailserver die Mails annehmen wird. Die Lösung ist die Mails an einen anderen Relayhost oder Mailserver zu schicken und dieser stellt dann die … Weiterlesen

Python Version von getadsmtp.pl

Übersetzung des AD Mailadressen Sammelskripts von Perl nach Python. #!/usr/bin/python # getadsmtp.py # Version 1.0 # The script is an translation from the orginal perl script getadsmtp.pl # This script will pull all users‘ SMTP addresses from your Active Directory # (including primary and secondary email addresses) and list them in the # format „user@example.com … Weiterlesen

Postfix als Frontend für einen Microsoft Exchange Server

Für einen Kunden habe ich einen Postfix eingerichtet als Frontend Server für seine Exchange Infrastruktur. Die Mailadressen werden automatisch aus dem Active Directory ausgelesen und in einem Hash-File gespeichert. Vorteil ist das der Postfix so nur gültige Mailaliases zulässt. Der Frontend macht auch noch weitere Überprüfungen. (postgrey, policy-weight, etc.) Folgendes Script wird für das Auslesen … Weiterlesen

MySQL Multi Policy Server for Postfix

MySQL Multi Policy Server befindet sich noch im BETA Status bzw. Entwicklungsphase. Download komplett unter → Downloads Status Postgrey funktioniert soweit schon. (Valid ist noch nicht fertig.) Autoresponder funktioniert. Folgende Funktionen soll MMPS dann können wenn es fertig ist Postgrey per User / Domain aktivieren / deaktivieren. Delay per User / Domain Valid per User … Weiterlesen

Weniger Spam & Phishing durch Sanesecurity & MSRBL-SPAM für ClamAV

Trotz Amavis & Spamassassin und sehr restriktiver Regeln im Postfix kommen immernoch viele Phishing und Bilder/PDF Spams durch. Ich habe nach einer bequemen Lösung gesucht und bin auf Sanesecurity und MSRBL-SPAM gestoßen. Beide bieten Signaturenfiles für ClamAV an die Spams & Phishings erkennen können. Auf der Webseite von Sanesecurity werden mehrere Scripts angeboten die die … Weiterlesen

Standard SMTP Dialog

Genauere Definition und Erklärung von SMTP bei Wikipedia RFCs RFC 821 (1982) RFC 2821 (2001) Default Ports 25 TCP 587 TCP (Submission Port) Status-Codes Das SMTP-Protokoll hält zum Status der Kommunikation zwischen Mailserver und Mailclient folgende Error-Codes bereit: 1XX: Mailserver hat die Anforderung akzeptiert, ist aber selbst noch nicht tätig geworden. Eine Bestätigungsmeldung ist erforderlich. … Weiterlesen

ClamAV mit Sanesecurity erweitern

Benötigte Tools installieren sudo apt-get install rsync wget gunzip Verzeichnis anlegen mkdir -p /root/sanesecurity Script erstellen nano /root/sanesecurity/get_sane Script: cd /root/sanesecurity wget http://www.sanesecurity.co.uk/clamav/scamsigs/scam.ndb.gz wget http://www.sanesecurity.co.uk/clamav/phishsigs/phish.ndb.gz rsync rsync://rsync.mirror.msrbl.com/msrbl/MSRBL-Images.hdb /root/sanesecurity/MSRBL-Images.hdb rsync rsync://rsync.mirror.msrbl.com/msrbl/MSRBL-SPAM.ndb /root/sanesecurity/MSRBL-SPAM.ndb gunzip -f scam.ndb.gz gunzip -f phish.ndb.gz cp -f scam.ndb /var/lib/clamav cp -f phish.ndb /var/lib/clamav cp -f MSRBL-Images.hdb /var/lib/clamav cp -f MSRBL-SPAM.ndb /var/lib/clamav /etc/init.d/clamav-daemon reload-database … Weiterlesen

Spamtrap / Blackhole Adresse unter Postfix einrichten

Eine E-Mail Adresse einrichten die Richtung “/dev/null“ geht. main.cf check_recipient_access hash:/etc/postfix/spam_trap sollte hinter reject_unauth_destination kommen. Die Konfig für smtpd_recipient_restrictions ist nur exemplarisch. smtpd_recipient_restrictions = reject_non_fqdn_recipient reject_non_fqdn_sender reject_unknown_sender_domain reject_unknown_recipient_domain permit_mynetworks permit_sasl_authenticated reject_unauth_destination check_recipient_access hash:/etc/postfix/spam_trap reject_multi_recipient_bounce /etc/postfix/spam_trap Inhalt der Datei: devnull@thoma.cc DISCARD Diese Datei muss noch ins Postmap Format konvertiert werden. Hierzu folgenden Befehl ausführen: postmap /etc/postfix/spam_trap … Weiterlesen

Standard POP3 Dialog

Genauere Definition und Erklärung von POP3 bei Wikipedia RFCs RFC 1939 (1996) Default Ports 110 TCP 995 TCP für SSL Verbindungen Standard Kommandos Kommando Beschreibung USER xxx Auswahl der Benutzerkontos auf dem Server PASS xxx Sendet das Passwort an den Server (Klartext) STAT Liefert den Status der Mailbox, u. a. die Anzahl der neuen E-Mails. … Weiterlesen

Standard IMAP Dialog

Genauere Definition und Erklärung von IMAP bei Wikipedia RFCs RFC 3501 (2003) Default Ports 143 TCP 993 TCP für SSL Verbindungen Standard Kommandos xx – Fortlaufende 2stellige Nummer 01, 02, 03, 04, … Kommando Beschreibung xx LOGIN username passwort User anmelden xx LIST ““ * IMAP-Ordner auflisten (zwei Anführungszeichen nach List) xx SELECT yyyy IMAP-Ordner … Weiterlesen

Postgrey installieren (Debian Etch)

Installation sudo apt-get install postgrey Service checken mxadm@server:/# netstat -tulpen | grep 60000 tcp 0 0 127.0.0.1:60000 0.0.0.0:* LISTEN 0 23135 7884/postgrey Wenn der Service noch nicht läuft mit /etc/init.d/postgrey start starten. In Postfix einbinden main.cf: smtpd_recipient_restrictions = permit_mynetworks permit_sasl_authenticated reject_unauth_destination … check_policy_service inet:127.0.0.1:60000 … Postfix reload postfix reload

Postfix Quota Policy Daemon

Postfix Quota Policy Daemon ist ein Experiment, das ich im Halbschalf entwickelt habe . Ziel ist es auf einem Vmail System ohne Linuxquota auszukommen da dies eh nicht funktionieren würde. (Alle Mails haben bei einem Vmail System den selben User/Gruppe.) Ich habe den Daemon in PHP geschrieben in Perl wäre er sicher besser aber das … Weiterlesen

Policyd-weight installieren (Debian Etch)

Installation sudo apt-get install policyd-weight Service checken mxadm@server:/# netstat -tulpen | grep policyd-weight tcp 0 0 127.0.0.1:12525 0.0.0.0:* LISTEN 0 23134 7883/policyd-weight Wenn der Service noch nicht laufen sollte dann mit /etc/init.d/policyd-weight start starten. Einbinden in Postfix für bestimmte User / Domains main.cf: smtpd_restriction_classes = check_policyd_weight check_policyd_weight = check_policy_service inet:127.0.0.1:12525 smtpd_recipient_restrictions = … check_recipient_access hash:/etc/postfix/policyd_weight_users … Weiterlesen

POP3/IMAP Proxy Perdition mit MySQL backend

Perdition ist ein POP3/IMAP Proxy (SSL fähig) der zu mehreren Backend Servern (POP3 und IMAP) sich Verbinden kann. Die Entscheidung zu welchem Server er weiterverbinden soll erfolgt durch eine Tabelle. Perdition unterstützt mehrere Tabellenformate. Ich verwende MySQL. Installation apt-get install perdition perdition-mysql Konfiguration /etc/default/perdition: ###################################################################### # /etc/sysconfig/perdition (RPM based systems) # /etc/default/perdition (Debian) # # … Weiterlesen

Spamassassin Test mit GTUBE

GTUBE bedeutet Generic Test for Unsolicited Bulk Email GTUBE ist ein String der bei Spamassassin mit ca. 1000 Punkten bewertet wird. Hiermit kann man Testen ob Spamassassin überhaupt Spam erkennt und die gewünschten Aktionen ausführt. Um Spamassassin zu Testen müssen Sie einfach den String per Mail (von einem externen Konto) an den Zielserver/adresse schicken. GTUBE … Weiterlesen

Amavisd-new/Clamav Test mit EICAR

Die EICAR-Testdatei (auch „Eicar test file“ genannt) ist ein am European Institute for Computer Antivirus Research entwickeltes Testmuster, mit dessen Hilfe die Funktionen von Antivirenprogrammen getestet werden können. Dabei handelt es sich um eine reine Textdatei mit 68 ASCII-Zeichen und einer daraus resultierenden Dateigröße von 68 Byte (bzw. 70 Byte), welche somit in jeden beliebigen … Weiterlesen

Verhindern von Bruteforce Attaken auf Postfix SASL, Courier-IMAP und SSH

Hinweis Dieses Howto wurde für Debian Etch geschrieben. Installation apt-get install fail2ban Konfiguration anpassen /etc/fail2ban/jail.local [DEFAULT] # „ignoreip“ can be an IP address, a CIDR mask or a DNS host ignoreip = 127.0.0.1 bantime = 600 maxretry = 3 # „backend“ specifies the backend used to get files modification. Available # options are „gamin“, „polling“ … Weiterlesen