Kiel konstrui VPN-failover-politikon sur la enkursigilo sen likoj
Decidu, kion la trafiko faru kiam la preferata tunelo falas: sekura tunelo, ordinara WAN aŭ blokado. Poste konstruu kaj testu tion sur la enkursigilo.
La failover funkciis ĝuste laŭ la agordo, kaj ĝuste tio estis la problemo. Kiam la ĉefa tunelo falis, la enkursigilo movis la defaŭltan itineron al la kabla modemo, tekkomputiloj daŭre retumis, kaj neniu telefonis. Du tagojn poste iu rimarkis, ke la financa kunhava dosierujo estis atingebla tra la malferma interreta vojo dum ses horoj. VPN-failover-politiko sur enkursigilo ne estas artifiko de enkursigo; ĝi estas decido pri tio, kion la trafiko faru kiam la preferata vojo mankas, kaj tiu decido devas ekzisti antaŭ ol la vojo malaperos.
Decidu la rezulton antaŭ ol elekti la detektilon
Kutime tri rezultoj estas sur la tablo: sendi la tuŝitajn klientojn tra sekura tunelo, lasi ilin uzi la ordinaran WAN, aŭ tute bloki ilin. Notu, kiu validas por kiu VLAN, SSID aŭ aparatklaso. Unu ebena regulo “ŝalti al WAN” estas kiel la financa dosierujo supre finiĝis sur publika vojo.
La tri ne estas interŝanĝeblaj. WAN-rezervo tenas subtenan tablon respondanta telefonojn dum ĝi malkaŝas internajn nomojn al la loka solvilo. Sekura tunelo konservas la politikon sed povas surteriĝi sur elira adreso, kiun la alia flanko ne akceptas. Blokado estas ĝusta por salajra VLAN kaj malĝusta por gastreta reto, kiu neniam uzis la tunelon.
| Rezulto | Taŭga por | Kio rompiĝas |
|---|---|---|
| Sekura tunelo | La politiko devas teniĝi, necesas fora aliro | Nova elira adreso, revena itinero, pli malrapida ŝlosilreŝanĝo |
| Ordinara WAN | Gasta aŭ nur publika trafiko | Internaj nomoj, malkaŝo de DNS kaj IPv6 |
| Blokado | Salajro, administrado, io ajn nur-VPN | Uzantoj perdas ĉian aliron kaj telefonas al vi |
Akomodu la detektilon al la paneo, kiun vi vere timas
Manshak-stato, interfaca stato kaj uzebla plusendo estas tri malsamaj signaloj, kaj nur la lasta gravas por uzanto. WireGuard-paro povas montri freŝan manshakon dum la suprenfluo de la provizanto ĵetas pakaĵojn en nigran truon. OpenVPN kliento povas resti ĉe “konektita” post kiam la itinero, kiun ĝi puŝis, ĉesis solviĝi.
En pfSense la praktika aranĝo estas pordegogrupo nutrita de dpinger, kiu testas monitoran adreson kaj markas pordegon kiel malsupra kiam perdo aŭ latento transiras ĝiajn sojlojn. Direktu tiun monitoradon al io preter la tunelo, ekzemple gastiganto en la fora LAN aŭ publika adreso, kiun vi atingas tra ĝi. Direkti ĝin al la propra para adreso de la tunelo mezuras la parton, pri kiu vi jam scias, ke ĝi vivas.
Konstruu la grupon tiel, ke la rezervo restu la lasta rimedo
Uzu ŝtupojn anstataŭ unu ebena membrolisto. Ĉefa en ŝtupo 1, sekura tunelo en ŝtupo 2, WAN en ŝtupo 3 nur por la VLAN-oj, kies politiko permesas tion. En pfSense tio troviĝas sub System > Routing > Gateway Groups: aldonu ambaŭ pordegojn, donu al ili malsamajn ŝtupojn, agordu Trigger Level al member down plus packet loss, konservu, kaj poste apliku la grupon kiel interfacan defaŭlton aŭ en la kampo Gateway de la fajroŝirmaj reguloj, kiuj bezonas ĝin.
Por OpenVPN-klienta kazo en pfSense 2.5 kaj pli nova, la agordo Default Gateway de la kazo decidas, ĉu la tunelo entute anstataŭas la sisteman defaŭltan itineron. Politika enkursigo laŭ regulo kondutas tiel, kiel vi atendas, nur kiam la itinero, kiun vi supozas ekzisti, estas efektive instalita. Kontrolu Status > Gateways post la ŝanĝo anstataŭ fidi la tunelan statussimbolon.
Du agordoj kaŭzas la plej multan flagradon. Unu estas testintervalo pli mallonga ol la propra rekuniĝo de la provizanto. La alia estas grupo, kie ĉefa kaj rezerva dividas ŝtupon, do ambaŭ restas elekteblaj la tutan tempon. Aldonu histerezon per perdo- kaj latentaj sojloj antaŭ ol viaj uzantoj sentos la transirojn anstataŭ vi.
Fermu la vojojn, kiujn la tunelo neniam posedis
Unue DNS-likoj. La solvilo daŭre respondas sur la WAN kaj plusendas ekster ĝin, do nomoj daŭre solviĝas tra la ISP dum la trafiko estas fiksita al la tunelo. Limigu la elirajn interfacojn de la solvilo, puŝu la internan solvilon al la klientoj, kaj bloku pordon 53 por ĉio alia en la nur-VPN VLAN-oj.
IPv6 bezonas sian propran decidon. Dulasta LAN povas perdi la tunelon kaj konservi funkciantan tutmondan defaŭltan IPv6-itineron, do retumiloj preferas IPv6 kaj eliras tra la WAN dum IPv4 aspektas perfekte enfermita. Aŭ enkursigu IPv6 en la tunelon, aŭ ĉesu anonci tutmondan prefikson dum la tunelo estas malsupra. Duona politiko estas pli malbona ol nenia, ĉar ĝi aspektas kvazaŭ ĝi funkcias.
Poste la revena vojo. Se la rezerva eliro uzas alian fontadreson, la alia flanko devas scii, kiel resendi trafikon al ĝi, kaj ĉiu stato ligita al la malnova adreso jam estas morta. Sesioj malfermitaj kiam la ĉefa falis ne migras; ili haltas ĝis ili finiĝas kaj la aplikaĵo decidas, kion fari pri tio.
Testu la falon, la flagradon kaj la vojon reen
Elprenu la ĉefan kun sendanĝera trafiko kuranta, poste legu kvar aferojn: Status > Gateways por la membrostatoj de la grupo, pfctl -ss por statoj ankoraŭ fiksitaj al la malnova pordego, traceroute de kliento por la elira vojo, kaj solvila demando por vidi, kiu servilo respondis.
Nun flagradu ĝin. Levu la ĉefan dum tridek sekundoj, malsupren dum tridek, dufoje. Se la trafiko postkuras ĉiun transiron, la sojloj estas tro striktaj aŭ la ŝtupoj malĝustaj. Riparu tion laŭ via horaro, ĉar alie provizanto faros tion laŭ sia.
Fine konfirmu, ke vi ankoraŭ povas administri la enkursigilon. Tenu eksterbandan vojon kiel konzolan kablon, administran VLAN aŭ poŝtelefonan modemon. Failover-testo, kiu ŝlosas vin ekstere, estas testo, kiun vi ne povas fini, kaj neatingebla enkursigilo ne povas reveni mem.
Antaŭ ol nomi la politikon preta, vi devus povi respondi kvar demandojn sen malfermi terminalon: kiuj VLAN-oj rajtas uzi la WAN dum la tunelo estas malsupra, kion la detektilo observas kaj kiom longe ĝi atendas, kiuj nomserviloj kaj IPv6-itineroj moviĝas kun la vojo, kaj kiel vi reeniras se ankaŭ la rezervo paneas. Se iu ajn respondo estas “kio ajn estis la defaŭlto”, la politiko ankoraŭ apartenas al la enkursigilo kaj ne al vi.