Strona 1 z 1

Jak zezwolić na ruch HTTPS tylko do serwerów z zaufanym CA?

: 11 stycznia 2011, 12:26
autor: maxwell11
Witam.

Czy istnieje możliwość konfiguracji iptables lub squida tak aby przepuszczał ruch HTTPS z LAN do Internetu ale tylko do serwerów, które posiadają certyfikat podpisany przez zaufany CA?
Przy czym listę zaufanych CA chciałbym móc samodzielnie modyfikować.

Pozdrawiam.

: 13 stycznia 2011, 14:52
autor: Pacek
Według mnie nie ma takiej możliwości. Ruch jest szyfrowany między dwoma końcami a więc między Twoim komputerem (przeglądarką) a serwerem końcowym (np. serwisem banku). Wszystko co jest pomiędzy (np. squid, firewall itp.) nie ma możliwości w ingerencję przesyłanej zawartości, ponieważ gdyby to było możliwe, to squid musiałby umieć rozszyfrować całą Twoją transmisję, czego definitywnie nie chcemy prawda?
Przy czym listę zaufanych CA chciałbym móc samodzielnie modyfikować.
Zaufane centra certyfikacyjne (CA) są standardowo dodane do przeglądarki. Wszystko co nie jest dodane nie jest zaufanym centrum certyfikacji. Jeżeli sam sobie stworzyłeś centrum certyfikacji, to owszem możesz sobie taki certyfikat dodać do listy w przeglądarce internetowej i wtedy wszystkie certyfikaty wytworzone przez Twoje centrum certyfikacji są zaufane. Jeżeli jednak się mylę to proszę o korektę.

: 13 stycznia 2011, 15:35
autor: maxwell11
Witam,

nie chodzi mi o ingerencję w treść zaszyfrowanej wiadomości w pakietach przechodzących przez firewall/squid. Nie chcę jej znać. Uważam jednak, że skoro podczas połączenia do serwera HTTPS, zwraca on informację o swoim certyfikacie to powinna istnieć metoda umożliwiająca weryfikację czy certyfikat ten jest podpisany przez zdefiniowane CA. Jest to etap SSL handshake więc nie ma jeszcze mowy o przesyłaniu zaszyfrowanych danych pomiędzy przeglądarką a serwerem.
Załącznik ssl_intro_fig1.gif nie jest już dostępny
Metoda ta mogłaby być implementowana na proxy dla wszystkich użytkowników sieci LAN.

: 13 stycznia 2011, 21:31
autor: Pacek
Uważam jednak, że skoro podczas połączenia do serwera HTTPS, zwraca on informację o swoim certyfikacie to powinna istnieć metoda umożliwiająca weryfikację czy certyfikat ten jest podpisany przez zdefiniowane CA.
Przecież SSL handshake jest wykonywany przez dwa końce połączenia. Więc oczywiście zwraca informację o certyfikacie ale końcowi połączenia i tam jest weryfikowany przez przeglądarkę. Wszystko co jest po drodze (np squid) według mnie nie może ingerować w takie połączenie.