Zabezpieczanie witryny za pomocą protokołu HTTPS

HTTPS (HyperText Transfer Protocol Secure) to internetowy protokół komunikacyjny chroniący integralność i poufność danych przesyłanych między komputerem a witryną. Użytkownicy oczekują, że będą mogli korzystać z witryn internetowych w sposób bezpieczny i z zachowaniem prywatności. Zachęcamy do stosowania protokołu HTTPS, który chroni połączenia użytkowników z witryną niezależnie od jej zawartości.

Dane przesyłane za pomocą protokołu HTTPS chroni protokół TLS (Transport Layer Security), który ma 3 główne warstwy zabezpieczeń:

  1. Szyfrowanie – szyfruje przesyłane dane, co zapobiega ich odczytywaniu przez intruzów. Uniemożliwia to przechwytywanie rozmów prowadzonych przez użytkownika, śledzenie jego działań na różnych stronach i wykradanie jego informacji, gdy przegląda on witrynę.
  2. Integralność danych – pozwala na wykrywanie wszystkich celowych lub innych zmian i uszkodzeń danych podczas przesyłania.
  3. Uwierzytelnianie – potwierdza, że użytkownik komunikuje się z właściwą witryną. Chroni ono przed atakami typu „man in the middle” i wzbudza zaufanie użytkowników, co przekłada się na korzyści biznesowe.

Sprawdzone metody wdrażania protokołu HTTPS

Używaj sprawdzonych certyfikatów bezpieczeństwa

Gdy wprowadzasz protokół HTTPS w witrynie, musisz uzyskać certyfikat bezpieczeństwa. Wystawia go urząd certyfikacji, który wcześniej weryfikuje, czy adres internetowy faktycznie należy do Twojej organizacji. Certyfikat chroni Twoich klientów przed atakami typu „man in the middle”. Podczas konfigurowania certyfikatu wybierz klucz 2048-bitowy, aby maksymalnie zwiększyć bezpieczeństwo. Jeśli masz już certyfikat ze słabszym kluczem (1024-bitowym), przejdź na wersję 2048-bitową. Przy wyborze certyfikatu witryny pamiętaj o tych wskazówkach:

  • Certyfikat uzyskaj od wiarygodnego urzędu certyfikacji, który oferuje pomoc techniczną.
  • Zdecyduj, jakiego rodzaju certyfikatu potrzebujesz:
    • pojedynczego certyfikatu do zabezpieczenia 1 adresu (www.example.com),
    • certyfikatu do zabezpieczenia wielu domen o określonych adresach (np. www.example.com, cdn.example.com, example.co.uk),
    • certyfikatu z symbolem wieloznacznym do zabezpieczenia adresu z wieloma dynamicznymi subdomenami (np. a.example.com, b.example.com).

Użyj trwałych przekierowań po stronie serwera

Przekierowuj użytkowników i wyszukiwarki do strony lub zasobu HTTPS, korzystając z trwałych przekierowań po stronie serwera.

Zadbaj, aby Googlebot mógł indeksować Twoje strony HTTPS

  • Użyj narzędzia do sprawdzania adresów URL, aby zobaczyć, czy Googlebot ma dostęp do Twoich stron.
  • Nie blokuj dostępu do stron HTTPS za pomocą pliku robots.txt.
  • Nie stosuj tagów noindex na stronach HTTPS.

Stosuj mechanizm HSTS

Zalecamy, aby witryny HTTPS obsługiwały mechanizm HSTS (HTTP Strict Transport Security). HSTS informuje przeglądarkę, że ma ona automatycznie ładować strony używające protokołu HTTPS – nawet wtedy, gdy w pasku adresu użytkownik wpisze http. Informuje też wyszukiwarkę Google, że w wynikach wyszukiwania ma podawać bezpieczne adresy URL. Wszystko to zmniejsza ryzyko wyświetlania użytkownikom niezabezpieczonych treści.

Aby umożliwić działanie funkcji HSTS, korzystaj z serwera, który ją obsługuje, i ją włącz.

HSTS zwiększa bezpieczeństwo, ale komplikuje cofanie zmian. Zalecany sposób wdrażania tego mechanizmu:

  1. Najpierw opublikuj strony HTTPS bez HSTS.
  2. Zacznij stosować nagłówki HSTS z niską wartością parametru max-age. Przyjrzyj się, jak wygląda natężenie ruchu ze strony użytkowników i klientów oraz jak działają obiekty zależne, np. reklamy.
  3. Powoli zwiększaj zakres działania mechanizmu HSTS max-age.
  4. Jeśli mechanizm HSTS nie obniża komfortu użytkowników ani nie wpływa negatywnie na działanie wyszukiwarek, możesz dodać witrynę do listy wstępnego ładowania HSTS, z której korzysta większość najpopularniejszych przeglądarek. Zwiększy to bezpieczeństwo i przyspieszy działanie witryny.

Pamiętaj o typowych problemach

Gdy zabezpieczasz witrynę protokołem TLS, unikaj tych błędów:

Typowe błędy i sposoby ich rozwiązywania
Wygasłe certyfikaty Pamiętaj, by certyfikat zawsze był aktualny.
Certyfikat zarejestrowany dla niewłaściwej nazwy witryny Sprawdź, czy Twój certyfikat obejmuje wszystkie nazwy hosta obsługiwane przez witrynę. Jeśli na przykład certyfikat uwzględnia tylko witrynę www.example.com, użytkownik, który wpisze adres example.com (bez przedrostka www.), nie będzie mógł otworzyć strony z powodu niezgodności z nazwą wskazaną w certyfikacie.
Brak obsługi rozszerzenia SNI (Server Name Indication) Upewnij się, że serwer WWW i przeglądarki użytkowników obsługują rozszerzenie SNI. Wszystkie nowoczesne przeglądarki są zgodne z SNI, jednak na potrzeby tych starszych musisz utworzyć specjalny adres IP.
Problemy z dostępem robotów Nie blokuj robotom dostępu do witryny HTTPS w pliku robots.txt. Więcej informacji
Problemy z indeksowaniem Gdy to tylko możliwe, zezwalaj wyszukiwarkom na indeksowanie stron w witrynie. Nie używaj tagu noindex.
Stare wersje protokołów Stare wersje protokołów mają luki w zabezpieczeniach. Upewnij się, że masz najnowsze biblioteki protokołu TLS i stosujesz najnowsze wersje protokołów.
Różne poziomy zabezpieczeń Na stronach HTTPS umieszczaj tylko treści HTTPS.
Inna zawartość wersji HTTP i HTTPS Upewnij się, że wersje HTTP i HTTPS witryny mają taką samą zawartość.
Błędy kodu stanu HTTP w witrynie HTTPS Sprawdź, czy witryna zwraca prawidłowy kod stanu HTTP. Na przykład 200 OK w przypadku dostępnych stron, a 404 lub 410 w przypadku tych, które nie istnieją.

Migracja z protokołu HTTP do HTTPS

Google traktuje migrację witryny z protokołu HTTP do HTTPS jako przeniesienie witryny ze zmianą adresu URL. Może to przejściowo wpłynąć na niektóre statystyki ruchu. Zobacz, o czym warto pamiętać podczas przenoszenia witryny.

Pamiętaj, aby dodać nową usługę HTTPS do Search Console. Search Console odróżnia witryny HTTP od HTTPS, dlatego dane tych usług w Search Console nie są wspólne.

Więcej wskazówek na temat umieszczania stron HTTPS w witrynie znajdziesz w najczęstszych pytaniach dotyczących migracji do protokołu HTTPS.

Więcej zasobów dotyczących wdrażania protokołu TLS

Oto dodatkowe materiały na temat wdrażania protokołu TLS w witrynie: