Exekutatu portu-egiaztapen bera bulegoko linea batetik eta VPN irteera batetik, eta bi erantzunek bat ez etorri dezakete inork aldatu ez duen helbide bati buruz. Hutsune hori bidetik eta zein ostalarik erantzun zuenetik dator, ez zerbitzua martxan dagoen ala ez. Hiru galderak bereizten dituzte azalpen horiek: zundak benetan zer galdetu zuen, zein ostalarik erantzun zion eta zure zerbitzariak zer erregistratu zuen. Joan horietatik ordena horretan eta idatzi erantzun bakoitza hurrengora pasa aurretik.

Konpondu zunda bi exekuzio konparatu aurretik

Egoera-hitz bat beste egoera-hitz batekin konpara daiteke biak esperimentu beretik atera direnean soilik. Bost eremuk finkatzen dute: urruneko aldeak ikusi zuen iturburu-helbidea, ebatzitako helmuga, portua, eskanerketaren mota eta ordua. Aldatu horietako edozein eta bigarren esperimentu bat egin duzu, lehenengoa birritan neurtu beharrean.

Egiaztatu iturburua beste guztia baino lehen, VPN bezero bat martxan egon baitaiteke trafikoa oraindik interfaze fisikotik irteten den bitartean. Galdetu urruneko aldeari zer ikusten duen, eta gero galdetu nukleoari zein interfaze aukeratu zuen:

curl -s https://ifconfig.me
ip route get 203.0.113.20

Sare ezberdinetako bi helbidek azalpena jadanik eskuan duzula esan nahi dute, eta gainerako egiaztapenek berretsi besterik ez dute egingo. Bat datozenean, harrapatu zunda arrazoi-bandera piztuta, egoera azalpen bati lotuta itzul dadin hitz huts gisa bakarrik egon beharrean. Eskanerketaren mota ere erregistro horretan sartzen da, galdetu zena deskribatzen baitu, itzuli zena ez. Iturbururik, metodorik eta denbora-markarik gabeko egoera ezin da ezerrekin konparatu:

nmap -sT -p 443,8443 --reason 203.0.113.20

Gorde irteera hori erregistroaren ondoan, hurrengo pertsonak ikusiko ez duen joan-etorriko buffer batean beharrean. Desadostasuna duten bi eskanerketa zintzok eztabaida izaten dute inork baldintzak idatzi ez dituenean soilik. Baldintzak finkatuta, edo emaitzak bat datoz eta galdera itxita dago, edo desberdinak dira eta aldea bideari buruzko egitate bat da.

Aurkitu zein ostalarik amaitu zuen esku-ematea

Osatutako esku-emate batek frogatzen du ostalari batek osatu zuela, eta ostalari horrek ez du zertan zure gogoan duzun prozesua izan. Karga-balantzagailu batek, alderantzizko proxya batek edo SYN proxya batek erantzun dezakete benetako zerbitzaria parte hartu aurretik, eta hori diseinu arrunta da, ez sintoma. Espero den izenerako baliozko ziurtagiriak ere ez du hori mugatzen, ziurtagiriak zerbitzu-harreman bat deskribatzen baitu eta ez baitu ezer esaten zein makinak amaitu zuen konexioa.

Nmap-en portu-egoeren erreferentzia oinarrizkotzat jotzen du hori: egoera batek zundak bidali zen lekutik zer beha zezakeen erregistratzen du, ez portuaren propietate bat. Irakurri egoera-hitz bat horrela eta desadostasuna zuten bi exekuzio koherenteak dirudite, aurkakotasunez beharrean, galdera portua irekita dagoen ala ez izatetik haren aurrean nor zegoen izatera pasatzen den bitartean.

Erantzun bigarren galderari backend-ean, ez kanpotik. Konexioak onartu eta gero bere upstream-era iristen ez den frontend batek zerbitzu osasuntsu baten kanpoko irudi zehatza sortzen du aplikazio motel batekin. Upstream-aren beraren erregistroak soilik bereizten ditu bi kasuak:

tail -n 5 /var/log/nginx/access.log
ss -ltnp 'sport = :443'

Log-lerroak aplikazioak benetan ikusi zuen bezero-helbidea erakusten du, eta bigarren komandoak portua 443 duen prozesua zure aplikazioa den edo haren aurrean dagoen zerbait den erakusten du. Biok zein helbide konektatu zen ados ez badaude, eskaera baten bi hankak ikusten ari zara eta txartelak hori esan beharko luke.

Egiaztatu zure arauak tunela errudun egin aurretik

Politika nahita ezarria da portu batek sare batean erantzuten eta bestean ez erantzutearen arrazoi ohikoena, eta eskura dagoen azalpenik interesik gabeena da. Sarbide-arauak iturburu bat baimendu eta gainerakoak baztertzeko daude, beraz irteera-aldaketa idatzi ziren gertaera bera da. Horregatik VPN bidezko egoera desberdin batek ez du erakusten hornitzaileak trafikoa ikuskatzen duenik. Zure iturburu-helbidea orain desberdina dela erakusten du, eta hori askoz baieztapen txikiagoa da.

Arau horiek zerbitzarian irakur daitezke, beraz irakurri itzazu sarearen erdiaz espekulatu beharrean. Zerrendatu bi helbide-tarteetatik edozein aipatzen duten iragazki-arauak, eta gero egiaztatu konexioa deabruraino iritsi zen ala ez:

nft list ruleset | grep -n -e 203.0.113 -e 198.51.100
journalctl -u sshd -n 50 | grep 203.0.113

Bigarren emaitza hutsa informatiboa da, ezer ez baitzen deabruraino iritsi eta galdera iragazki bati, segurtasun-talde bati edo bideari berari dagokio. Asmatzeak zerbitzuak zure iturburua ikusi eta bere erantzuna aukeratu zuela esan nahi du, eta erabaki hori normalean irakur dezakezun arau batean idatzita egoten da. Bi emaitzetako batek ere ez du hornitzaileari buruzko istorio bat babesten, eta biak pakete-harrapaketa bat baino merkeago egiaztatzen dira.

Irakurri garraioa, ziurtagiria eta erantzuna bereizita

Hiru geruzak hiru behaketa sortzen dituzte, eta horietako bat probatzen duen zunda batek ezin du beste bien berri eman. Gorde itzazu erregistroan lerro bereizi gisa, epai bakarrean tolestu beharrean, lerro bakoitzak bere moduan huts egiten baitu eta hutsegite-moduak hurrengoan nora begiratu esaten baitizue.

ObservationWhat it settlesWhat it leaves open
Connection completedA host on the path accepted the handshakeWhich host, and whether its upstream is reachable
Certificate valid for the nameThe endpoint holds a credential for that nameWhether the process behind it is the one you meant
Expected response bodyThe application handled the requestAnything about other ports or other paths
Connection refusedA host replied and nothing was listeningWhether a filter sits ahead of the refused port
TimeoutNo reply arrived before the deadlineDrop, blackhole route or an overloaded host

Komando bakar batek lehen hiru errenkadak sortzen ditu kontrolatzen duzun zerbitzu baten aurka. Jarri bere irteera erregistroan eskanerketaren ondoan, txat-mezu batean beharrean:

curl -v --resolve office.example:443:203.0.113.20 https://office.example/

Irakurri irteera ordenan: esku-emateak garraioaren galderari erantzuten dio, ziurtagiriaren subjektuak izenaren galderari eta erantzunaren gorputzak aplikazioaren galderari. Esku-ematearen lerroak arrakasta duenean eta erantzunarenak ez, upstream hautsia duen frontend bat duzu, ez portu blokeatu bat. Hori ireki zenuen txartelaren bestelakoa da, eta merezi du argi esatea.

Amaitu txartelean lau egitate idatziz: iturburu-helbidea, eskanerketaren mota, erantzun zuen ostalaria eta ordua. Geroagoko konparazio batek behar duen guztia lau horietan bizi da, eta kasua hurrengo hartzen duenak ez du zure terminalaren historiala izango. Lauak bete ezin badituzu, exekuzioa ez da amaitu.

Erlazionatutako artikuluak