Kam pieder adrese, maršruts, DNS un ugunsmūris Linux VPN?
Linux VPN vajag vienu pārvaldes institūciju katram objektam: ierīcei, adresei, maršrutiem, DNS, ugunsmūrim. Pierakstiet šo karti, pēc tam definējiet, ko atjauno palaišana, atkārtota savienošana un demontāža.
Divi skripti, kas cīnās par vienu un to pašu maršrutu, ir ierastā Linux VPN problēmas forma, ko reģistrē kā maršrutēšanas kļūdu. Viena komponente izveido tuneļa ierīci, otra pievieno noklusējuma maršrutu, trešā pārraksta risinātāja konfigurāciju, bet ceturtā pārlādē ugunsmūra noteikumus. Jebkura no tām var atcelt citas darbu, un uzvarētājs ir vienkārši tā, kas palaista pēdējā. Jautājums, uz ko ir vērts atbildēt, nav par to, kuru pakotni instalēt, bet gan par to, kura komponente ir pilnvarota katram stāvokļa gabalam.
Pierakstiet šo karti vienreiz, un lielākā daļa atkārtotas savienošanas kļūdu pārstās būt noslēpumainas. Svarīgi ir četri objekti: ierīce un tās adreses, maršruti un politikas noteikumi, DNS konfigurācija un ugunsmūris.
Ierīce un tās adreses
Tuneļa ierīci izveido vai nu pārvaldnieks, kas zina profilu, vai dēmons, ko kāds palaidis ar roku. Abi izkārtojumi strādā paši par sevi; to sajaukšana nē. Ja profilu pārvalda NetworkManager, lai tas pārvalda arī ierīci, un nepalaidiet nepārvaldītu OpenVPN procesu pret to pašu tuneļa nosaukumu.
Pierakstiet, kas noņem ierīci, kad sesija beidzas. Ierīce, kas pārdzīvo savu sesiju, ir visbiežākais novecojušu adrešu un tām sekojošā apjukuma avots.
Maršruti un politikas noteikumi
Tieši maršrutos īpašumtiesību konflikti nodara redzamu kaitējumu. Savienojuma pārvaldnieks instalē noklusējuma maršrutu tunelim un konkrētāku maršrutu attālajam tīklam; pēc tam ar roku rakstīts skripts pievieno savu noklusējuma maršrutu ar citu metriku un klusi uzvar vai zaudē atkarībā no laika. Izlemiet, kuri ieraksti ir saistīti ar savienojumu, kuri ir pastāvīga politika un kura komponente tos atsvaidzina pēc atkārtotas savienošanas. Pēc tam turiet pārējās komponentes ārpus šīs tabulas.
Politikas noteikumi pelna tādu pašu skaidrību, jo noteikums, kas norāda uz tabulu, kuru neviens neaizpilda, rada melno caurumu, kas izskatās tieši kā miris tunelis. Ja noteikums pastāv, lai kaut kur spiestu satiksmi, tabulai, kuru tas izvēlas, jābūt uzturētai tam pašam īpašniekam.
DNS vienmēr ir atsevišķs īpašnieks
Risinātāja dēmons darbojas kā sava procese ar savu identitāti, tāpēc tas nejauši nepārmanto tuneļa maršrutēšanas lēmumus. Kad VPN spiež DNS serverus, kaut kam tas jāpārvērš konfigurācijā katrai saitei, ko risinātājs ievēro, un kaut kam tā pēc jānoņem.
Šeit mīts ir tāds, ka vārdu servera ierakstīšana profilā maina to, kurp iet vaicājumi. Tas maina to, kas tiek teikts risinātājam, nevis to, kuru ligzdu risinātājs izmanto augšup. Pārbaudiet ar vaicājumu un maršruta meklēšanu, nevis paļaujoties uz failu.
Ugunsmūra stāvoklis un tas, kas to atjauno
Ugunsmūra noteikumi ir visbiežāk pārrakstītais objekts VPN resursdatorā. Pārvaldnieks var pievienot NAT vai pārsūtīšanas noteikumus katram savienojumam, kamēr ugunsmūra serviss palaišanas laikā pārlādē saglabātu noteikumu kopu un tos izdzēš. Izvēlieties vienu pilnvaru politikai un padariet otru par tās patērētāju, vai pieņemiet, ka pārlāde klusi maina uzvedību. Ar savienojumu saistītie izņēmumi pieder failam, ko ielādē tas pats īpašnieks, nevis iptables komandai, kas ierakstīta problēmu novēršanas laikā.
Ja noteikumiem jāpārdzīvo atkārtota savienošana, sakiet to skaidri. Ja nav jāpārdzīvo, sakiet arī to, jo nākamais inženieris pieņems ērtāko atbildi.
Dzīves cikls: palaišana, atkārtota savienošana, demontāža
Piešķiriet īpašnieku katram no šiem trim brīžiem. Palaišanas laikā izlemiet, kas sagatavo priekšnosacījumus un kādā secībā. Maigas pārlādes laikā atcerieties, ka ierīce var izdzīvot, bet sesijas stāvoklis ne, tāpēc jādarbojas validētājam, nevis veidotājam. Demontāžas laikā noņemiet tikai to, ko izveidoja šis savienojums, jo visu maršrutu atiestatīšana vai visa ugunsmūra iztīrīšana nav tas pats, kas viena tuneļa izņemšana no ekspluatācijas.
Novērošanai ip monitor link address route rāda kodola izmaiņas to rašanās laikā, bet tas ziņo par notikumiem, nevis nodomu: dzēsts maršruts neko nepasaka par to, kurš process to dzēsa. Savienojiet to ar īpašumtiesību karti, un mulsinoša izslēgšana kļūst par īsu kandidātu sarakstu.
Izņēmumiem arī ir cena. Visas ierīču klases atzīmēšana par nepārvaldītu, lai izvairītos no konflikta, nodod šo stāvokli nevienam, un tas ir lēmums, nevis labojums.