Przejdź do treści

Ustawienia plików cookie

Prosimy wybrać, na które rodzaje plików cookie Państwo zezwalają. Wybór można zmienić w dowolnym momencie w Ustawieniach plików cookie na dole każdej strony. Polityka prywatności

Niezbędne

Zawsze włączone

Potrzebne do logowania, zachowania koszyka i zapamiętania wyborów. Są zawsze włączone.

Jakie pliki cookie?
  • weboke_sessie, weboke_klant, weboke_remember: sesja i pozostanie zalogowanym
  • weboke_basket: koszyk
  • wkBtwIncl: wyświetlanie cen z VAT lub bez VAT
  • wok_cookies: wybór dotyczący plików cookie, 12 miesięcy

Mierzą, która reklama prowadzi do odwiedzin lub zamówienia, abyśmy nie płacili za reklamy, które nic nie dają.

Jakie pliki cookie?
  • Google Ads przez Google Tag Manager (_gcl_au, _gcl_aw), do 90 dni
  • OpenAI Ads, reklamy w ChatGPT
  • wok_aff: przez którego partnera trafili Państwo do nas (program partnerski), 60 dni

4,6

Kraj i język

Każdy kraj ma własną stronę z cenami i stawką VAT tego kraju.

Wyświetl

HSTS i nagłówki bezpieczeństwa dla Państwa strony internetowej

Wraz z każdą stroną serwer WWW wysyła nagłówki: krótkie wiersze z instrukcjami dla przeglądarki. Częściowo decydują one o tym, jak bezpiecznie przeglądarka obchodzi się z Państwa witryną. W tym artykule wyjaśniamy, czym jest HSTS, jakie są inne nagłówki bezpieczeństwa oraz jak je skonfigurować i przetestować.

Najpierw witryna musi mieć działający certyfikat i przekierowywać odwiedzających na https. Więcej na ten temat w artykułach Aktywacja i odnawianie certyfikatu SSL oraz rozwiązywanie problemów oraz Obowiązkowe przekierowanie odwiedzających na https.

Jak działa HSTS?

Przekierowanie na https ma jeden słaby punkt: pierwsze żądanie przez http jest jeszcze nieszyfrowane. Ktoś w tej samej sieci, na przykład w publicznym wifi, może je przechwycić. HSTS (HTTP Strict Transport Security) rozwiązuje ten problem. Witryna wysyła przez https następujący nagłówek:

Strict-Transport-Security: max-age=31536000

Przeglądarka zapamiętuje wtedy, że może otwierać Państwa witrynę wyłącznie przez https. Jeśli odwiedzający wpisze później http://, przeglądarka sama zamieni to na https, zanim cokolwiek zostanie wysłane przez sieć. Nagłówek HSTS odebrany przez zwykłe http przeglądarka ignoruje.

ElementZnaczenie
max-ageJak długo przeglądarka pamięta instrukcję, w sekundach. Test internet.nl uznaje za wystarczający okres co najmniej jednego roku (31536000).
includeSubDomainsObowiązuje również dla wszystkich subdomen, takich jak shop.twojadomena.pl i mail.twojadomena.pl.
preloadProśba o wpisanie na listę wbudowaną w przeglądarki (hstspreload.org). Wtedy chroniona jest nawet pierwsza wizyta. Wymaga to m.in. okresu jednego roku, includeSubDomains oraz https na wszystkich subdomenach. Usunięcie z listy trwa długo.
max-age=0Usuwa zapamiętaną instrukcję przy następnej wizycie przez https.
Prosimy włączać HSTS dopiero wtedy, gdy https działa wszędzie. Jeśli przeglądarka zapamiętała HSTS i napotka błąd certyfikatu, odwiedzający nie zobaczy przycisku pozwalającego mimo to kontynuować. Jeśli certyfikat wygaśnie lub nie obejmuje adresu z www, witryna będzie dla tych odwiedzających niedostępna do czasu rozwiązania problemu. Przy includeSubDomains dotyczy to również każdej subdomeny, na przykład starej strony kamery lub drukarki bez certyfikatu. Dlatego warto wdrażać to stopniowo: zacząć od krótkiego max-age, na przykład jednego dnia (86400), sprawdzić, czy wszystko działa, i stopniowo zwiększać wartość do jednego roku.

HSTS w WebOké

Na większości naszych serwerów serwer WWW domyślnie wysyła HSTS dla każdej witryny otwieranej przez https: Strict-Transport-Security: max-age=31536000. Oznacza to jeden rok, bez includeSubDomains i bez preload. Nie muszą Państwo nic w tym celu robić. Na kilku serwerach ta funkcja nie jest domyślnie włączona; tam należy włączyć ją samodzielnie. Czy witryna już wysyła HSTS i z jaką wartością max-age, można sprawdzić w narzędziach deweloperskich przeglądarki lub w teście internet.nl (patrz niżej).

Przełącznik HSTS w DirectAdmin

W DirectAdmin należy przejść do Domeny i kliknąć nazwę domeny. Jeśli opcja Bezpieczne połączenie SSL jest włączona, przy HSTS widoczny jest przełącznik Włącz HTTP Strict Transport Security. Następnie należy kliknąć Zapisz, aby zachować zmiany. Instrukcję krok po kroku znajdą Państwo w artykule Zawsze przekierowuj odwiedzających na https.

Jeśli witryna już wysyła HSTS, przełącznik nie jest potrzebny. Prosimy włączać go tylko wtedy, gdy witryna jeszcze nie wysyła HSTS. HSTS należy konfigurować w jednym miejscu: w DirectAdmin albo w .htaccess, nie w obu. Jeśli przeglądarka otrzyma dwa nagłówki HSTS, użyje tylko pierwszego.

Pozostałe nagłówki bezpieczeństwa

NagłówekPrzed czym chroniWartość na początek
X-Content-Type-OptionsPrzeglądarka sama zgaduje, czym jest plik, przez co przesłany „obrazek” może zostać wykonany jako skrypt.nosniff (jedyna poprawna wartość)
Content-Security-Policy: frame-ancestors lub X-Frame-OptionsClickjacking: inna witryna niewidocznie ładuje Państwa stronę w ramce, tak że odwiedzający nieświadomie klikają Państwa przyciski.frame-ancestors 'self' lub starszy nagłówek X-Frame-Options: SAMEORIGIN
Referrer-PolicyPo kliknięciu linku do innej witryny przeglądarka przesyła adres poprzedniej strony, czasem zawierający wyszukiwaną frazę lub numer zamówienia.strict-origin-when-cross-origin lub bardziej restrykcyjne same-origin albo no-referrer. Internet.nl uznaje za prawidłowe tylko wartości restrykcyjne.
Permissions-PolicyOkreśla, z jakich funkcji przeglądarki mogą korzystać strona i osadzone ramki, np. kamery, mikrofonu i lokalizacji.camera=(), microphone=(), geolocation=() wyłącza te trzy funkcje. Jeśli witryna korzysta z którejś z nich, należy ją pominąć.
Content-Security-Policy (pełna)Ogranicza, skąd mogą być ładowane skrypty, style i obrazy. Znacznie utrudnia to wstrzykiwanie złośliwych skryptów (XSS).Indywidualnie dla każdej witryny. Należy unikać unsafe-inline, unsafe-eval i symboli wieloznacznych.

Konfiguracja w .htaccess

Poniższe wiersze należy umieścić na początku pliku .htaccess w katalogu public_html domeny. Najpierw prosimy wykonać kopię pliku.

<IfModule mod_headers.c>
  Header always set X-Content-Type-Options "nosniff"
  Header always set Content-Security-Policy "frame-ancestors 'self'"
  Header always set Referrer-Policy "strict-origin-when-cross-origin"
  Header always set Permissions-Policy "camera=(), microphone=(), geolocation=()"
  # Alleen als je site nog geen HSTS meestuurt (zie hierboven):
  # Header always set Strict-Transport-Security "max-age=31536000"
</IfModule>

Wiersz z HSTS jest zakomentowany: prosimy usunąć znak # tylko wtedy, gdy witryna jeszcze nie wysyła HSTS (patrz wyżej). includeSubDomains należy dodać dopiero wtedy, gdy mają Państwo pewność, że każda subdomena obsługuje https. W przypadku WordPressa nagłówki można też skonfigurować za pomocą wtyczki. Prosimy wybrać znaną, nadal aktualizowaną wtyczkę i konfigurować każdy nagłówek w jednym miejscu: we wtyczce albo w .htaccess.

Pełna Content-Security-Policy może zepsuć witrynę: zbyt restrykcyjna reguła zablokuje na przykład statystyki, przycisk płatności, osadzone wideo lub okno czatu. Prosimy najpierw przetestować ją za pomocą nagłówka Content-Security-Policy-Report-Only. Nie blokuje on niczego, ale pokazuje w konsoli przeglądarki, co zostałoby zablokowane. W razie wątpliwości warto powierzyć to twórcy strony lub zacząć tylko od frame-ancestors.

Na VPS z nginx lub Caddy

Na VPS nie korzystają Państwo z DirectAdmin, a często również z .htaccess. Nagłówki ustawia się wtedy w konfiguracji serwera WWW. Żaden z tych serwerów nie wysyła HSTS ani tych nagłówków automatycznie.

nginx: w bloku server dla portu 443:

add_header Strict-Transport-Security "max-age=31536000" always;
add_header X-Content-Type-Options "nosniff" always;
add_header Content-Security-Policy "frame-ancestors 'self'" always;
add_header Referrer-Policy "strict-origin-when-cross-origin" always;

Dzięki always nagłówki są wysyłane również ze stronami błędów. Uwaga: jeśli w bloku location znajduje się własna dyrektywa add_header, reguły z bloku server przestają obowiązywać dla tej lokalizacji. Należy je wtedy powtórzyć lub umieścić w osobnym pliku dołączanym wszędzie za pomocą include. Konfigurację można przetestować poleceniem nginx -t i przeładować poleceniem systemctl reload nginx.

Caddy: w bloku witryny w pliku Caddyfile:

header {
	Strict-Transport-Security "max-age=31536000"
	X-Content-Type-Options "nosniff"
	Content-Security-Policy "frame-ancestors 'self'"
	Referrer-Policy "strict-origin-when-cross-origin"
}

Zmianę należy załadować poleceniem systemctl reload caddy. Informacje o konfiguracji witryny z nginx lub Caddy znajdą Państwo w artykułach nginx z certyfikatem Let's Encrypt oraz Caddy: witryna z automatycznym https w przewodniku po VPS.

Testowanie

  • Internet.nl: prosimy wpisać domenę w teście witryny na internet.nl.
  • Przeglądarka: należy otworzyć witrynę, nacisnąć F12 (lub wybrać Zbadaj), przejść do karty Sieć, ponownie załadować stronę i kliknąć pierwsze żądanie. W sekcji Nagłówki odpowiedzi (Response Headers) widać wszystko, co wysyła serwer.
  • Wiersz poleceń: curl -sI https://twojadomena.pl/ wyświetla nagłówki.

Po każdej zmianie prosimy sprawdzić, czy witryna, formularze i strona płatności nadal działają. Ponadto warto na bieżąco aktualizować CMS, wtyczki i motywy. Zobacz Zabezpieczanie wp-login.php w WordPressie.

Dalsza lektura

Chcą Państwo dowiedzieć się więcej? Zapraszamy na bezpłatny kurs Bezpiecznie online dla przedsiębiorców, lekcja 4.2 Państwa witryna: https, HSTS i nagłówki bezpieczeństwa, lub na bezpłatny kurs WordPressa, lekcja 7.4 Wzmacnianie witryny: uprawnienia, nagłówki i wtyczki bezpieczeństwa.

Czy ten artykuł był pomocny?

← Powrót do DirectAdmin i panel sterowania WebOké

Chwileczkę…

Konfiguracja domen

Dla każdej domeny można ustawić serwery nazw, powiązanie z hostingiem oraz to, kto zostanie właścicielem.

Wczytywanie domen…