it-swarm-vi.tech

Kiểm tra nhật ký của sendmail ở đâu?

Tôi không thể gửi email,

cần nhìn vào nhật ký

nhưng nhật ký ở đâu?

106
Shore

Nhật ký ở đâu?

Vị trí mặc định phụ thuộc vào hệ thống linux/unix của bạn, nhưng những nơi phổ biến nhất là

  • / var/log/maillog
  • /var/log/mail.log
  • / var/adm/maillog
  • /var/adm/syslog/mail.log

Nếu nó không ở đó, hãy tìm /etc/syslog.conf. Bạn sẽ thấy một cái gì đó như thế này

mail.*         -/var/log/maillog

sendmail ghi nhật ký vào cơ sở mail của syslog. Do đó, tập tin nào được ghi phụ thuộc vào cách syslog được cấu hình.

Nếu hệ thống của bạn sử dụng syslog-ng (thay vì "truyền thống" syslog), thì bạn sẽ phải tìm kiếm syslog-ng.conf tập tin. Bạn sẽ nên một cái gì đó như thế này:

# This files are the log come from the mail subsystem.
#
destination mail     { file("/var/log/mail.log"); };
destination maillog  { file("/var/log/maillog"); };
destination mailinfo { file("/var/log/mail.info"); };
destination mailwarn { file("/var/log/mail.warn"); };
destination mailerr  { file("/var/log/mail.err"); };

Không thể gửi email?

Một trong những lý do phổ biến nhất mà tôi thấy đối với mới cài đặt sendmail không thể gửi email là DAEMON_OPTIONS được đặt để chỉ nghe trên 127.0.0.1

Xem /etc/mail/sendmail.mc

dnl #
dnl # The following causes sendmail to only listen on the IPv4 loopback address
dnl # 127.0.0.1 and not on any other network devices. Remove the loopback
dnl # address restriction to accept email from the internet or intranet.
dnl #
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl

Nếu đó là trường hợp của bạn, hãy xóa phần "Addr = 127.0.0.1", xây dựng lại tệp conf của bạn và bạn vẫn ổn!

DAEMON_OPTIONS(`Port=smtp, Name=MTA')dnl

[[email protected]]$ m4 sendmail.mc > /etc/sendmail.cf
[[email protected]]$/etc/init.d/sendmail restart

Nếu bạn đã thực hiện các thay đổi đối với /etc/sendmail.cf cho đến nay (thay vì tệp * .m4), bạn có thể thực hiện các thay đổi tương tự trong /etc/sendmail.cf. Dòng vi phạm sẽ trông như thế này:

O DaemonPortOptions=Port=smtp,Addr=127.0.0.1, Name=MTA

Thay đổi nó thành:

O DaemonPortOptions=Port=smtp, Name=MTA
75
Shawn Chin

kiểm tra/var/log/maillog hoặc/var/log/message nếu bạn đang bật * nix

Ngoài ra, nếu không có gì xảy ra, bạn có thể muốn kiểm tra tường lửa của mình như sau (hãy chắc chắn làm điều này với quyền root):

[.__.] [root @ web01 ~] # iptables -L [.__.] Chuỗi INPUT (CHẤP NHẬN chính sách) [.__.] đích đích là nguồn tham gia prot opt ​​[.__.] CHẤP NHẬN tcp - bất cứ nơi nào bất cứ nơi nào tcp dpt: ms-v-worlds [.__.] CHẤP NHẬN tcp - mọi nơi mọi nơi tcp dpt: imaps [.__.] CHẤP NHẬN tcp - bất cứ nơi nào bất cứ nơi nào tcp dpt: imap [.__.] CHẤP NHẬN tcp - bất cứ nơi nào tcp dpt: pop3 [.__.] CHẤP NHẬN tcp - mọi nơi mọi nơi tcp dpt: smtp [.__.] Tcp - bất cứ nơi nào bất cứ nơi nào tcp dpt: ssh bang MỚI gần đây: Tên SET: SSH side: source [.__.] DROP tcp - mọi nơi bất cứ nơi nào tcp dpt: ssh bang MỚI gần đây: CẬP NHẬT giây: 60 hit_count: 8 Tên đối sánh: SSH bên: nguồn [.__.] [.__.] Chuỗi FORWARD (chính sách ACCEPT) [.__.] đích [.__.] [.__.] Chuỗi OUTPUT (AC chính sách CEPT) [.__.] Đích đích của nguồn tham gia prot prot [.__.] [.__.] Chuỗi RH-Firewall-1-INPUT (0 tài liệu tham khảo) [.__.] Đích đích của nguồn tham gia prot prot [.__.] [ root @ xxxx ~] # [.__.]
24
bsisco

Hãy thử nhìn /var/log/mail.info hoặc /var/log/mail.err

5
Rory

Đối với Fedora et al. Tạp chí _COMM = sendmail sẽ hiển thị các tin nhắn từ sendmail.

Tôi đã được chuyển đến câu trả lời này thông qua một tìm kiếm./var/log/mail chỉ chứa tệp 'thống kê' trên Fedora. Và tất cả các thư mục được đề cập khác là không tồn tại.

tạp chí không đủ trực quan nếu bạn không biết nên sử dụng tham số nào, ymmv. Vì vậy, tôi đã đăng giải pháp này.

3
comfytoday

đồng thời kiểm tra/var/spool/mqueue cho thư gửi đi được lưu trong bộ nhớ cache hiện tại

3
Jimsmithkka
/var/log/maillog
2
Prody