Dwa przepływy pakietów przechodzą przez bramę Shorewall, która kończy OpenVPN, i tylko jeden z nich jest zaszyfrowany. Pierwszy to transport klienta do nasłuchu VPN na interfejsie skierowanym do internetu. Drugi to odszyfrowane żądanie, które opuszcza interfejs tunelu, do serwera biurowego lub usługi na bramie. Zmapuj oba, zanim zmienisz politykę, ponieważ reguła spełniająca pierwszy nie robi nic dla drugiego.

Narysuj oba przepływy, zanim zmienisz politykę

Zapisz przepływy jako wiersze ze źródłem, celem, protokołem i portem. Na ścieżce zewnętrznej źródłem jest publiczny adres klienta, a celem port nasłuchu bramy; Shorewall traktuje to jako ruch z internetu do zapory. Na ścieżce wewnętrznej źródłem jest zakres adresów tunelu, a celem zatwierdzona usługa. Oba wiersze mają różnych właścicieli, nawet gdy jeden administrator utrzymuje oba.

FlowZone relationshipWhat to constrain
Encrypted OpenVPN transportInternet to the firewall hostThe listener's actual protocol and port
Decrypted request to a LAN serviceVPN clients to the LAN zoneOne approved server and service
Decrypted request to the gatewayVPN clients to the firewall hostOnly the local services required
Request to another VPN clientVPN clients to VPN clientsDenied unless deliberately required

Dodaj wiersz tylko wtedy, gdy żądanie kończy się na samej bramie, na przykład dostęp do resolvera lub administracji. Usługa na hoście podlega polityce wejścia hosta, a nie ścieżce przekazywanej. Mieszanie obu jest tym, przez co wąska reguła tunelu w końcu ujawnia interfejs administracyjny.

Przypisz strefę tunelu i zakres interfejsu

Strefa podróżnego jest deklarowana w /etc/shorewall/zones, interfejs tunelu jest dołączany w /etc/shorewall/interfaces, a połączenie zewnętrzne jest opisane w /etc/shorewall/tunnels. Dopasuj się do składni zainstalowanego wydania, ponieważ kolejność kolumn i nazwy opcji zmieniły się między głównymi wersjami. Przykładowy port z przewodnika nie jest powodem, by zezwalać na port inny niż ten, na którym demon faktycznie nasłuchuje. TCP i UDP nie są wymienne tylko dlatego, że liczby się zgadzają.

Przewodnik grupuje interfejsy za pomocą tun+. Na hoście z więcej niż jednym tunelem ten znak wieloznaczny może umieścić drugi VPN o innym poziomie zaufania w tej samej strefie. Przejrzyj zakres względem interfejsów, które faktycznie istnieją, i trzymaj nazewnictwo w cyklu życia menedżera połączeń, zamiast ręcznie edytować nazwy interfejsów.

Historyczny przewodnik zawiera znacznie starsze przykłady konfiguracji OpenVPN, a jego porady kryptograficzne nie powinny być kopiowane do obecnego wdrożenia. Pożycz zamiast tego model stref i przepływów. Podstawę kryptograficzną weź z utrzymywanej polityki OpenVPN bramy.

Zezwól tylko na tę ścieżkę, którą sklasyfikowałeś

Szeroka akceptacja ze strefy VPN do LAN to schemat początkowy, a nie gotowa polityka. Zapisz dozwolone źródło klienta, rzeczywisty adres usługi, protokół i port. Następnie przeczytaj reguły powyżej i domyślną wartość strefy, ponieważ wąski dodatek nie unieważnia szerokiego zezwolenia, które już pasuje. Ruch do hosta bramy jest odrębną relacją od ruchu przekazywanego przez nią.

Ruch między klientami wymaga własnej decyzji. client-to-client OpenVPN i routeback Shorewalla wpływają na to, czy klienci mogą się nawzajem osiągnąć, i żadnego nie należy włączać tylko po to, by działała jedna aplikacja LAN. Zdecyduj, gdzie egzekwowana jest izolacja, zanim ją przetestujesz.

Utrzymaj ścieżkę powrotną w tym samym planie. Usługa lub jej router musi wiedzieć, jak zwrócić ruch do zakresu tunelu, albo projekt musi świadomie przekształcić źródło i to w zamierzonym zakresie.

Sprawdź, a następnie udowodnij obie ścieżki

Sprawdź konfigurację, zanim cokolwiek uruchomisz ponownie, i pozostaw otwartą niezależną sesję administracyjną na wypadek, gdyby nowa polityka była błędna.

shorewall check

Po czystym sprawdzeniu zastosuj konfigurację i odczytaj, co Shorewall załadował. Odczyty te opisują działającą politykę, a nie to, co plik zdaje się mówić.

shorewall show zones
ip route get 192.168.10.20

Przetestuj jedno nowe dozwolone żądanie i jedno celowo odrzucone żądanie z tego samego klienta. Udany uścisk dłoni OpenVPN dowodzi tylko wymiany zewnętrznej; dozwolona usługa i odrzucony zasób dowodzą zamierzonej polityki wewnętrznej. Następnie połącz klienta ponownie i powtórz, ponieważ nazwa i adres interfejsu tunelu mogą się zmieniać między sesjami. Jeśli wynik się różni, popraw zakres strefy, a nie rozszerzaj reguły.

Powiązane artykuły