Xuddi shu port tekshiruvini ofis liniyasidan va VPN chiqishidan ishga tushiring, va ikki javob hech kim o'zgartirmagan manzil haqida kelisha olmasligi mumkin. Bu farq yo'ldan va qaysi xost javob berganidan kelib chiqadi, xizmat ishlayotganidan emas. Uch savol bu izohlarni ajratadi: tekshiruv aslida nima so'radi, qaysi xost javob berdi va sizning serveringiz nima yozib oldi. Ularni shu tartibda ko'rib chiqing va keyingisiga o'tishdan oldin har bir javobni yozib qo'ying.

Ikki yugurishni solishtirishdan oldin tekshiruvni tuzating

Holat so'zini boshqa holat so'zi bilan faqat ikkalasi ham bir tajribadan chiqqan bo'lsa solishtirish mumkin. Besh maydon buni qotiradi: uzoq tomon ko'rgan manba manzili, hal qilingan manzil, port, skanerlash turi va vaqt. Ulardan birini o'zgartirsangiz, birinchisini ikki marta o'lchash o'rniga ikkinchi tajriba qilgan bo'lasiz.

Hamma narsadan oldin manbani tekshiring, chunki VPN mijozi ishlab turishi mumkin, ammo trafik hali ham fizik interfeysdan chiqadi. Uzoq tomondan nima ko'rayotganini so'rang, keyin yadrodan qaysi interfeysni tanlaganini so'rang:

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

Turli tarmoqlardagi ikki manzil izoh allaqachon qo'lda ekanini bildiradi va qolgan tekshiruvlar uni faqat tasdiqlaydi. Ular mos kelsa, tekshiruvni sabab bayrog'i yoniq holda yozib oling, holat yalang'och so'z bo'lib yolg'iz turish o'rniga izohga bog'langan holda qaytsin. Skanerlash turi ham o'sha yozuvga tegishli, chunki u nima so'ralganini tasvirlaydi, nima qaytganini emas. Manbasiz, usulsiz va vaqt belgisisiz holatni hech narsa bilan solishtirib bo'lmaydi:

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

O'sha natijani yozuv yonida saqlang, keyingi odam ko'ra olmaydigan aylantirish buferida emas. Kelishmaydigan ikki halol skanerlash faqat hech kim shartlarni yozmaganida bahs bo'ladi. Shartlar qotirilgach, yo natijalar mos keladi va savol yopiladi, yo ular farq qiladi va farq yo'l haqidagi fakt bo'ladi.

Qaysi xost qo'l berishni tugatganini aniqlang

Tugallangan qo'l berish uni qandaydir xost tugatganini isbotlaydi va bu xost siz o'ylagan jarayon bo'lishi shart emas. Yuk balanslagichi, teskari proksi yoki SYN proksi haqiqiy server qatnashmasidan oldin javob berishi mumkin, bu oddiy dizayn, alomat emas. Kutilgan nom uchun amaldagi sertifikat ham buni toraytirmaydi, chunki sertifikat xizmat munosabatini tasvirlaydi va qaysi mashina ulanishni tugatgani haqida hech narsa demaydi.

Nmap port holatlari ma'lumotnomasi buni asosiy deb hisoblaydi: holat tekshiruv yuborilgan joydan nimani kuzata olganini yozadi, portning xususiyatini emas. Holat so'zini shunday o'qing va kelishmagan ikki yugurish qarama-qarshi emas, izchil ko'rina boshlaydi, savol esa port ochiqmi deganidan uning oldida kim turganiga o'tadi.

Ikkinchi savolga tashqaridan emas, backendda javob bering. Ulanishlarni qabul qilib, keyin o'z yuqori oqimiga yeta olmaydigan frontend sekin ilovasi bo'lgan sog'lom xizmatning aynan tashqi tasvirini yaratadi. Faqat yuqori oqimning o'z yozuvi ikki holatni ajratadi:

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

Jurnal satri ilova haqiqatan ko'rgan mijoz manzilini ko'rsatadi, ikkinchi buyruq esa 443 portini ushlab turgan jarayon sizning ilovangizmi yoki uning oldidagi narsami, shuni ko'rsatadi. Agar ikkalasi qaysi manzil ulangani haqida kelishmasa, siz bitta so'rovning ikki oyog'ini ko'ryapsiz va chipta shuni aytishi kerak.

Tunnelni ayblashdan oldin o'z qoidalaringizni tekshiring

Qasddan qilingan siyosat portning bir tarmoqda javob berib, boshqasida bermasligining eng keng tarqalgan sababi va bu mavjud izohlar ichida eng qiziqarsizi. Kirish qoidalari bir manbaga ruxsat berib, qolganini tashlab yuborish uchun mavjud, shuning uchun chiqishning o'zgarishi aynan ular yozilgan voqea. Shuning uchun VPN orqali boshqacha holat provayder trafikni tekshirayotganini ko'rsatmaydi. Bu sizning manba manzilingiz endi boshqacha ekanini ko'rsatadi, bu ancha kichik da'vo.

Bu qoidalarni serverda o'qish mumkin, shuning uchun tarmoq o'rtasi haqida taxmin qilish o'rniga ularni o'qing. Ikki manzil oralig'idan birini eslatuvchi filtr qoidalarini sanab chiqing, keyin ulanish demoning o'ziga yetganini tekshiring:

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

Bo'sh ikkinchi natija ma'lumotli, chunki demonga hech narsa yetmagan va savol filtrga, xavfsizlik guruhiga yoki yo'lning o'ziga tegishli. Tegish xizmat sizning manbangizni ko'rganini va o'z javobini tanlaganini bildiradi, bu qaror odatda o'qish mumkin bo'lgan qoidada yozilgan. Hech bir natija provayder haqidagi hikoyani qo'llab-quvvatlamaydi va ikkalasini ham paket tutishdan arzonroq tekshirish mumkin.

Transport, sertifikat va javobni alohida o'qing

Uch qatlam uch kuzatuv yaratadi va ulardan birini sinovdan o'tkazadigan tekshiruv qolgan ikkitasi haqida hisobot bera olmaydi. Ularni yozuvda alohida satrlar sifatida saqlang, bitta hukmga yig'ish o'rniga, chunki har bir satr o'zicha muvaffaqiyatsiz bo'ladi va muvaffaqiyatsizlik usuli keyingi safar qayerga qarashni aytadi.

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

Bitta buyruq siz boshqaradigan xizmatga qarshi birinchi uch satrni yaratadi. Uning natijasini chat xabariga emas, skanerlash yonidagi yozuvga qo'ying:

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

Natijani tartib bilan o'qing: qo'l berish transport savoliga javob beradi, sertifikat sub'ekti nom savoliga, javob tanasi esa ilova savoliga. Qo'l berish satri muvaffaqiyatli bo'lib, javob satri bo'lmasa, sizda buzilgan yuqori oqimli frontend bor, bloklangan port emas. Bu siz ochgan chiptadan boshqa chipta va buni ochiq aytishga arziydi.

Chiptaga to'rt fakt yozib tugating: manba manzili, skanerlash turi, javob bergan xost va vaqt. Keyingi solishtirishga kerak bo'lgan hamma narsa shu to'rttasida yashaydi va ishni keyingi olgan odamda sizning terminal tarixingiz bo'lmaydi. Agar to'rttasini ham to'ldira olmasangiz, yugurish tugamagan.

O'xshash maqolalar