Azure VM, kurā darbojas VPN ierīce, atrodas divās neatkarīgās lēmumu sistēmās. Azure izlemj, no kurienes pakete atstāj apakštīklu, izmantojot maršrutu tabulas un tīkla kartes pārsūtīšanas iestatījumu. Pašas ierīces operētājsistēma izlemj, vai pārsūtīt atšifrēto paketi tālāk. Tunelis, kas paceļas nevainojami, tomēr var neizdoties otrajā sistēmā, un tieši tur apstājas lielākā daļa šādu izvietojumu.

Trīs viena ceļa īpašnieki

Ņemiet filiāles tīklu 192.168.50.0/24 un darba slodzes apakštīklu 10.0.10.0/24, un ierīce atrodas 10.0.0.4 tās pašas apakštīklā. Viens pieprasījums skar trīs atsevišķas konfigurācijas.

DecisionConfigured inHow it fails
Where the workload subnet sends branch trafficAzure route table entryTraffic leaves the subnet and never reaches the appliance
Whether a NIC may accept traffic not addressed to itAzure NIC IP forwardingPackets arrive and disappear at the interface
Whether the guest forwards decrypted trafficGuest OS or vendor appliance policyTunnel is up, workload is unreachable
Whether the workload accepts the sourceNSG and service policyRequests delivered, replies refused

Lielākajā daļā organizāciju katru rindu pārvalda cita komanda, tāpēc šī kļūda parasti pienāk kā trīs biļetes, nevis viena.

Maršruts, kas norāda uz ierīci

Saistiet maršrutu tabulu ar darba slodzes apakštīklu un piešķiriet filiāles prefiksam nākamo lēcienu ar tipu Virtual appliance un 10.0.0.4 kā adresi. Izmantojiet ierīces sasniedzamo privāto adresi, nekad tās publisko VPN ieejas punktu. Nākamajam lēcienam jābūt adresei, ko darba slodzes apakštīkls jau spēj sasniegt. Atstājiet pārējo darba slodzes maršrutēšanu mierā, ja vien neesat apzināti nolēmis aizstāt noklusējuma maršrutu.

Turiet ierīci tās pašas apakštīklā un pārliecinieties, ka maršruts, kas sūta filiāles trafiku uz ierīci, neuzķer arī pašas ierīces izejas ceļu. Šāda cilpa izskatās kā veselīgs tunelis bez atbildēm, un to ir ļoti nepatīkami atkļūdot pulksten 2 naktī.

Tīkla kartes karodziņš, ko visi aizmirst

Azure ir IP pārsūtīšanas iestatījums katrai tīkla kartei, un tas pēc noklusējuma ir izslēgts. Tas pastāv tāpēc, ka pārsūtošā karte saņem paketes, kas adresētas kam citam, un to klusa nomešana ir drošā noklusējuma vērtība visiem pārējiem.

az network nic update --resource-group rg-net --name appliance-nic --ip-forwarding true ieslēdz to vienai saskarnei. Microsoft norādījumi par pārsūtīšanu tīkla kartē prasa šo iestatījumu katrā pievienotajā kartē, kas pārsūta trafiku, tāpēc vienas kartes ierīcei tas tomēr jāiestata šajā kartē.

Karodziņš nav maršruts un nav ugunsmūra noteikums. Tā ieslēgšana piešķir atļauju un neko vairāk.

Ko viesis dara ar atšifrēto paketi

Kad tunelis beidzas, pašas ierīces steks pieņem nākamo lēmumu. Linux viesī IPv4 pārsūtīšana ir izpildes laika iestatījums, un sysctl -w net.ipv4.ip_forward=1 tas saglabājas līdz nākamajai ielādei. Saglabājiet to failā /etc/sysctl.d/ tā vietā. Ražotāja ierīcei ir savs ekvivalents, un Linux instrukcijas, kas ielīmētas ražotāja platformā, parasti nedara absolūti neko.

Viesa ugunsmūra politika atkal ir atsevišķa, tāpat kā darba slodzes tīkla drošības grupa. UDP 500 un 4500 atļaušana uz VM publisko adresi aizsargā tuneli; tas nepasaka neko par to, vai atšifrēts filiāles pieprasījums var sasniegt darba slodzes portu.

Izsekojiet vienu pieprasījumu un tā atbildi

Izvēlieties vienu atļautu plūsmu un izsekojiet tai no sākuma līdz beigām. Filiālei ir vajadzīgs maršruts 10.0.10.0/24 caur vietnes savienojumu, ierīcei ir vajadzīgs piegādes ceļš uz darba slodzes apakštīklu, un darba slodzes apakštīklam ir vajadzīgs atgaitas maršruts uz filiāli.

Izlemiet agri, vai projekts saglabā filiāles avota adresi vai to pārveido. NAT maina to, ko redz darba slodze, tāpēc tās piekļuves noteikumiem būtu jāapraksta modelis, kuru jūs patiešām izvēlējāties, nevis minēta vārtejas adrese.

Veiksmīga rokasspiediena apliecina vienu šīs ķēdes posmu. Ceļš ir pilnīgs, kad atbilde atgriežas caur to pašu ierīci un darba slodzes pašas politika to atļauj.

Saistītie raksti