Vraag Waar kun je log van sendmail checken?


Ik kan geen e-mails versturen

moeten in de logboeken kijken,

maar waar is het logboek?


90
2017-08-27 15:46


oorsprong


Wilt u ons laten weten welk besturingssysteem u gebruikt? Zoals anderen hieronder hebben opgemerkt, is het op de meeste systemen / var / log / maillog. Op Solaris is het / var / adm / maillog. Op Debian / Ubuntu is het /var/log/mail.log (let op de punt). - Gerald Combs
tail -f / var / log / maillog - Thomas Denton


antwoorden:


Waar zijn de logs?

De standaardlocatie is afhankelijk van je Linux / Unix-systeem, maar de meest voorkomende plaatsen zijn

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

Als het er niet is, kijk dan omhoog /etc/syslog.conf. Je zou zoiets moeten zien

mail.*         -/var/log/maillog

Verzend mail schrijft logboeken naar de mail faciliteit van syslog. Daarom, naar welk bestand het wordt geschreven, hangt af van hoe syslog was geconfigureerd.

Als je systeem gebruikt syslog-ng (in plaats van de meer "traditionele" syslog), dan zul je de jouwe moeten opzoeken syslog-ng.conf het dossier. Je zou zoiets als dit moeten doen:

# 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"); };

Kon ik geen e-mails verzenden?

Een van de meest voorkomende redenen die ik heb gezien voor een vers geïnstalleerd sendmail kan e-mails niet verzenden, de DAEMON_OPTIONS is ingesteld om alleen op 127.0.0.1 te luisteren

Zie /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

Als dat het geval is, verwijder dan het gedeelte "Addr = 127.0.0.1", herbouw je conf-bestand en je bent klaar om te beginnen!

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

[root@server]$ m4 sendmail.mc > /etc/sendmail.cf
[root@server]$/etc/init.d/sendmail restart

Als je tot nu toe handmatig wijzigingen hebt aangebracht in /etc/sendmail.cf (in plaats van het * .m4-bestand), kun je vergelijkbare wijzigingen aanbrengen in /etc/sendmail.cf. De beledigende regel ziet er als volgt uit:

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

Verander het in:

O DaemonPortOptions=Port=smtp, Name=MTA

60
2017-08-27 15:57



tail -f / var / log / maillog - Thomas Denton
Ik denk dat de sleutel hier is: "DaemonPortOptions = Port = smtp, Addr = 127.0.0.1, Name = MTA" in /etc/mail/sendmail.mc Zeer goede tip. Ik redde mijn dag, bedankt - serfer2
Maar waarom zou ik 127.0.0.1 verwijderen? De daemon laten luisteren op de publieke interface lijkt niet de meest veilige manier om te doen. (Ik zou willen voorstellen het hele gedeelte "Kan e-mails niet verzenden" te verwijderen omdat het niet relevant is voor OP.) - Alois Mahdal


vink / var / log / maillog of / var / log / messages aan als je * nix gebruikt

Als er niets naar buiten komt, wilt u mogelijk ook uw firewall als volgt controleren (zorg dat u dit als root doet):

[root @ web01 ~] # iptables -L
Chain INPUT (beleid ACCEPT)
doel prot opt ​​bron bestemming
ACCEPT tcp - overal waar dan ook tcp dpt: ms-v-werelden
ACCEPT de tcp - overal waar dan ook tcp dpt: imaps
ACCEPT de tcp - overal waar dan ook tcp dpt: imap
ACCEPT de tcp - overal waar dan ook tcp dpt: pop3
ACCEPT tcp - overal waar dan ook tcp dpt: smtp
           tcp - overal waar dan ook tcp dpt: ssh state NIEUW recent: SET naam: SSH side: source
DROP tcp - overal waar dan ook tcp dpt: ssh state NIEUW recent: UPDATE seconden: 60 hit_count: 8 TTL-Matchnaam: SSH side: source

Keten VOORUIT (beleid ACCEPT)
doel prot opt ​​bron bestemming

Chain OUTPUT (beleid ACCEPT)
doel prot opt ​​bron bestemming

Ketting RH-Firewall-1-INPUT (0 referenties)
doel prot opt ​​bron bestemming
[root @ xxxx ~] #

21
2017-08-27 15:52



Of kijk in * nix in /etc/syslog.conf om te zien waar die logberichten anders naartoe kunnen worden gestuurd. - Liudvikas Bukys


Probeer te kijken naar /var/log/mail.info of /var/log/mail.err


3
2017-08-28 08:51





controleer ook / var / spool / mqueue voor huidige in de cache opgeslagen uitgaande mail


1
2017-08-27 16:24





/var/log/maillog

0
2017-08-27 15:53





Voor fedora et al. journalctl _COMM = sendmail toont berichten van sendmail.

Ik werd via een zoekopdracht doorverwezen naar dit antwoord. / var / log / mail bevat alleen een 'statistieken'-bestand op Fedora. En alle andere genoemde mappen zijn niet aanwezig.

journalctl is niet intuïtief genoeg als je niet weet welke parameter je moet gebruiken, ymmv. dus ik heb deze oplossing gepost.


0
2017-07-01 11:49





U kunt uw eigen logbestand maken

[admin@local ~]# killall sendmail
[admin@local ~]# touch /var/log/sendmail.log
[admin@local ~]# sendmail -bd -q15m >> /var/log/sendmail.log

en dan

[admin@local ~]# tail -f /var/log/sendmail.log

451 4.0.0 /fake/path/sendmail.cf: line 0: cannot open: No such file or directory

-1
2017-09-04 10:17