Otwarcie drugiej przeglądarki nie tworzy drugiej trasy VPN
Profile i okna prywatne rozdzielają stan przeglądarki, a nie ścieżki sieciowe. Druga trasa wymaga reguły dla poszczególnych aplikacji, serwera proxy lub przestrzeni nazw, a każde z nich ma swoją cenę.
Dwie przeglądarki, dwa okna, jedno na koncie służbowym i jedno na koncie prywatnym, i założenie jest takie, że teraz podążają różnymi ścieżkami. Nie podążają. Rozdzielenie profili trzyma pliki cookie osobno, podczas gdy decyzja o routingu zapada poniżej przeglądarki i nie wie, który profil o to poprosił. Druga ścieżka wymaga reguły, która ją wybierze, a miejsc, w których taka reguła może mieszkać, jest tylko kilka.
Rozdzielenie stanu to nie rozdzielenie ścieżki
Profil przeglądarki izoluje pamięć masową: pliki cookie, historię, rozszerzenia, a czasem dane logowania. Ta izolacja obowiązuje wewnątrz jednego drzewa procesów i nie ma nic do powiedzenia na temat tego, który interfejs niesie pakiet.
Okna prywatne idą dalej w wyglądzie i ani kroku dalej w routingu. Wszystko, co przeglądarka wysyła, nadal wychodzi ścieżką wybraną przez system operacyjny, chyba że coś między gniazdem a siecią to zmieni. Mylenie izolacji pamięci masowej z izolacją sieci tworzy oczekiwania, których nie obiecał żaden producent przeglądarek i których nie zaspokoi żaden test.
Co faktycznie wybiera trasę
Cztery rzeczy mogą wybrać inną ścieżkę: reguła VPN dla poszczególnych aplikacji dopasowana do pliku wykonywalnego lub pakietu, serwer proxy skonfigurowany w przeglądarce lub w systemie, przestrzeń nazw sieci albo kontener, oraz drugie urządzenie fizyczne. Każda z nich zmienia coś realnego i każda ma swoją cenę.
Reguła dla poszczególnych aplikacji to zwykła odpowiedź na platformach mobilnych, gdzie usługa VPN otrzymuje listę pakietów. Na komputerze stacjonarnym zależy to od klienta, a reguła dopasowana do pliku wykonywalnego obejmuje każdy profil, który ten plik otwiera. Jeśli dwa profile naprawdę potrzebują różnych ścieżek, zwykle potrzebują dwóch procesów o różnych tożsamościach zamiast dwóch kart. Dlatego wspólna instalacja przeglądarki nigdy nie może być granicą w projekcie opartym na profilach.
Serwery proxy na poziomie aplikacji dodają kolejnego pośrednika
Ustawienie serwera proxy w przeglądarce rzeczywiście tworzy osobną ścieżkę i tworzy też osobną relację zaufania z tym, kto obsługuje ten serwer. To uzasadnione rozwiązanie dla jednego profilu i nie jest równoznaczne z objęciem całego urządzenia.
Wybieraj serwer proxy świadomie: nasłuch SOCKS na tym samym hoście, uwierzytelniony serwer proxy wewnątrz tunelu albo usługa zdalna. Mieszanie serwera proxy z VPN w trybie pełnego tunelu tworzy zagnieżdżone ścieżki, w których tryby awarii się mnożą.
Sprawdź rzeczywiste żądanie każdej przeglądarki
Wyślij to samo żądanie z każdej przeglądarki i porównaj zaobserwowany adres wyjściowy, zamiast porównywać strony ustawień. Skonfigurowany serwer proxy, który po cichu nie potrafi się połączyć, to bardzo częsty sposób na powrót do domyślnej ścieżki.
curl -sS --max-time 8 https://api.ipify.org
curl -sS --max-time 8 --proxy socks5h://127.0.0.1:1080 https://api.ipify.org
dig +short example.com
Następnie powtórz żądanie z wymuszonym serwerem proxy i z wyłączonym tunelem, aby zobaczyć, która warstwa naprawdę niesie ruch. Zanotuj też odpowiedź DNS, ponieważ przeglądarka z własnym szyfrowanym resolwerem może całkowicie ominąć ścieżkę systemową i nadal pokazać oczekiwaną stronę.
Zapisz zamierzone przypisanie w dwóch wierszach: który proces używa której ścieżki i kto jest właścicielem każdej z nich. Miej też na oku tożsamości kont, ponieważ dwie ścieżki nie powstrzymują przedstawienia tego samego logowania obu celom. Sprawdź ponownie po następnej aktualizacji przeglądarki, ponieważ ustawienie serwera proxy łatwo zgubić i trudno zauważyć.