Czy komercyjny VPN blokuje port 5432? Porównaj swoje opcje
Baza danych lub klient poczty, który zawodzi tylko przy włączonym VPN, trafia na filtr dostawcy, a nie na Twój firewall. Przetestuj port, a potem wybierz rozwiązanie.
Aplikacja codziennie rozmawiała ze swoją bazą danych z biura. Potem ktoś włączył komercyjnego klienta VPN na tym samym laptopie i połączenie zaczęło się resetować po uścisku dłoni. Nic w aplikacji się nie zmieniło, tunel zgłasza, że jest zdrowy, a firewall, którym zarządzasz, nie ma żadnej reguły blokującej. Zmieniła się ścieżka wyjścia: serwery dostawcy to współdzielone punkty końcowe o dużym ruchu, a dostawcy filtrują porty wychodzące, aby ograniczyć nadużycia. Porty baz danych i wysyłki poczty dostają najwięcej, bo to właśnie te porty przyciągają skanowanie i spam z anonimowej puli adresów.
Pięciominutowy test, który oddziela filtrowanie od wszystkiego innego
Z tej samej maszyny sprawdź jeden port, który musi być otwarty, i port, który zawodzi, na tym samym hoście, z tunelem włączonym, a potem wyłączonym. Użyj tej samej komendy za obu razem, aby jedyną zmienną był tunel:
Test-NetConnection db.example.com -Port 443
Test-NetConnection db.example.com -Port 5432
nc -vz -w3 db.example.com 5432Cztery wyniki pokrywają niemal każdy przypadek. Jeśli 443 działa, a 5432 zawodzi tylko przy włączonym tunelu, widzisz filtrowanie portów na ścieżce wyjścia. Jeśli oba zawodzą przy włączonym tunelu i oba działają bez niego, problem leży w routingu lub DNS, a nie w polityce portów. Jeśli oba porty się łączą, ale aplikacja nadal zawodzi, wina leży w uwierzytelnianiu lub TLS, a nie w osiągalności. A jeśli zawodzi tylko jedna lokalizacja serwera dostawcy, to jest polityka na serwer, więc zanim dotkniesz jakiejkolwiek konfiguracji, spróbuj innej lokalizacji.
Opcja pierwsza: tunel dzielony dla podsieci bazy danych
Jeśli laptop potrzebuje komercyjnego VPN tylko do innych celów, wyklucz zakres adresów bazy danych z tunelu, aby ruch nigdy nie wchodził do współdzielonego wyjścia. To najczystsza opcja, gdy obie ścieżki naprawdę nie muszą się spotkać, i nie kosztuje nic poza regułą routingu, którą możesz udokumentować. Kompromis jest taki, że tunel dzielony wprowadza drugą powierzchnię polityki: to, co jest wyłączone z tunelu, musi być zamierzone, a nie skutkiem ubocznym podsieci dodanej później przez kogoś.
Przestaje działać w momencie, gdy baza danych znajduje się w sieci, do której VPN ma dotrzeć, więc sprawdź to, zanim się na to zdecydujesz.
Opcja druga: własny punkt końcowy, własne wyjście
Uruchomienie małego punktu końcowego VPN na VPS daje ci kontrolę nad polityką wyjścia i nie angażuje żadnej współdzielonej puli. To opcja, którą warto uczciwie porównać z klientem komercyjnym: zyskujesz przewidywalny adres źródłowy i tracisz globalny zasięg oraz wygodę dostawcy. Dla zespołu, który potrzebuje portów bazy danych i poczty przez cały dzień, kompromis zwykle wypada na korzyść posiadania punktu końcowego, bo trybem awarii staje się twoja własna błędna konfiguracja, a nie cudza polityka przeciwnadużyciowa.
Porównaj oba pod kątem stabilności adresu źródłowego, tego, kto może czytać twój ruch, i tego, co się dzieje w dniu, w którym dostawca punktu końcowego zmieni własne filtrowanie.
Opcja trzecia: usuń laptop ze ścieżki
Zadanie CI, zaplanowany kontener lub host bastionu w dozwolonej sieci nie zależą od stanu tunelu człowieka. Dotrzyj do bazy danych przez tunel SSH z hosta, który jest już dozwolony, a laptop nigdy nie rozmawia z portem bezpośrednio. To opcja, która skaluje się, gdy kilka osób trafia na to samo ograniczenie, i to ona usuwa problem zamiast go obchodzić.
Wymaga więcej pracy z góry niż reguła tunelu dzielonego i nie pomaga tej jednej osobie, która właśnie teraz potrzebuje sesji interaktywnej.
Dlaczego dodanie adresu dostawcy do listy dozwolonych to złe porównanie
Dodanie adresu wyjścia dostawcy do listy dozwolonych bazy danych działa, a także daje dostęp każdemu innemu abonentowi, który w tej chwili dzieli ten adres. Dla repliki tylko do odczytu za wąsko przyznanym kontem aplikacji ekspozycja może być do zniesienia przez jeden dzień. Dla czegokolwiek zapisywalnego to nie jest kompromis wart nazwy, a rotujące adresy wyjścia pogarszają sprawę: każda zmiana serwera łamie regułę, a utrzymanie zaprasza szerokie wpisy CIDR, które niweczą sens listy dozwolonych.
Dedykowane lub statyczne adresy, tam gdzie dostawca je sprzedaje, to jedyna wersja tego, która się skaluje. Przypnij listę dozwolonych do adresu, który jest tylko twój, albo nie przypinaj jej wcale.
Cokolwiek wybierzesz, zapisz ścieżkę i powód. Następna osoba natrafi na to samo resetujące się połączenie i zacznie obwiniać aplikację.