OpenVPN konektatzen da baina ez da ezer pasatzen: aurkitu paketea hiltzen den geruza
Trafikorik gabeko tunel konektatuak gutxienez bost kausa ditu. Froga ezazu entzulea, harrapatu kanpoko paketea, eta gero utzi kontagailuei edo arrastoei araua izendatzen.
OpenVPN konektatuta dagoela dio eta trafikoa ez da mugitzen, gutxienez bost hutsegite erlazionatu gabe estaltzen dituen esaldia. Zein geruza ari den huts egiten jakin aurretik suebakiko arauak aldatzeak ezezagunak biderkatzen ditu eta hurrengo ingeniariari nahaspila uzten dio. Horren ordez, prozesutik kanpora lan egin, beheko urrats bakoitzak etapa bat garbitzen baitu edo paketea hiltzen den lekua estutzen baitu. Ordenak garrantzia du hemen: zein helbide lotuta dagoen jakin aurretik hartutako harrapaketa batek zerbait frogatuko du, baina ez behar duzuna.
Socket-a lotuta dago edo ez dago lotuta
Aktibo dagoela jakinarazten duen zerbitzu bat inoiz pentsatu ez zenuen helbide edo garraio batekin lotuta egon daiteke. Galdetu socket-ari berari: ss -lunp UDP entzuleak zerrendatzen ditu eta ss -ltnp TCP-ak, eta irakurtzea merezi duen zutabea tokiko helbidea da, ez egoera.
Erantzun huts batek normalean hiru gauzetatik bat esan nahi du: prozesua abiarazi ondoren irten da, beste konfigurazio fitxategi bat kargatu du, edo markatzen den helbideaz bestelako batean entzuten du.
ss -lunp | grep 1194
ss -ltnp | grep 1194
local direktibak entzulea helbide bakarrera finkatzen du, beraz, host berean beste leku batera zuzendutako bezeroa ukatzen da, zerbitzuak kanpotik osasuntsu dirudien bitartean. Instantzia-izen batek ere inoiz editatu ez zenuen fitxategi batera seinala dezake, eta hori bi profil elkarren ondoan exekutatzen dituzten hostetan gertatzen da.
Harrapatu kanpoko paketea, ez tunela
Iragazi interfaze fisikoan eta benetako portuan, zeure interfazea ordezkatuta: tcpdump -ni eth0 udp port 1194. Itzultzen ezer ez duten irteerako paketeek goian dagoena seinalatzen dute: hornitzailearen iragazketa, NAT gailu bat edo uste duzuna ez den urruneko helbide bat. Bi norabideetako isiltasunak bezeroaren bideratzea edo tokiko suebakia seinalatzen ditu. Tunelaren aurrerapenik gabe iristen diren erantzunek kontrol-kanala seinalatzen dute, hau da, gako edo zifratze desadostasuna, ez iragazketa.
Harrapatu bi norabideak eta eduki fitxategia labur. Harrapaketa luze batek hiru segundo interesgarriak lurperatzen ditu, eta erantzuna ia beti lehen trukean dago.
Lehenengo kontagailuak, arrastoa bakarrik gezurra esaten dutenean
Hasi kontagailuekin, ez baitu ezer kostatzen. Edo nft list ruleset edo iptables -L -n -v hemen garrantzitsua den galdera bakarra erantzuten du: araua bat etorri da? Ordenak emaitza erabakitzen du, lehen bat-etortzeak irabazten baitu, horregatik geroagoko ACCEPT baten aurretik DROP zabal batek ACCEPT hura hilda uzten du eta horregatik arau bat gehitzeak hain gutxitan konpontzen du ezer.
Jabetzak ere jendea estropezu egiten du. Kernelak tokian sortutako paketeak socket-a ireki zuen prozesuari egozten dizkio, eta OpenVPN normalean root gisa exekutatzen da, beraz erabiltzaile-ID arrunt bati lotutako arauak ez du inoiz tunelaren beraren trafikoa ikusten. Egiaztatu jabearen UID-a araua oker dagoela erabaki aurretik.
Kontagailuak anbiguo jarraitzen dutenean bakarrik merezi du erregistroak zarata, eta orduan ere zati estu baterako: abiadura mugatzen duen eta bere lerroei aurrizkia jartzen dien iptables araua, edo meta nftrace set 1 daraman nftables araua nft monitor trace martxan dagoela. Arrastoak paketea onartu edo baztertu zuen katea eta araua izendatzen ditu. Kendu biak gero eta eduki kanpoan karga-erregistroa.
Egiaztatu garraioa ere. TCP-ra mugatutako suebaki zerbitzu batek ez du ezer esaten zenbaki horretako UDP entzule bati buruz, beraz ondo irakurtzen den arau batek pakete guztiak bazter ditzake oraindik.
Bideratzea eta itzulerako bidea
Onartutako pakete bat oraindik desagertzen bada, bere helmugarako bidea aztertu behar da. ip route get helbide baterako aukeratutako ibilbidea jakinarazten du, eta alderantzizko bidearen iragazketak taula nagusiak inoiz aukeratuko ez lukeen interfaze batetik datorren erantzun bat bazter dezake. Sintomak suebakiaren bazterketa baten itxura zehatza du, horregatik egiaztapen hau beste NAT arau baten aurretik dator.
Gateway batean, aztertu birbidalketa eta forward katea input katea beharrean. Gero egiaztatu urruneko aldeak badakiela iturburu-helbidea nola iritsi, lanean ari den irteerako bideak ezer itzultzen ez duenean isiltasuna baita bi kasuetan.
Erregistroak zer esan behar duen
Aldaketa bakoitzeko, idatzi probatu zenuen etapa, irakurri zenuen froga eta kontagailuaren balioa haren bi aldeetan. Ohar horrek egiten du "orain funtzionatzen du" hurrengo berrikuspenean biziraule.
Bi lasterbidek oharra zintzo mantentzen dute. Hostetik inoiz irten ez zen pakete bat ezin zuen beste nonbait arau batek baztertu, urruneko aldearen konfigurazioa zenbat eta sinesgarriagoa izan. Irten eta itzuli zen pakete batek galdera sare-geruzaren gainetik eramaten du, eta han suebakiaren kontagailuek ez dute ezer gehiago esateko.