Dve končni točki za NAT operaterja in zaklenjen pisarniški usmerjevalnik ne pustita nobenih vhodnih vrat za posredovanje, odziv pa je vseeno zahtevati ena. Boljše vprašanje je, katera stran lahko kliče navzven in kateri dosegljivi storitvi je dovoljeno prenašati promet. Štiri zasnove odgovarjajo na to vprašanje različno in spodletijo na različne načine, ko je pot blokirana. Izbira med njimi je primerjava jamstev, ne imen protokolov.

Štiri zasnove, štiri različne obljube

Spodnja tabela je kratka različica. Srednji stolpec berite kot obljubo, ki jo lahko preizkusite, in desni stolpec kot obljubo, ki je nihče ni dal.

DesignWho initiatesPromise you getPromise you do not get
Routed VPN hubBoth ends, outbound to the hubA routed path to permitted prefixesAccess to services no policy allows
Peer traversal with ICEBoth peers to a rendezvous serviceA path tested between the two peersA direct path through every NAT
TURN relayClient outbound to a relayTransport that survives symmetric NATPeer discovery or a usable directory
Application brokerWorkstation outbound to a brokerOne audited application sessionSubnet-wide reachability

Katera vrstica velja, je odvisno od naloge in ne od naklonjenosti. Ena seja oddaljenega namizja, ena skrbniška lupina in dostop do celotnega zasebnega podomrežja so tri zahteve, ki ne potrebujejo iste vstopne točke, tudi ko se slučajno nanašajo na isti stroj.

Zvezdišče spremeni, kdo kliče navzven, ne tega, kaj je dovoljeno

V zasnovi z usmerjenim zvezdiščem oddaljeni prenosnik in delovna postaja, ali prehod lokacije pred njim, vsak odpreta odhodni tunel do storitve, ki jo oba dosežeta. Nič ne sprejme nezahtevane povezave na usmerjevalniku delovne postaje, in prav zato ta zasnova preživi NAT in deluje tudi, ko lokacija nima statičnega naslova. Nato zvezdišče usmerja promet med dvema notranjima naslovoma po svoji politiki.

Cena je, da mora zvezdišče obstajati, biti dosegljivo z obeh strani in ga mora nekdo upravljati. Odhodno filtriranje mora dovoliti prenos, in omrežje, ki ga blokira, bo zasnovo porazilo, čeprav posredovanje vrat ni bilo potrebno.

Subtilni del je, da sta dosegljivost in avtorizacija ločeni odločitvi, sprejeti na različnih mestih. Pot v predpono ne pove ničesar o tem, katero storitev na delovni postaji sme identiteta uporabljati, in pravilo požarnega zidu, ki dovoli tunel, ne pove ničesar o tem, ali se lahko račun prijavi. Nastavite oboje, preizkusite oboje in odločitev o avtorizaciji pustite pri sistemu, ki ima vir, ne pri usmerjevalni tabeli.

Prehod deluje le, kadar ga izvajata oba sklada

Prehod med enakovrednimi vozlišči je zmožnost določenega sistema, ne nastavitev, ki izboljša VPN. Interactive Connectivity Establishment zbere več kandidatnih naslovov in preizkuša pare, dokler eden ne deluje: kandidati gostitelja na lokalnih vmesnikih, strežniško odsevni kandidati, zgrajeni iz tega, kar razkrije NAT, in posredovani kandidati, dodeljeni na posredovalniku. Sam zasebni naslov ni pot, ker druga stran ne more usmerjati do njega.

Posredovani primer je vreden razumevanja, preden ga zavrnete. RFC 8656 opisuje TURN kot protokol, v katerem odjemalec prosi strežnik za posredovani transportni naslov, strežnik pa posreduje promet med tem odjemalcem in njegovimi enakovrednimi vozlišči. Posredovalnik torej nosi podatke, kar se bistveno razlikuje od imenika, ki le pomaga končnim točkam, da se srečajo. Izmenjava naslova posredovalnika z drugo stranjo je korak usklajevanja, ki ga mora opraviti aplikacija.

Česar ne morete obljubiti, je neposredna pot. Simetrični NAT in nekatere poslovne požarne zidove premagajo vrtanje lukenj, in ko se to zgodi, sistem bodisi pade nazaj na posredovalnik bodisi spodleti. Prav tako ne morete sklepati, da se dve prevedeni končni točki nikoli ne bosta mogli pogovarjati; podprt sklad z rezervo prek posredovalnika obstaja prav zato, ker pogosto se lahko. Odločite se, ali je pomembnejša razpoložljivost ali neposrednost, in nato preverite, katero pot je uvedba dejansko izbrala, namesto da bi predpostavili ugoden primer.

Posrednik je ožji od omrežja

Ko je zahteva ena aplikacija, sta posrednik aplikacij ali povratna povezava, ki jo začne delovna postaja, lahko najmanjši odgovor. Delovna postaja kliče navzven k posredniku, posrednik overi oddaljenega uporabnika in prenaša se le ta aplikacijska seja. Nobena pot v podomrežje delovne postaje ni ustvarjena, zato kompromitacija oddaljene seje ne podeduje poti do vsake naprave ob njej.

Ta ozkost ima ceno: vsaka dodatna aplikacija potrebuje svojo integracijo, in vse, kar aplikacija predpostavlja o lokalnem omrežju, na primer datotečna delitev, ki jo odpre na bližnjem strežniku, morda ne bo dosegljiva. Posredniki tudi zbirajo politiko in beleženje na enem mestu, kar je koristno, dokler to mesto ne postane izpad.

Primerjajte meje zaupanja, nato preizkusite pot

Zvezdišče, ki zaključuje tunele, lahko bere promet, ki ga usmerja. Posredovalnik lahko nosi neodvisno zaščiteno izmenjavo, ko aplikacija šifrira od konca do konca, posrednik pa običajno zaključi sejo, ki jo predstavi. Ugotovite, kje se zaščita dejansko konča, preden ugotovite, da sta dve zasnovi enakovredni, ker sta obe šifrirani.

Nato preverite, do česa delovna postaja dejansko doseže navzven, saj je vsaka zgornja zasnova odvisna od tega. Zaženite to na delovni postaji in zamenjajte ime gostitelja, ki ga nameravate uporabiti.

ss -lntup
nc -vz hub.example.com 443
curl -sS -o /dev/null -w "%{http_code}\n" https://hub.example.com

Zasnovo sprejmite šele potem, ko predvidena oddaljena operacija uspe pod dovoljeno identiteto, neodobrena identiteta je zavrnjena in vedenje, ko neposredna ali posredovana pot ni na voljo, je znano in dokumentirano. Vključite ponovno povezavo in običajni zagonski kontekst delovne postaje, ker seja, ki se je začela v pisarni prek LAN, ne preizkusi ničesar, od česar je odvisen oddaljeni dostop.

Sorodni članki