SNI

Kasia Bielawska
>
Kasia Bielawska

Server Name Indication

SNI (Wskazanie Nazwy Serwera) to rozszerzenie protokołu TLS, które umożliwia serwerowi obsługę wielu certyfikatów bezpieczeństwa na jednym, wspólnym adresie IP. Dzięki SNI, przeglądarka internetowa już na samym początku nawiązywania połączenia (podczas tzw. powitania, czyli TLS handshake) informuje serwer, z jaką konkretną nazwą domeny chce się połączyć.

W przeszłości każdy certyfikat ssl wymagał unikalnego adresu IP, co było kosztowne i marnowało kurczące się zasoby IPv4. SNI całkowicie zmieniło te zasady, stając się fundamentem nowoczesnego internetu.

Jak działa mechanizm SNI?

Wyobraź sobie, że adres IP to ogromny blok mieszkalny, a domeny to poszczególni lokatorzy. Bez SNI „kurier” (przeglądarka) podchodzi do bloku, ale nie wie, do kogo dokładnie ma dostarczyć przesyłkę, dopóki ktoś nie otworzy drzwi. SNI to tabliczka z nazwiskami na domofonie – kurier od razu wie, kogo wywołać, a serwer może wyciągnąć z „szuflady” właściwy klucz szyfrujący dla tej konkretnej strony.

Proces ten przebiega następująco:

  1. Przeglądarka wysyła zapytanie o stronę, dołączając nazwę hosta (np. twojadomena.pl) w rozszerzeniu SNI.
  2. Serwer identyfikuje domenę przed nawiązaniem bezpiecznego połączenia.
  3. Serwer prezentuje odpowiedni certyfikat powiązany z tą domeną.
  4. Następuje szyfrowane połączenie przez protokół HTTPS.

Co daje SNI w praktyce?

  • pozwala uruchomić wiele domen na jednym serwerze,
  • ułatwia korzystanie z osobnych certyfikatów dla różnych stron,
  • obniża koszty infrastruktury,
  • wspiera nowoczesne wdrożenia oparte na TLS i SSL.

SNI to mechanizm, który pomaga serwerowi wybrać właściwy certyfikat dla konkretnej domeny jeszcze przed zestawieniem bezpiecznego połączenia. Dzięki niemu wiele stron może działać na jednym adresie IP bez konfliktów certyfikatów. To ważny element współczesnego internetu, hostingu i bezpieczeństwa stron internetowych.