Gdy IPsec zawodzi, trasa zapasowa nie jest polityką zapasową
Wpis w tabeli routingu odpowiada na pytanie, dokąd pakiet może pójść, a nie czy może przejść bez ochrony. Zdecyduj, który z dwóch dozwolonych wyników kupujesz.
Jedna lokalizacja traci tunel, a tabela routingu nadal pokazuje w pełni użyteczną ścieżkę do celu przez internet. Ktoś proponuje przełączenie na nią i nazywa tę zmianę poprawką routingu. Pakiet mógłby pójść tą drogą; pytanie, którego nikt nie zadał, brzmi, czy wolno mu dotrzeć bez ochrony. To różne odpowiedzi z różnych tabel, a ich mieszanie jest sposobem, w jaki awaria staje się incydentem.
Dwa wyniki, które w tabeli routingu wyglądają identycznie
Osiągalność mówi, że pakiet ma dokąd pójść. Polityka bezpieczeństwa mówi, co ma się z tym pakietem stać po drodze, a oba są egzekwowane przez różne mechanizmy. Trasa może istnieć dla przepływu, który polityka musi odrzucić, i ta kombinacja nie jest błędną konfiguracją. Właśnie rozdzielenie tych dwóch pytań czyni plan awaryjny w ogóle weryfikowalnym.
Zatem ścieżka awaryjna staje się projektem dopiero wtedy, gdy ktoś zdecyduje, który z dozwolonych wyników obowiązuje. Dopóki ta decyzja nie istnieje, trasa zapasowa jest pokusą, a nie planem.
Model polityki ma trzy wyroki, a nie dwa
Architektura IPsec rozdziela ruch, który musi zostać odrzucony, ruch, któremu wolno ominąć ochronę, oraz ruch, który musi być chroniony. To trzy różne instrukcje, a środkowa jest świadomym wyjątkiem, nie trybem awarii. Czytanie ich jako pary tworzy fałszywy wybór między tunelem a otwartą drogą.
Brakujące skojarzenie nie awansuje po cichu reguły ochrony na obejście. Polityka nadal mówi chroń, więc pakiet czeka albo ginie, a takie zachowanie jest kontrolą działającą zgodnie z zapisem, nie dowodem, że polityka jest zepsuta.
Zapisz wymaganie dla swojego przepływu jako jedno z trzech zdań: zatrzymaj się, dopóki nie istnieje chroniona ścieżka, przełącz się na inną chronioną ścieżkę, albo użyj ścieżki, której osobno wolno działać bez IPsec. Tylko trzecie zmienia kontrakt bezpieczeństwa i wymaga właściciela, który może go podpisać. To zdanie trafia do rejestru zmian, a nie do czyjejś pamięci. Recenzenci zatwierdzają drugie zdanie i odrzucają trzecie, i obie decyzje są rozsądne, gdy są widoczne.
Obejście to kontrakt, który podpisują oba końce
Ścieżka alternatywna wymaga adresów routowalnych, jawnego dopuszczenia tam, gdzie dociera, oraz drogi powrotnej działającej w obu kierunkach. Prywatne adresy lokalizacji nie stają się osiągalne dlatego, że trasa domyślna gdzieś wskazuje.
Uwierzytelnianie znaczy tyle samo co adresacja. Ruch, który omija tunel i dociera do granicy oczekującej ochrony, jest odrzucany nawet wtedy, gdy trafia na właściwy interfejs, więc polityka odbioru musi świadomie zaakceptować taki kształt. Wyjątek, na który strona odległa nigdy się nie zgodziła, jest awarią z dodatkowymi krokami.
Usunięcie selektora lub poluzowanie mapy, aby zapas zadziałał, nie jest kontrolowanym wyjątkiem. Rozszerza to, co jest wyłączone, pozostawia stronę odległą z egzekwowaniem czegoś innego i może zmienić, która reguła tłumaczenia pasuje do przepływu.
Tłumaczenie i dopuszczenie zmieniają arytmetykę
Tłumaczenie może przedstawić inny widok adresów, ale mapowania w przód i wstecz muszą zgadzać się ze ścieżką alternatywną. Mapowanie jednokierunkowe daje połączenie, które się otwiera, a potem zawiesza. Pół mapowania jest gorsze niż nic, bo wygląda jak postęp.
Dopuszczenie to druga połowa. Strona odbierająca musi mieć wyraźną regułę dla tego ruchu, własne rejestrowanie i sposób odróżnienia zatwierdzonego wyjątku od błędu o trzeciej nad ranem.
Odtworzenie należy do projektu
Zapisz, jak wykrywana jest awaria, która polityka wybiera zastępstwo i co dzieje się z sesjami, które działały, gdy to nastąpiło. Nowe połączenie może się udać po przełączeniu, podczas gdy starsze utrzymuje stan związany z adresem, który już nie obowiązuje.
Preferuj inną chronioną ścieżkę, gdy wymaganiem jest ciągła ochrona. Tam, gdzie niechroniony wyjątek jest naprawdę konieczny, ogranicz go źródłami, celami, usługami i czasem trwania oraz zapisz, jak jest wycofywany.
Testuj oba stany, nie tylko awarię
Odbiór obejmuje przypadek nieudanego tunelu i stan przywrócony, z kontrolą aplikacji przy każdym. Ciekawym wynikiem nie jest to, że pakiety wciąż się poruszały, ale to, że poruszały się wyłącznie w ramach kontraktu wybranego przez organizację.
Dodaj także test wycofania. Wyjątek, którego nikt nie potrafi wyłączyć, po cichu stał się stałą polityką, i dokładnie przed tym chroniła pierwotna reguła. Umieść na nim datę ważności i wskazanego recenzenta, inaczej wyjątek przeżyje wszystkich, którzy go rozumieli.