Где находятся файлы журнала postfix?

Я знаю, что об этом спрашивали сто раз. Но я много поискал в Google безуспешно. Мой вопрос: я хочу регистрировать каждую активность моего постфиксного сервера. Ни файл по умолчанию /var/log/mail, ни какие-либо другие, касающиеся mail или postfix, не существует.

  1. Какую точную строку поместить в файл конфигурации /etc/postfx/main.cf, чтобы включить ведение журнала?
  2. Где я могу посмотреть, какой постфиксный файл конфигурации использует? (согласно моей подсказке ниже)

Спасибо за ваши ответы.

Подсказка: я использую postfix вместе с dovecot. Я установил метапакет несколько месяцев назад.

Выход для 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
77
задан 23 December 2013 в 23:35

3 ответа

Они должны быть в /var/log/mail.log. Однако, похоже, что конфигурация вашего средства системного журнала была изменена вами (или вашим провайдером). Использование простого syslogd вместо rsyslogd очень возможно, но тогда вы можете ожидать, что все будет работать иначе, чем вы ожидаете.

Как уже упоминалось в комментариях, после установки rsyslog файлы снова появились.

0
ответ дан 23 December 2013 в 23:35
  • 1
    Этот ответ является определенно самым полезным среди всех ответов здесь! – Sharan Duggirala 16 June 2015 в 02:31

В Ubuntu 16.04 я нашел журналы постфикса в /var/log/syslog:

grep postfix /var/log/syslog

Вы можете просмотреть поток журналов постфикса:

tail -f /var/log/syslog | grep postfix
0
ответ дан 23 December 2013 в 23:35

Если быть точным: постфикс регистрирует в syslog и использует средство mail системного журнала.

Вам нужно будет проверить, какой сервер системного журнала вы используете, но по умолчанию в Ubuntu до текущей версии 20.04 LTS используется rsyslogd. Если вы измените демон системного журнала, вам нужно будет настроить его для почты средства системного журнала.

Проверьте, зарегистрирована ли почта в каком-либо конкретном файле, выполнив поиск почты. (без предшествующего комментария/решетки) , но также включают все «правила охвата всех» *. :

grep -E "^[^#]*(mail|\*)\." /etc/rsyslog.conf /etc/rsyslog.d/*.conf

Пример вывода из Ubuntu 20.04

# We see that "/etc/rsyslog.conf" includes files from "/etc/rsyslog.d"
/etc/rsyslog.conf:$IncludeConfig /etc/rsyslog.d/*.conf

# "*.*" means that _all_ events _except_ "authpriv" is logged to /var/log/syslog
/etc/rsyslog.d/50-default.conf:*.*;auth,authpriv.none -/var/log/syslog

# Here goes "mail"
/etc/rsyslog.d/50-default.conf:mail.*                 -/var/log/mail.log

# In _addition_ "mail.err" goes here
/etc/rsyslog.d/50-default.conf:mail.err                /var/log/mail.err

# And in the event of an "emerg" priority message..
/etc/rsyslog.d/50-default.conf:*.emerg                 :omusrmsg:*

Rsyslog читает файлы конфигурации по порядку, и все события (строки журнала) проходят через все элементы конфигурации если какая-либо конфигурация не отбрасывает или не отфильтровывает событие.

Еще один пример, когда mail.* подавлен от попадания в общий файл messages, а затем отправляется как в файл, так и на внешний сервер системного журнала UDP. :

*.info;mail.none;authpriv.none;cron.none  /var/log/messages
mail.*                                   -/var/log/maillog
mail.*                                    @127.0.0.1:50514

Поэтому следите за порядком файлов при изменении вещей (сортировка по числам или символам) и используйте каталог rsyslog.d вместо того, чтобы возиться с rsyslog.conf.

1
ответ дан 12 November 2020 в 06:27

Другие вопросы по тегам:

Похожие вопросы: