nützliche Kommandos rund um Postfix

Postfix Logo

Zeigt alle Einstellungen der main.cf, die nicht den Defaultwerten entsprechen:

 postconf -n

Zeigt den Defaultwert einer Variable an; ignoriert also den Wert aus der main.cf:

 postconf -d myorigin
 myorigin = $myhostname

Die Abfrage von Variablen direkt aus unserem laufenden Postfix heraus erfolgt ohne Parameterangabe:

 postconf myorigin
 myorigin = $mydomain

Wollen wir einen Parameter ändern, so benutzen wir die Option -e

postconf -d smtpd_client_connection_count_limit
smtpd_client_connection_count_limit = 50

postconf smtpd_client_connection_count_limit
smtpd_client_connection_count_limit = 10

postconf -e "smtpd_client_connection_count_limit = 15"

postconf smtpd_client_connection_count_limit
smtpd_client_connection_count_limit = 15

Anschließend muss via service postfix reload der laufende Daemon noch von der Änderung an der main.cf informiert werden

Zeigt eine vollständige Übersicht aller eMails in den Warteschlangen

 # postqueue -p

Alle eMails in der deferred-Queue werden sofort wieder zur Auslieferung gebracht

 # postqueue -f

Mailqueue zu Auslieferung bringen

Um alle Nachrichten aus der Mailqueu erneut zur Auslieferung zu bringen, erreichen wir durch:

 # postsuper -r ALL

eine einzelne Mail löschen

Löschen der eMail mit der <QUEUE-ID> aus der Warteschlange

 # postsuper -d <QUEUE-ID>

mehrere Mails löschen

Will man mehrere Nachrichten eines bestimmten Absenders bzw. Empfängers löschen, so wäre die manuelle Löschung von z.B. mehreren Tausenden von Nachrichten nicht mehr durchzuführen.

In der Manpage von postsuper findet man hierzu einen sehr Hilfreichen Tip (Die Variabeln sind dabei wie folgt belegt: $7=sender, $8=recipient1, $9=recipient2)

Mit folgendem Befehl löscht man z.B. alle Nachrichten von gaudiwurm@nerv.com:

 # mailq | tail +2 | grep -v '^ *(' | awk  'BEGIN { RS = "" } { if ($7 == "gaudiwurm@nerv.com") print $1 }' | tr -d '*!' | postsuper -d -

alternativ empfiehlt sich das delete_from_mailq.pl von Victor Duchovni

#!/usr/bin/perl

$REGEXP = shift || die "no email-adress given (regexp-style, e.g. bl.*\@yahoo.com)!";

@data = qx</usr/sbin/postqueue -p>;
for (@data) {
  if (/^(\w+)(\*|\!)?\s/) {
     $queue_id = $1;
  }
  if($queue_id) {
    if (/$REGEXP/i) {
      $Q{$queue_id} = 1;
      $queue_id = "";
    }
  }
}

#open(POSTSUPER,"|cat") || die "couldn't open postsuper" ;
open(POSTSUPER,"|postsuper -d -") || die "couldn't open postsuper" ;

foreach (keys %Q) {
  print POSTSUPER "$_\n";
};
close(POSTSUPER);

Konvertiert die Datei aliases in das binäre Datenbankformat. (Auf Grund der Doppelpunkte funktioniert hier postmap nicht!) Muss nach jedem Ändern der /etc/aliases aufgerufen werden!

# postalias /etc/aliases

Konvertiert die angegebene Textdatei in das binäre Datenbankformat. Muss nach jeder Änderung an der Textdatei aufgerufen werden!

 # postmap /etc/postfix/policyd_weight_client_whitelist

Listet alle einträge einer Datenbank (i.e. policyd_weight_client_whitelist) auf:

 # postmap -s /etc/postfix/policyd_weight_client_whitelist
 kundenserver.de OK

Zeigt welches Programm (Command) auf dem gennaten Port lauscht/reagiert.

lsof -i :25
COMMAND   PID    USER   FD   TYPE  DEVICE SIZE NODE NAME
smtpd   22703 postfix    6u  IPv4 2790158       TCP *:smtp (LISTEN)
smtpd   22803 postfix    6u  IPv4 2790158       TCP *:smtp (LISTEN)
master  31413    root   11u  IPv4 2790158       TCP *:smtp (LISTEN)

Nachrichtentext (Mailbody) wird mit dem Subject „Betreff“ an den postmaster und in cc an bigchief geschickt

 # echo Nachrichtentext | mailx -s "Betreff" -c bigchief postmaster

Will man Nachrichten mit Anhängen von der Konsole aus verschicken, so z.B. Status- oder Logfiles via cronjob, so bendient man sich am besten uuenview.

Das Postfixlog (/var/log/maillog) wird als Anhang an den User mit der Adresse empfaenger@nausch.org geschickt. Absender ist absender@nausch.org, wobei wir als Rückantwortadresse rueckantwortadresse@nausch.org mitgeben.

 # /usr/bin/uuenview -b -s "Betreff" -r rueckantwortadresse@nausch.org -f absender@nausch.org -m empfaenger@nausch.org /var/log/maillog
Cookies helfen bei der Bereitstellung von Inhalten. Durch die Nutzung dieser Seiten erklären Sie sich damit einverstanden, dass Cookies auf Ihrem Rechner gespeichert werden. Weitere Information
  • centos/mailserver/nuetzliche_kommandos_rund_um_postfix.txt
  • Zuletzt geändert: 27.01.2011 09:05.
  • von bigchief