Di mana file log postfix?

76

Saya tahu ini telah diminta ratusan kali. Tetapi saya telah melakukan banyak pencarian Google tanpa hasil. Pertanyaan saya: Saya ingin mencatat setiap aktivitas server postfix saya. Baik file default /var/log/mailmaupun yang lain terkait mailatau postfixada.

  1. Apa string yang tepat untuk dimasukkan ke file konfigurasi /etc/postfx/main.cfuntuk mengaktifkan logging?
  2. Di mana saya dapat melihat postfix file konfigurasi mana yang digunakan? (menurut petunjuk saya di bawah)

Terima kasih atas jawaban anda

Petunjuk: Saya menggunakan postfix bersama dengan dovecot. Saya menginstal paket meta beberapa bulan yang lalu.

Output untuk 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
Steve Rakebrandt
sumber
2
Paket Ubuntu untuk Postfix baru saja login /var/log/mail.logsecara default. Jika itu tidak ada atau tidak masuk di sana, silakan jelaskan apa yang Anda ubah ke sistem Anda. Tanpa memberikan perincian tentang apa yang Anda coba / temukan, kami tidak dapat membantu Anda. Mungkin sesederhana konfigurasi rsyslog yang dimodifikasi. Kami tidak memiliki akses ke sistem Anda dan kami tidak dapat melihat layar Anda, jadi kami mengandalkan apa yang Anda berikan dalam pertanyaan Anda. Dan untuk mencetak konfigurasi Postfix saat ini, gunakan postconf -n.
gertvdijk
Harap edit pertanyaan Anda untuk memasukkan perincian. Begitulah cara kerja situs ini. Komentar tidak cocok untuk itu.
gertvdijk
Hai. Saya telah menambahkan output postconf. Saya tidak mengubah apa pun di masa lalu. Saya baru saja menginstal paket meta. Yah, saya bisa saja seseorang menduduki server dan menghapus log :-D. Ada banyak pesan yang dikirim dari server ini pada hari-hari terakhir, yang tampaknya merupakan spam ...
Steve Rakebrandt
Jika Anda mencurigai seseorang baru saja menghapus logfile, maka mereka mungkin tidak diputar dengan benar lagi dan deskriptor file masih terbuka untuk file log yang lebih lama (tidak ditautkan). Apakah Anda mencoba me-restart Postfix dan rsyslog?
gertvdijk
Ya, jika sudah me-restart postfix beberapa kali. Saya juga me-restart server beberapa menit yang lalu. Tidak ada perubahan. File masih hilang. Sejauh yang saya tahu, semua log aktif akan dikompresi setelah periode, jadi saya pikir ini semua yang aktif: aptitude, auth, daemon, dovecot, dpkg, mysql, vsftpd. Nah, jika saya tidak mendapatkan hasil apa pun malam ini, saya akan membuat cadangan dan memulai proses instal ulang (fungsi penyedia). Dan btw, saya tidak bisa memulai ulang rsyslog (d) -> layanan yang tidak dikenal.
Steve Rakebrandt

Jawaban:

77

Mereka harus dalam /var/log/mail.log. Namun, tampaknya konfigurasi fasilitas syslog Anda diubah oleh Anda (atau penyedia Anda). Menggunakan syslogd biasa dan bukan rsyslogd sangat mungkin, tetapi kemudian Anda dapat mengharapkan sesuatu berfungsi berbeda dengan harapan Anda.

Seperti yang sudah disebutkan dalam komentar, dengan menginstal rsyslog, file muncul kembali.

gertvdijk
sumber
1
Ya, dalam kasus saya, saya hanya perlu menjalankan "apt-get install rsyslog" dan "service postfix restart" dan /var/log/mail.log saya muncul
Mike
6

Di Ubuntu 16.04, saya menemukan log postfix di /var/log/syslog:

grep postfix /var/log/syslog

Anda dapat melihat aliran log postfix:

tail -f /var/log/syslog | grep postfix
AL
sumber