Има три типа лог файлове на нашите сървъри:

Всеки от трите типа има различен формат. На тази страница има обяснение на най-често срещаните редове, които ще видите в логовете.

Логове за SMTP сесии

Логовете за SMTP сесии съдържат информация за всички съобщения, които достигат нашия сървър, независимо дали са за локална доставка или за предаване на други пощенски сървъри.

Информацията за всяко съобщение се записва на няколко реда в лога, като редовете, които се отнасят до едно и също съобщение, се групират заедно.

SMTP логовете са разделени по входящия порт. Сървърите ни приемат SMTP сесии на портове 25, 465 и 587. Електронна поще почти винаги се доставя между Интернет сървърите на порт 25. Другите два порта, 465 и 587, най-често се ползват от имейл програми (например Outlook), за да пращат поща през сървъра.

Ако търсите информация за съобщения, които са били доставени до пощенските Ви кутии от Интернет, можете да я намерите в лога за SMTP сесии на порт 25.

Ето два примера:

2021-03-09 11:10:37, from, spam@mail.spam-source.net
2021-03-09 11:10:37, resp, 250 ok
2021-03-09 11:10:37, to, <recipient@example.com>
2021-03-09 11:10:37, resp, 554 "Refused. You have no reverse DNS entry. Contact abuse@hosting_server.com for details."

2021-03-09 12:43:51, from, correspondent@elsewhere.example.net
2021-03-09 12:43:51, resp, 250 ok
2021-03-09 12:43:51, to, <recipient@example.com>
2021-03-09 12:43:51, check, accepted rcpt, h:198.51.100.25, recipient@example.com, found existing recipient
2021-03-09 12:43:51, resp, 250 ok
2021-03-09 12:43:51, size, 23533
2021-03-09 12:43:51, resp, 250 ok 1615286631 qp 15309

За тези примери приемаме, че сървърът ни е отговорен за пощата на домейна example.com, а пощата за всички други домейни се хоства другаде.

В първата група записи съобщението е пратено от (from) spam@mail.spam-source.net. Нашият сървър първоначално е отговорил (в случая resp означава "response") с "ОК" (кодове на отговор между 200 и 299 означават "заявката е приета").

След това изпращащият сървър е посочил, че съобщението е адресирано до (to) recipient@example.com. Отново отговорът на нашия сървър е бил "ОК".

Когато обаче нашият сървър е приключил проверките на изпращача и на съобщението, е отговорил (отново resp в лога), че доставката на това съобщение е отказана (кодове на отговор между 500 и 599 означават "отказана заявка"). Причината за отказа е дадена след кода за отговор. В случая съобщението е отказано, тъй като най-вероятно е било доставено от източник на спам.

Второто съобщение е било пратено от (from) correspondent@elsewhere.example.net (нашият сървър е отговорил с "OK") до (to) recipient@example.com, локална пощенска кутия. Сървърът ни е направил проверка (check) на кутията и е приел съобщението с нов отговор "OK". Съобщението е било дълго 23533 байта (size) и сървърът ни накрая е отговорил, че съобщението е прието за доставка. Частта "ok 1615286631 qp 15309" съдържа информация за процеса на пощенския сървър, който е поел отговорността за доставката след това.

На портове 465 и 587 най-вероятно ще видите изходящи съобщения. Следните записи в лога описват съобщение, което е изпратено от sender@example.com и доставено до recipient@example.com:

2021-03-10 14:17:33, from, sender@example.com
2021-03-10 14:17:33, resp, 250 ok
2021-03-10 14:17:33, to, <recipient@example.com>
2021-03-10 14:17:33, check, accepted rcpt, unknown:127.0.0.1, recipient@example.com, found existing recipient
2021-03-10 14:17:33, resp, 250 ok
2021-03-10 14:17:33, size, 620
2021-03-10 14:17:33, resp, 250 ok 1615205853 qp 5665

Тук е важно да се отбележи, че имейл адресът recipient@example.com сочи към локална пощенска кутия на сървъра. Това означава, че съобщението изобщо не е напускало сървъра.

Въпреки това, съобщението се счита за изходящо от гледната точка на изпращача, sender@example.com.

Логове за изпратена/доставена поща

Тези логове съдържат информация за действията, предприети от нашия сървър, след като е приел съобщение за доставка.

Съобщението от correspondent@elsewhere.example.net трябва да е записано и тук:

2021-03-09 12:43:51, init, <correspondent@elsewhere.example.net>
2021-03-09 12:43:51, try, 114878, local, recipient@example.com
2021-03-09 12:43:51, result, 114878, success, did_0+0+1/

Тук сървърът ни е започнал (init) доставката на съобщението от correspondent@elsewhere.example.net. Направил е опит (try) да го достави до локалната (local) кутия recipient@example.com. Резултатът (result) е бил успешна доставка (success).

Има три възможни резултата от всеки опит за доставка:

  • success, когато съобщението е доставено успешно;
  • deferral, когато доставката на съобщението е отложена за известно време и съобщението остава в опашката с чакащи писма за доставяне по-късно;
  • failure, когато съобщението не може да бъде доставено и сървърът прекратява опитите за доставка.

Съобщението от sender@example.com до recipient@example.com е доставено по подобен начин. Било е успешно доставено (success) до локалната (local) кутия recipient@example.com:

2021-03-10 14:17:33, init, <sender@example.com>
2021-03-10 14:17:33, try, 90352, local, recipient@example.com
2021-03-10 14:17:33, result, 90352, success, smtp_auth/did_0+0+1/

Тук е интересно да се отбележи, че изпращачът (sender@example.com) е удостоверил правото си да праща съобщения през сървъра с потребителско име и парола (частта smtp_auth). Това е задължително, когато се изпраща поща през нашите сървъри.

Логове на Spamdyke

Spamdyke е спам филтър система, която работи на нашите сървъри. Всеки ред в лога на Spamdyke отговаря на едно обработено съобщение.

Ето два примера:

Mar  9 11:10:37 server spamdyke[29207]: DENIED_RDNS_MISSING from: spam@mail.spam-source.net to: recipient@example.com origin_ip: 203.0.113.66 origin_rdns: (unknown) auth: (unknown) encryption: (none) reason: (empty)
Mar  9 12:43:51 server spamdyke[15280]: ALLOWED from: correspondent@elsewhere.example.net to: recipient@example.com origin_ip: 192.0.2.12 origin_rdns: elsewhere.example.net auth: (unknown) encryption: (none) reason: 250_ok_1615286631_qp_15309

Доставката на първото записано съобщение е била отказана (denied), защото обратният DNS запис (reverse DNS, или RDNS) на IP адреса, от който е получено съобщението, е липсвал (missing). Това е съобщението от първия пример по-горе (от spam@mail.spam-source.net).

Второто съобщение е допуснато за доставка (allowed).