Wo sind die Postfix-Protokolldateien?


76

Ich weiß, dass dies hundertmal gefragt wurde. Aber ich habe viel bei Google gesucht, ohne Erfolg. Meine Frage: Ich möchte jede Aktivität meines Postfix-Servers protokollieren. Weder die Standarddatei /var/log/mailnoch andere, die etwas betreffen mailoder postfixexistieren.

  1. Was ist die genaue Zeichenfolge, die in die Konfigurationsdatei eingefügt werden muss /etc/postfx/main.cf, um die Protokollierung zu aktivieren?
  2. Wo kann ich sehen, welche Konfigurationsdatei Postfix verwendet? (nach meinem Hinweis unten)

Danke für deine Antworten.

Tipp: Ich benutze Postfix zusammen mit Dovecot. Ich habe das Metapaket vor einigen Monaten installiert.

Ausgabe für postconf -n:

    alias_database = hash:/etc/aliases
    alias_maps = hash:/etc/aliases
    append_dot_mydomain = no
    biff = no
    broken_sasl_auth_clients = yes
    config_directory = /etc/postfix
    home_mailbox = Maildir/
    inet_interfaces = all
    mailbox_command = /usr/lib/dovecot/deliver -c /etc/dovecot/conf.d/01-dovecot-postfix.conf -n -m "${EXTENSION}"
    mailbox_size_limit = 0
    mydestination = mydomain.de localhost
    myhostname = mydomain.de
    mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
    myorigin = /etc/mailname
    readme_directory = no
    recipient_delimiter = +
    smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
    smtp_use_tls = yes
    smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
    smtpd_recipient_restrictions = reject_unknown_sender_domain, reject_unknown_recipient_domain, reject_unauth_pipelining, permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
    smtpd_sasl_auth_enable = yes
    smtpd_sasl_authenticated_header = yes
    smtpd_sasl_local_domain = $myhostname
    smtpd_sasl_path = private/dovecot-auth
    smtpd_sasl_security_options = noanonymous
    smtpd_sasl_type = dovecot
    smtpd_sender_restrictions = reject_unknown_sender_domain
    smtpd_tls_auth_only = yes
    smtpd_tls_cert_file = /etc/ssl/certs/ssl-mail.pem
    smtpd_tls_key_file = /etc/ssl/private/ssl-mail.key
    smtpd_tls_mandatory_ciphers = medium
    smtpd_tls_mandatory_protocols = SSLv3, TLSv1
    smtpd_tls_received_header = yes
    smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
    smtpd_use_tls = yes
    tls_random_source = dev:/dev/urandom
    virtual_alias_maps = hash:/etc/postfix/virtual
    virtual_gid_maps = static:5000
    virtual_mailbox_base = /var/mail/vhosts
    virtual_mailbox_domains = mydomain2.de
    virtual_mailbox_maps = hash:/etc/postfix/vmailbox
    virtual_minimum_uid = 100
    virtual_uid_maps = static:5000

Output for /etc/syslog.conf

#  /etc/syslog.conf Configuration file for syslogd.
#
#           For more information see syslog.conf(5)
#           manpage.

#
# First some standard logfiles.  Log by facility.
#

auth,authpriv.*      -/var/log/auth.log
*.*;auth,authpriv.none;local0.none;local1.none      -/var/log/syslog
#cron.*          -/var/log/cron.log
daemon.*            -/var/log/daemon.log
kern.*              -/var/log/kern.log
lpr.*               -/var/log/lpr.log
user.*              -/var/log/user.log

#
# Logging for the mail system.  Split it up so that
# it is easy to write scripts to parse these files.
#

# Logging for INN news system
#
news.crit        -/var/log/news/news.crit
news.err         -/var/log/news/news.err
news.notice         -/var/log/news/news.notice

#
# Some `catch-all' logfiles.
#
*.=debug;\
    auth,authpriv.none;\
    news.none   -/var/log/debug
*.=info;*.=notice;*.=warning;\
    auth,authpriv.none;\
    cron,daemon.none;\
    mail,news.none      -/var/log/messages

#
# Emergencies are sent to everybody logged in.
#
*.emerg             *

#
# I like to have messages displayed on the console, but only on a virtual
# console I usually leave idle.
#
#daemon,mail.*;\
#   news.=crit;news.=err;news.=notice;\
#   *.=debug;*.=info;\
#   *.=notice;*.=warning    /dev/tty8

# The named pipe /dev/xconsole is for the `xconsole' utility.  To use it,
# you must invoke `xconsole' with the `-file' option:
# 
#    $ xconsole -file /dev/xconsole [...]
#
# NOTE: adjust the list below, or you'll go crazy if you have a reasonably
#      busy site..
#
daemon.*;mail.*;\
    news.err;\
    *.=debug;*.=info;\
    *.=notice;*.=warning    |/dev/xconsole

2
Ubuntus Postfix-Paket meldet sich /var/log/mail.logstandardmäßig nur an. Wenn das nicht vorhanden ist oder sich dort nicht anmeldet, klären Sie bitte, was Sie an Ihrem System geändert haben. Ohne diese Angaben zu dem, was Sie versucht / gefunden haben, können wir Ihnen nicht wirklich helfen. Vielleicht ist es so einfach wie eine modifizierte rsyslog-Konfiguration. Wir haben keinen Zugriff auf Ihr System und können Ihre Bildschirme nicht sehen. Daher verlassen wir uns darauf, was Sie in Ihrer Frage angeben. Verwenden Sie zum Drucken der aktuellen Postfix-Konfiguration postconf -n.
Gertvdijk

Bitte bearbeiten Sie Ihre Frage, um Details aufzunehmen. So funktioniert diese Seite. Kommentare sind dafür nicht geeignet.
Gertvdijk

Hallo. Ich habe die Ausgabe von postconf hinzugefügt. Ich habe in der Vergangenheit nichts geändert. Ich habe gerade das Metapaket installiert. Gut könnte ich möglich sein, dass jemand den Bediener besetzte und die Protokolle entfernte :-D. In den letzten Tagen wurden viele Nachrichten von diesem Server gesendet, die anscheinend Spam sind ...
Steve Rakebrandt

Wenn Sie den Verdacht haben, dass jemand gerade unverblümt Protokolldateien entfernt hat, werden diese möglicherweise nicht mehr richtig gedreht, und ein Dateideskriptor ist weiterhin für eine ältere (nicht verknüpfte) Protokolldatei geöffnet. Haben Sie versucht, Postfix und neu zu starten rsyslog?
Gertvdijk

Ja, wenn Postfix bereits einige Male neu gestartet wurde. Ich habe den Server auch vor ein paar Minuten neu gestartet. Keine Änderungen. Dateien fehlen noch. Soweit ich weiß, werden alle aktiven Protokolle nach einer gewissen Zeit komprimiert, daher denke ich, dass dies alles die aktiven sind: aptitude, auth, daemon, dovecot, dpkg, mysql, vsftpd. Wenn ich heute Abend keine Ergebnisse erhalten habe, erstelle ich eine Sicherungskopie und starte den Neuinstallationsprozess (Provider-Funktion). Und übrigens kann ich rsyslog (d) -> nicht erkannten Dienst nicht neu starten.
Steve Rakebrandt

Antworten:


76

Sie sollten in sein /var/log/mail.log. Es scheint jedoch, dass Ihre Syslog-Konfiguration von Ihnen (oder Ihrem Provider) geändert wurde. Die Verwendung von syslogd anstelle von rsyslogd ist sehr gut möglich, aber dann können Sie erwarten, dass die Dinge anders funktionieren als erwartet.

Wie bereits in den Kommentaren erwähnt, rsyslogwurden die Dateien bei der Installation erneut angezeigt.


1
Ja, in meinem Fall musste ich nur "apt-get install rsyslog" und "service postfix restart" ausführen und mein /var/log/mail.log erschien
Mike

6

Unter Ubuntu 16.04 fand ich Postfix-Logs in /var/log/syslog:

grep postfix /var/log/syslog

Sie können den Stream der Postfix-Protokolle anzeigen:

tail -f /var/log/syslog | grep postfix
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.