Archiv

Archiv für die Kategorie ‘Mailserver’

Exim Administration – Queue anzeigen und bearbeiten

18. Mai 2008 1 Kommentar

In diesem Beitrag möchte ich grundlegende Kommandos zum löschen, bearbeiten und auswerten der exim E-Mail Queue aufzeigen.

Die meisten Aufrufe und Befehle basieren auf einem Aufruf des “exim” Binarys das bei gewissen Parametern root-Rechte erfordert.

  • exim -bp
    1. Queue anzeigen lassen
  • exim -q
    1. Queue abarbeiten
  • exim -bpc
    1. Anzahl der queued Messages anzeigen lassen
  • exim -Mt
    1. Versenden von “Frozen” E-Mails
  • exim -bp | awk ‘/frozen/{print $3}’ | xargs exim -Mrm
    1. Löschen allen Frozen E-Mails
  • exim -Mrm [msgid]
    1. Einzelne E-Mail löschen
  • exim -bp | grep ‘[0-9][0-9]d ‘ | awk ‘{print $3}’ | xargs exim -Mrm
    1. E-Mails in der Queue löschen die >= 10 Tage alt sind
  • exiqgrep -i -f nobody@servername.de | xargs exim -Mrm
    1. E-Mails in der Queue löschen die vom Sender nobody@servername.de (meist vom Webserver) versendet wurden.

    Die restlichen Sonderfälle können alle mit exiqgrep gelöst werden.

    Debian: Postfix – SASL smtp Authentifizierung – Installations HowTo

    9. Mai 2008 Keine Kommentare

    Um sich an einem SMTP Anzumelden gibt es 2 weit verbreitete Verfahren:
    POP-Before-SMTP und SMTP_AUTH

    Da POP-Before-SMTP einige Nachteile mit sich bringt, möchte ich hier kurz erklären wie man Postfix dazu bringt SMTP Authentifizierung anzubieten. Die Schnittstelle hierzu ist der SASL Server.

    1. Installation der Pakete

    apt-get install postfix-tls sasl2-bin libsasl2 libsasl2-modules

    2. Konfiguration von SASL /etc/default/saslauthd

    START=yes
    MECHANISMS="pam"

    3. Anlegen der Steuerdatei /etc/postfix/sasl/smtpd.conf

    pwcheck_method: saslauthd
    mech_list: PLAIN LOGIN
    saslauthd_path: /var/run/saslauthd/mux
    autotransition: true

    4. Konfiguration von Postfix
    Der nächste Schritt ist abhängig davon ob Postfix im chroot laufen soll oder nicht. Dies entscheidet sich in der Datei /etc/postfix/master.cf in einer Zeile:

    smtp inet n - - - - smtpd # Postfix SMTP ist in einem chroot
    smtp inet n - n - - smtpd # Postfix SMTP ist nicht in einem chroot

    Fall 1 – Wenn Postfix im chroot laufen soll:

    rm -r /var/run/saslauthd
    mkdir -p /var/spool/postfix/var/run/saslauthd
    cd /var/run/
    ln -s /var/spool/postfix/var/run/saslauthd saslauthd
    chgrp sasl /var/spool/postfix/var/run/saslauthd
    chgrp sasl /var/run/saslauthd
    adduser postfix sasl

    Anpassen der Konfiguration /etc/postfix/main.cf

    ### SMTP Auth ###
    smtpd_sasl_auth_enable = yes
    smtpd_sasl_local_domain =
    broken_sasl_auth_clients = yes
    smtpd_sasl_security_options = noanonymous
    smtpd_sasl_authenticated_header = yes

    Überall wo es wichtig ist “permit_sasl_authenticated” hinzufügen. z.B.:

    smtpd_recipient_restrictions =
           permit_sasl_authenticated,
           permit_mynetworks,
           reject_unauth_destination

    Fall 2 – Wenn Postfix nicht im Chroot laufen soll

    adduser postfix sasl

    Anschließend anpassen der Datei /etc/postfix/main.cf wie oben genannt.

    5. Restart der Dienste

    /etc/init.d/postfix restart
    /etc/init.d/saslauthd restart

    Anschließend sollte Postfix SMTP-AUTH mittels SASL verstehen und die Passwörter vom Client richtig verarbeiten und diesem zum Versand authentifizieren.

    Postfix auf zweitem Port (587)

    23. April 2008 Keine Kommentare

    Immer mehr DSL Provider sperren aus Spamprävention Port 25 für ausgehende Verbindungen. Als Postausgangsserver sollen die User Port 587 verwenden, der bereits von den Meisten Freemail Anbietern geöffnet ist.

    Der Witz hinter dieser Aktion ist, dass User PCs an DSL Anschlüssen so nicht mehr in der Lage sein sollen als “echter Mailserver” zu arbeiten, da die Gegenstelle nur Verbindungen auf Port 25 akzeptiert.
    Der Port 587 soll dabei zwar E-Mails der User annehmen aber eben nur durch authentifizierte User, die unter Linux oftmals SASL (Simple Authentication and Security Layer) authentifiziert sind.

    Das SMTP Protokoll ansich hat keinen Authentifizierungsmechanismus, sodass über diesen “Port Workaround” die Spamflut gelindert werden soll.

    Dies ist neben dem Sender Policy Framework, die einzige erwähnenswerte Spam Präventionsmethode (Man beachte, nicht Filterung oder Abwehr, sondern Prävention) die wenigstens einigermaßen verbreitet ist.

    Viele (wie ich) sind der Meinung, dass es Zeit für E-Mail2.0™ ist, aber ich will mal nicht zu weit vom eigentlichen Thema abschweifen.

    Um Port 587 mittels Postfix so zu öffnen, dass dieser nur E-Mails von SASL authentifizierten Usern annimmt, muss man die Konfigurationsdatei master.cf wiefolgt bearbeiten:

    587      inet  n       -       -       -       -       smtpd
            -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject

    Es gibt “Lösungen” im Internet die folgendes vorschlagen:

    587 inet n - - - - smtpd

    Wer jedoch den oberen Abschnitt dieses Artikels verstanden hat, wird merken dass hier etwas schief läuft ;)