Hosting WWW - Najlepsze praktyki dotyczące wysyłania wiadomości e-mail
Dowiedz się, dlaczego funkcja PHP mail() jest odradzana na hostingu współdzielonym oraz jak skonfigurować uwierzytelnione wysyłanie SMTP za pośrednictwem kont e-mail OVHcloud
Wprowadzenie
Aby zapewnić dotarcie Twoich wiadomości e-mail do odbiorców, OVHcloud utrzymuje dedykowaną infrastrukturę wychodzącą z automatycznym filtrowaniem antyspamowym oraz ciągłym monitorowaniem reputacji serwerów. Aby w pełni z niej skorzystać, zalecamy wysyłanie wiadomości e-mail za pośrednictwem uwierzytelnionego SMTP, a nie natywnej funkcji PHP mail(). Takie podejście zapewnia, że każda wiadomość e-mail jest wysyłana ze zweryfikowaną tożsamością, co znacznie poprawia dostarczalność i zmniejsza ryzyko zaklasyfikowania jako spam.
Ten przewodnik wyjaśnia najlepsze praktyki i zalecenia OVHcloud dotyczące niezawodnego i bezpiecznego wysyłania wiadomości e-mail z hostingu współdzielonego, niezależnie od tego, czy zarządzasz witryną WordPress, innym CMS, czy aplikacją PHP.
Wymagania początkowe
- Usługa Hosting WWW OVHcloud.
- Adres e-mail powiązany z Twoją nazwą domeny (rozwiązanie MX Plan, E-mail Pro lub Exchange). Jeżeli jeszcze go nie posiadasz, zapoznaj się z przewodnikiem Tworzenie konta e-mail w ramach usługi MX Plan.
Dostęp do Panelu klienta OVHcloud
- Link bezpośredni:
- Ścieżka nawigacji:
Web Cloud>Hosting> Wybierz Twój hosting WWW
W praktyce
1. mail() czy uwierzytelnione SMTP: jaka jest dla Ciebie różnica?
Co robi OVHcloud, aby chronić Twoje wysyłki
OVHcloud stale monitoruje reputację swoich serwerów wysyłkowych i automatycznie filtruje podejrzane wiadomości — dzięki czemu Twoje prawidłowe wiadomości e-mail nie są narażone na problemy. Ta ochrona ma jednak swoje ograniczenie: funkcja PHP mail() nie przeprowadza żadnej weryfikacji tożsamości nadawcy zadeklarowanej w wiadomości (pole From:). Wiadomość e-mail wysłana za pomocą mail() może zatem wydawać się pochodzić z dowolnego adresu, co wystarczy, aby uruchomić filtry serwerów odbiorców (Gmail, Outlook itp.) i pogorszyć dostarczalność Twoich własnych wiadomości e-mail.
Wiadomości e-mail bez wiarygodnego podpisu
Funkcja mail() wysyła wiadomości e-mail bez zagwarantowania tożsamości nadawcy. Serwery odbiorców (Gmail, Outlook itp.) sprawdzają, czy wiadomość e-mail rzeczywiście pochodzi z serwera autoryzowanego przez Twoją domenę, korzystając z rekordów SPF i DKIM. W przypadku mail() ta weryfikacja często kończy się niepowodzeniem: wiadomość może wówczas trafić do spamu lub zostać odrzucona.
Wysyłanie za pośrednictwem uwierzytelnionego SMTP rozwiązuje ten problem: wiadomość e-mail jest wysyłana przez serwer OVHcloud autoryzowany dla Twojej domeny, z prawidłowym podpisem.
Nadużywanie funkcji mail() może prowadzić do automatycznego zablokowania wychodzących wiadomości e-mail z Twojego hostingu. Jeżeli zauważysz, że Twoje wiadomości e-mail nie są już wysyłane, zapoznaj się z przewodnikiem Monitoring i zarządzanie automatycznymi wiadomościami e-mail na Twoim hostingu.
Otwarte formularze: dodatkowy wektor nadużyć
Formularz kontaktowy dostępny publicznie, bez żadnego mechanizmu ochrony, jest głównym celem botów. Wykorzystują go one do wywołania wysyłki tysięcy wiadomości e-mail w ciągu kilku minut za pośrednictwem Twojego hostingu, powodując zablokowanie współdzielonego adresu IP i szkodząc wszystkim klientom w klastrze.
Skonfiguruj następujące zabezpieczenia dla każdego formularza, który wywołuje wysyłkę wiadomości e-mail:
- Captcha: zintegruj system weryfikacji (Google reCAPTCHA v3, hCaptcha lub proste zadanie arytmetyczne), aby blokować automatyczne przesyłanie formularzy.
- Ograniczanie liczby wysyłek (rate limiting): ogranicz liczbę wysyłek na adres IP po stronie serwera, aby zapobiec nagłym nadużyciom.
- Ścisła walidacja danych wejściowych: sprawdzaj i oczyszczaj każde pole formularza przed użyciem go w wiadomości e-mail — nigdy nie ufaj danym dostarczonym przez użytkownika.
Brak captchy w otwartym formularzu wysyłkowym jest jedną z najczęstszych przyczyn blokowania hostingu współdzielonego za spam. To zabezpieczenie jest niezbędne niezależnie od zastosowanej metody wysyłki.
2. Najlepsza praktyka: korzystaj z konta e-mail OVHcloud z uwierzytelnionym SMTP
Zasada
Wysyłaj swoje wiadomości e-mail za pośrednictwem połączenia uwierzytelnionego SMTP z serwerem pocztowym OVHcloud, korzystając z konta e-mail powiązanego z Twoją domeną (na przykład contact@mydomain.ovh).
Takie podejście oferuje trzy główne korzyści:
- Gwarantowane uwierzytelnianie: serwer OVHcloud weryfikuje Twoją tożsamość przed przyjęciem wiadomości e-mail.
- Działające SPF i DKIM: wiadomość e-mail jest wysyłana przez serwer autoryzowany dla Twojej domeny i prawidłowo podpisana.
- Możliwość śledzenia: każda wysyłka jest powiązana ze zidentyfikowanym kontem, co pozwala szybko zareagować w razie nadużycia.
Dlaczego pole From: musi należeć do Twojej domeny
Pole From: Twojej wiadomości e-mail musi koniecznie zawierać adres należący do Twojej domeny (na przykład contact@mydomain.ovh), a adres ten musi być zgodny z kontem SMTP użytym do uwierzytelniania.
Jeżeli pole From: nie jest zgodne z domeną autoryzowaną w rekordzie SPF lub jeżeli podpis DKIM nie jest zgodny, serwery pocztowe odbiorców (Gmail, Outlook itp.) mogą odrzucić wiadomość e-mail lub zaklasyfikować ją jako spam.
Aby zmaksymalizować dostarczalność, upewnij się, że rekordy SPF, DKIM i DMARC są prawidłowo skonfigurowane w Twojej strefie DNS. Gmail i Yahoo Mail wymagają ich teraz od nadawców masowych. Zapoznaj się z naszymi przewodnikami:
Formularze kontaktowe: stałe pole From: i pole Reply-To: użytkownika
Częstym błędem jest umieszczanie adresu e-mail wprowadzonego przez użytkownika w formularzu bezpośrednio w polu From:. Na przykład odwiedzający wprowadza uzytkownik@gmail.com, a skrypt używa tego adresu jako nadawcy.
Takie postępowanie jest nieprawidłowe z dwóch powodów:
- Rekord SPF Twojej domeny nie autoryzuje serwerów Gmail (ani żadnego innego zewnętrznego dostawcy) do wysyłania w Twoim imieniu → niepowodzenie weryfikacji SPF.
- Wysyłasz "w imieniu" adresu, który do Ciebie nie należy → wysokie ryzyko zaklasyfikowania jako spam lub odrzucenia.
Prawidłowy schemat dla formularza kontaktowego:
W ten sposób, gdy odpowiadasz na otrzymaną wiadomość e-mail, Twój klient poczty wysyła odpowiedź na adres użytkownika za pośrednictwem pola Reply-To:, nie naruszając uwierzytelniania SPF/DKIM.
Oto jak dostosować przykład PHPMailer do formularza kontaktowego:
Nigdy nie przekazuj danych z formularza bezpośrednio do PHPMailer bez wcześniejszej walidacji. Użyj filter_var() dla adresu e-mail oraz htmlspecialchars() + strip_tags() dla pól tekstowych, aby zapobiec wstrzykiwaniu nagłówków wiadomości e-mail.
Ustawienia SMTP OVHcloud
Użyj następujących ustawień dla swojego konta e-mail MX Plan (dołączonego do Twojego hostingu WWW):
W przypadku rozwiązań E-mail Pro lub Exchange serwer SMTP jest inny. Zapoznaj się z dokumentacją każdego rozwiązania, aby poznać dokładne ustawienia.
Gdzie znaleźć swoje dane uwierzytelniające SMTP
Nazwa użytkownika SMTP to Twój pełny adres e-mail (na przykład contact@mydomain.ovh).
Hasło to hasło ustawione podczas tworzenia adresu lub zmienione w Panelu klienta OVHcloud. Jeżeli je zapomniałeś lub chcesz je zresetować, zapoznaj się z przewodnikiem Zmiana hasła do konta e-mail.
Rozwiązanie MX Plan dołączone do hostingu WWW podlega limitom wysyłki (około 200 wiadomości e-mail na godzinę na konto). Rozwiązania pocztowe nie są przeznaczone do masowej wysyłki: w przypadku dużych wolumenów — newsletterów lub masowych transakcyjnych wiadomości e-mail — użyj zewnętrznej usługi wysyłki transakcyjnej przeznaczonej do tego celu.
Przykład kodu PHP z PHPMailer
PHPMailer to referencyjna biblioteka PHP do wysyłania wiadomości e-mail za pośrednictwem SMTP. Zainstaluj ją za pomocą Composer:
Oto kompletny przykład uwierzytelnionego wysyłania SMTP:
Nigdy nie przechowuj hasła do konta e-mail jako zwykłego tekstu w wersjonowanym pliku PHP. Użyj pliku konfiguracyjnego wykluczonego z Twojego repozytorium Git (.gitignore).
Przy tej konfiguracji każda wiadomość e-mail wysłana z Twojej witryny jest:
- uwierzytelniona za pomocą serwera OVHcloud,
- podpisana rekordami SPF i DKIM Twojej domeny,
- możliwa do śledzenia w razie nadużycia lub problemu z dostarczalnością.
3. WordPress i inne systemy CMS: użyj wtyczki SMTP
3.1 Problem z domyślnym WordPress
Funkcja wp_mail() w WordPress korzysta w tle z funkcji PHP mail(). Dziedziczy zatem wszystkie problemy opisane w poprzedniej sekcji: brak uwierzytelniania, niekontrolowane pole From:, ryzyko spamu.
Rozwiązaniem jest zainstalowanie wtyczki SMTP, która zastępuje wp_mail() uwierzytelnionym połączeniem SMTP z Twoim serwerem pocztowym OVHcloud.
3.2 Konfiguracja WP Mail SMTP
WP Mail SMTP to najczęściej używana wtyczka do tej konfiguracji.
Instalacja:
- W panelu administracyjnym WordPress przejdź do Wtyczki > Dodaj nową wtyczkę.
- Wyszukaj
WP Mail SMTPi kliknij Zainstaluj teraz, a następnie Włącz.
Konfiguracja:
- Przejdź do WP Mail SMTP > Ustawienia w menu administracyjnym.
- W sekcji From wypełnij następujące pola:
- W sekcji Mailer wybierz Other SMTP.
- Wypełnij ustawienia SMTP:
- Kliknij Save Settings.
- W zakładce Tools użyj opcji Email Test, aby sprawdzić konfigurację.
Włącz opcję Force From Email, aby wszystkie wychodzące wiadomości e-mail używały skonfigurowanego adresu, nawet jeżeli zewnętrzna wtyczka próbuje użyć innego.
3.3 Alternatywa: FluentSMTP
FluentSMTP to lekka, bezpłatna alternatywa bez ograniczeń wolumenu wysyłki.
Instalacja:
- W panelu administracyjnym WordPress przejdź do Wtyczki > Dodaj nową wtyczkę.
- Wyszukaj
FluentSMTPi kliknij Zainstaluj teraz, a następnie Włącz.
Konfiguracja:
- Przejdź do FluentSMTP > Settings.
- Kliknij Add Connection i wybierz Other SMTP.
- Wypełnij te same ustawienia co dla WP Mail SMTP:
- Kliknij Save Connection, a następnie wyślij testową wiadomość e-mail.
3.4 Inne systemy CMS (Drupal, Joomla, PrestaShop)
Zasada jest taka sama dla każdego CMS lub frameworka: zastąp natywną funkcję wysyłki modułem lub konfiguracją uwierzytelnionego SMTP.
We wszystkich przypadkach ustawienia SMTP do użycia są takie same: serwer smtp.mail.ovh.net, port 465 (SSL/TLS) lub 587 (STARTTLS), z uwierzytelnianiem przy użyciu pełnego adresu e-mail i jego hasła.
Sprawdź również
Monitoring i zarządzanie automatycznymi wiadomościami e-mail na Twoim hostingu
Poprawa bezpieczeństwa e-maili poprzez rekord SPF
Poprawa bezpieczeństwa e-maili dzięki rejestracji DKIM
Poprawa bezpieczeństwa e-maili dzięki rejestracji DMARC
W celu uzyskania specjalistycznych usług (pozycjonowanie, rozwój itp.) skontaktuj się z partnerami OVHcloud.
Jeżeli chcesz skorzystać z pomocy w zakresie użytkowania i konfiguracji rozwiązań OVHcloud, zapoznaj się z naszymi ofertami wsparcia.
Dołącz do grona naszych użytkowników.