Co zapisuje serwer pocztowy – i jak długo

« Blog · Autor:

Skasowana wiadomość znika. Zapis o tym, że została doręczona, już nie. Każda wiadomość zostawia na każdym serwerze, którego dotknie, kilka wierszy w pliku dziennika — a te mają własny czas życia, niezwiązany z wiadomością.

Co stoi w takim wierszu

4W8xQ2: to=<anna@firma.pl> relay=mx.firma.pl[203.0.113.9] delay=1.4 status=sent numer sprawy serwer docelowy i jego IP wynik odbiorca z koperty czas w sekundach Nie zawiera: treści wiadomości. Typowe przechowywanie: 7 do 30 dni — niezależnie od skasowania wiadomości.
Treści brak, sprawa stoi w komplecie: kto, do kogo, dokąd, jak długo, z jakim skutkiem.

Pełny zestaw na wiadomość

Pojedyncze doręczenie tworzy zwykle trzy do pięciu wierszy powiązanych wspólnym numerem sprawy. Razem zawierają:

PozycjaSkąd
Znacznik czasu co do sekundyzegar systemowy
Adres IP drugiej strony i jej nazwapołączenie i wpis PTR
Nazwa podana w EHLOrozmowa SMTP
Nadawca i odbiorca z kopertyMAIL FROM, RCPT TO
Message-IDnagłówek
Rozmiar w bajtach, liczba odbiorcówwiadomość
Użyta wersja TLS i szyfrpołączenie
Wyniki SPF, DKIM, DMARCweryfikacja
Kod i tekst odpowiedzi serwera docelowegodoręczenie

Treści wiadomości na zwyczajnie skonfigurowanym serwerze wśród nich nie ma. Zresztą źle by tam leżała: dzienniki czyta się przy szukaniu usterek, często robią to osoby, które poczty czytać nie mogą.

Wiersz tematu jest przypadkiem granicznym. Domyślnie nie trafia do dziennika, ale da się to włączyć, a część filtrów antyspamowych robi to z własnej inicjatywy, bo bez tematu nie da się ich prześledzić. Kto przejmuje system, powinien więc sprawdzić, a nie zakładać.

Obie strony zapisują tę samą sprawę

To bywa regularnie przeoczane: doręczenie tworzy wpisy na obu serwerach. Wysyłający zapisuje, że doręczył; odbierający, że przyjął. Obaj operatorzy utrwalają tym samym, że między dwoma adresami o określonej porze przeszła wiadomość określonego rozmiaru.

Gdy dochodzą stacje pośrednie — filtr antyspamowy, przekierowanie, dostawca wysyłki — każda z nich zapisuje to samo jeszcze raz. Dla nadawcy jest to niewidoczne i niesterowalne.

Tu również obowiązuje: szyfrowanie transportu niczego w tym nie zmienia. TLS chroni zawartość połączenia, nie fakt, że doszło ono do skutku — serwer przyjmujący wiadomość przecież ją odszyfrowuje. Do czego nadają się poszczególne mechanizmy, opisano gdzie indziej.

Jak długo się to przechowuje

Stałej odpowiedzi nie ma, jest natomiast utarty przedział. Dwa wymagania ciągną w różne strony.

Eksploatacja potrzebuje danych krótko. Większość pytań, na które odpowiada dziennik, pada w ciągu kilku dni: „czy moja wczorajsza wiadomość doszła?". Do tropienia powtarzalnych problemów z doręczaniem przyjęte są dwa do czterech tygodni.

Prawo ochrony danych wymaga ograniczenia. Adresy IP i adresy e-mail są danymi osobowymi. Wolno je przetwarzać w określonym celu — eksploatacja i bezpieczeństwo usługi takim celem są — i trzeba je usunąć, gdy cel zostanie osiągnięty. Nieograniczone przechowywanie „na wszelki wypadek" nie jest dopuszczalnym uzasadnieniem.

W praktyce wychodzi z tego 7 do 30 dni, z dłuższym okresem wyłącznie dla przypadków osobno uzasadnionych, na przykład zapisów o odpartych atakach. Ważniejsza od dokładnej liczby jest to, że jakaś istnieje, że jest udokumentowana i że kasowanie faktycznie działa.

Co to znaczy dla nadawcy

  • Kasowanie dotyczy wyłącznie treści. Kto usunie wiadomość ze skrzynki, nie usuwa adnotacji, że dotarła. Ta stoi w pliku, do którego żaden użytkownik nie ma dostępu.
  • Dane o połączeniu regularnie przeżywają wiadomość. Przy skrzynkach krótkotrwałych wiadomości nie ma po kilku dniach; wiersz dziennika może stać dłużej.
  • Kto chce wiedzieć, co jest zapisywane, musi przeczytać informację o prywatności. Porządny dostawca wymienia tam kategorie i okresy. Brak takiej informacji sam w sobie jest informacją.

A dla operatora

  1. Ustal okres przechowywania i wymuś go technicznie. Rotacja, która po n dniach naprawdę kasuje pliki, zamiast tylko je przemianowywać — inaczej dane leżą dalej, tyle że z liczbą w nazwie.
  2. Nie zapisuj więcej, niż trzeba. Tematy i nagłówki otwartym tekstem są rzadko potrzebne, a robią z pliku eksploatacyjnego wyciąg z korespondencji.
  3. Ogranicz dostęp. Kto szuka usterki, potrzebuje dziennika. Kto nie szuka, nie potrzebuje.
  4. Udokumentuj okresy, w rejestrze czynności przetwarzania i w informacji o prywatności. To praca, którą odkłada się przy wdrożeniu, a żałuje przy pierwszym wniosku o dostęp do danych.

Dziennik jest środkiem eksploatacyjnym, nie archiwum. Różnicę widać po tym, czy ktoś ustalił okres — czy też pliki po prostu rosną dalej.