13.4. SSL

From: kravietz@ceti.com.pl (Paweł Krawczyk)

Jak postawić bezpieczny serwer WWW? Trzeba uruchomić serwer WWW z wbudowaną obsługą SSL, wygenerować dla niego certyfikat, a następnie zapłacić za podpisanie tego certyfikatu jednemu z Urzędów Certyfikujacych (Certifying Authorities)

Najpopularniejsze serwery obsługujące that to: Apache-SSL, Stronghold, Microsoft IIS, Netscape Commerce i Netscape Enterprise, Roxen Zeus Raven SSL Lotus Domino IBM ICSS

Autor tego opracowania z powodzeniem wykorzystuje na firmowym WWW serwer Apache-SSL. W tym wypadku oprócz samego serwera potrzebne jest także zaplecze w postaci SSLeay

Decydując się na komercyjny serwer należy się dokładnie dowiedzieć czy nie jest on objęty ograniczeniami eksportowymi, żeby nie kupić kota w worku (czyli serwera obsługującego klucze o maksymalnej wielkości 40 bitów). Ograniczeniami tymi objęte są serwery wyprodukowane w USA, ze względu na amerykańskie ograniczenia eksportu technik kryptograficznych.

Co to jest SSLeay? SSLeay jest zestawem programów i bibliotek stanowiących implementację procedur SSL 2.0 (wersje do 0.6.x), SSL 3.0 (od 0.8.x), oraz TLS 1.0 (od 0.9.x). SSLeay służy do generowania oraz zarządzania kluczami i certyfikatami, pozwala także na podpisywanie certyfikatów (ma funkcje CA). Z SSLeay korzysta m.in. Apache-SSL.

Najbardziej godne polecenia opisy SSLeay:



Czy wszystkie przeglądarki akceptują wszystkie certyfikaty? Nie. Taka jest konsekwencja centralnego zarządzania certyfikatami w SSL. Certyfikat autoryzowany na podstawie przedstawionych przez jego posiadacza dokumentów i innych dowodów tożsamości jest naturalnie bardziej godny zaufania niż wygenerowany samodzielnie przez administratora serwera.

Różne przeglądarki zachowują się różnie po wejściu na serwer legitymujący się certyfikatem podpisanym przez nieznanego CA:

Dwa pierwsze programy nie sprawiają natomiast problemów gdy uprzednio otrzymają certyfikat CA, który podpisał certyfikat danego serwera. Certyfikat CA powinien być plikiem w formacie DER typu application/x-x509-ca-cert Sposób jego generowania i udostępniania przeglądarkom jest opisany materiałach TAMU

Kto zajmuje się podpisywaniem certyfikatów? Instytucje podpisujące certyfikaty serwerów oraz wydające certyfikaty osobiste różnią się przede wszystkim regulaminem (rodzaj serwera, wymagane dokumenty) i ceną.

Najpopularniejszym --- i jednym z najdroższych CA---jest VeriSign. Jego certyfikaty akceptują wszystkie wersje Netscape i MSIE.

Innym popularnym CA jest firma Thawte Consulting, która bierze za to 100 USD i jej certyfikaty są rozpoznawane przez wszystkie przeglądarki. Thawte certyfikuje także Apache-SSL.

Poza tym:



Gdzie znaleźć więcej informacji o SSL?


Inne protokoły bezpiecznego WWW.

Istniejące propozycje można podzielić na dwa rodzaje: protokoły warstwy transportowej (SSL, TLS, PCT) i warstwy aplikacyjnej (Shen, S-HTTP). Pierwsze z nich działają tuż nad warstwą TCP/IP i mogą służyć do przenoszenia różnych protokołów wyższych warstw --- FTP, POP3, SMTP oraz HTTP. Nic nie stoi także na przeszkodzie, by np. protokół S-HTTP działał na połączeniu zabezpieczonym przez SSL. Kwestie bezpiecznych protokołów WWW wyjaśnia dobrze artykuł The Race to Secure Cyberspace Dano Garsona
UWAGA!!! Dokument ten powstawał w latach 1990-tych. W chwili obecnej jego wartość jest prawdopodonie nikła. Nie jest on i nie będzie przerabiany i rozszerzany -- wymagałoby to napisania go od nowa, a nie widzę wielkiego sensu takiej pracy. Jeśli jednak będzie on użyteczny -- zapraszam.