VPN qayta ulangandan keyin proksi hali ham eski tunnel manzilidami?
Qayta ulanish forwarding qurilmangizni tunnel endi egalik qilmaydigan manzilga bog'lab qoldirishi mumkin. To'rtta tartibli tekshiruv, raqamlangan topshirish va haqiqiy sinov so'rovi.
VPN mijozi qayta ishga tushirilganda tunnel qaytgani isbotlanadi, xolos. U orqali chiqish buyurilgan proksi haqida esa hech narsa aytilmaydi. Squid, tinyproxy va boshqa forwarding qurilmalarning aksariyati ishga tushishda topgan mahalliy manba manzilini, biror narsa ularni qayta yuklashga majbur qilmaguncha ushlab turadi. Qayta ulanish yangi tunnel manzilini berganida, forwarding qurilmasi har bir chiquvchi ulanishda ishlamay qoladi yoki odatdagi marshrutingiz orqali chiqa boshlaydi.
Ikkinchi nosozlik xavflisi: tunnel ishlayapti, sahifalar yuklanmoqda va faqat chiqish manzili noto'g'ri.
Tunneldan emas, tinglovchidan boshlang
O'yinda uchta manzil bor va qayta ulanish faqat ba'zilarini siljitadi. Tinglovchi brauzeringiz ko'rsatadigan joy, odatda 127.0.0.1 yoki LAN manzili, va tunnel o'zgargani unga ahamiyatsiz. Chiquvchi mahalliy manba forwarding qurilmasi keyingi qadamni terayotganda yadrodan foydalanishni so'raydigan narsa bo'lib, tunnel qurilmasiga bog'langan. Ommaviy chiqish veb-server qayd etadigan narsa bo'lib, u bir necha qadam naridagi tarjima qilingan manzil bo'lishi mumkin.
Ommaviy IP qidiruvi faqat oxirgi savolga javob beradi. Bitta ommaviy chiqish bir nechta ichki manbani yashirishi mumkinligi sababli, u forwarding qurilmasi qaysi mahalliy manzilga bog'lanishi kerakligini ayta olmaydi. Manzilni ulanishga ega bo'lgan tomondan o'qing: mijozning holat chiqishi, interfeysning o'zi yoki tunnel yashaydigan nom maydoni. Tunnelga o'xshash nomli birinchi interfeysni olish ikkinchi profil paydo bo'lishi bilan noto'g'ri javob beradi.
Konteyner va nom maydoni tartiblari bu taxminni jimgina buzadi. Bir tarmoq nom maydonidagi forwarding qurilmasi boshqasida mavjud tunnelga bog'lana olmaydi va konfiguratsiyani tahrirlashning hech qanday miqdori buni tuzatmaydi.
Biror narsani tahrirlashdan oldin to'rtta tekshiruv
Ularni tartib bilan bajaring. Birinchi muvaffaqiyatsiz tekshiruv to'xtaydigan joyingiz, chunki keyingilari oldingilari to'g'ri deb hisoblaydi.
- Ishlatilayotgan tunnel proksi qurilgan profil ekanini tasdiqlang, o'zi ulangan ikkinchi profil emas.
- O'sha qurilmadagi hozirgi manzilni chop eting va ishlab turgan konfiguratsiyadagi manzil bilan solishtiring.
- Diskdagi fayl nima da'vo qilishini emas, forwarding qurilmasi qaysi manbani topganini so'rang.
- Forwarding qurilmasidan kelayotgan trafik haqiqatan siz kutgan marshrutlash va xavfsizlik devori siyosatiga bo'ysunishini tasdiqlang.
Qurilma manzili oddiy: ip -4 addr show dev tun0 hozirgisini chop etadi, ip -4 route get 1.1.1.1 esa yadro o'sha manzil uchun qaysi interfeysni tanlashini ko'rsatadi. Aniq manzilga bog'lanadigan forwarding qurilmasi manzil yo'qolganda baland ovozda ishlamay qoladi. Qurilmaga bog'lanadigan yoki standart manbaga qaytadigan forwarding qurilmasi ishlashda davom etadi va oqib ketadi, jim natija ham shu.
Hujjatlarni siz ishlatayotgan versiyaga moslang, qidiruvning birinchi natijasiga emas. Squid'ning chiquvchi manzil direktivasi v7 va undan oldingilar uchun hujjatlashtirilgan, v8 hujjatlari esa direktiva u yerda mavjud emasligini aniq aytadi, shuning uchun uning atrofida qurilgan skript bu chegaradan o'tmaydi (Squid tcp_outgoing_address ma'lumotnomasi ga qarang). Biror narsani qayta yuklashdan oldin mahsulotning o'z tahlilchisi bilan tekshiring: squid -k parse xatolarni xabar qiladi va ishlab turgan jarayonga tegmasdan chiqadi.
Har bir tunnelni raqamlang va eskirgan almashtirishlarni tashlang
Qayta ulanish topshirishdir, topshirish esa tartib talab qiladi. Har bir kuzatilgan ulanishni muvaffaqiyatli o'rnatishda oshib boradigan hisoblagich yoki vaqt belgisi bilan belgilang, so'ng bu belgini nomzod konfiguratsiyaga olib kiriting. Nomzoddagi belgi hozirgisidan eski bo'lsa, uni qo'llash o'rniga tashlang, chunki oldingi tunnel uchun yozilgan sekin yangilanish aks holda hozirgisining sozlamalarini ustidan yozadi. Hodisalar portlashlarini birlashtiring, tebranuvchi ulanish o'n besh emas, bitta o'tish bersin.
Ishni to'rt harakatga ajrating: eski chiqish holatini bekor qiling, ulanish egasi tugaganini xabar qilishini kuting, faqat boshqariladigan qismni quring, so'ng xizmat menejeri orqali tasdiqlang va faollashtiring. Butun faylni ikki manzil qiymatidan qayta yaratish tinglovchi cheklovlari, autentifikatsiya va manzil siyosati jimgina yo'qolishining yo'li. Ataylab to'xtatishni ham hurmat qiling. Foydalanuvchi o'chirgan tunnelga qo'ng'iroq qilishda davom etadigan yordamchi xato, bardoshlilik emas.
Ochiq soketlar yangi manzilga ergashmaydi
Forwarding qurilmasini qayta sozlash allaqachon o'rnatilgan ulanishlar haqida hech narsa aytmaydi. Ular bo'shaydimi yoki o'ladimi mahsulotga bog'liq, shuning uchun taxmin qilish o'rniga xatti-harakatni kuzating.
Almashtirishdan oldin ochilgan soket orqali xizmat qilingan so'rov yangi konfiguratsiya to'g'ri bo'lsa ham eski yo'ldan chiqadi. Bu muhim bo'lsa, aniq qaror qiling: qisqa bo'shash oynasiga ruxsat bering va yangi ish qabul qilishni to'xtating, yoki eski soketlarni yoping va xatolarni qabul qiling. So'ng yangi ulanish bilan sinab ko'ring va bu natijani bo'shash tekshiruvidan alohida saqlang. Manbaga bog'lanish ham xavfsizlik chegarasi emas. Trafik hech qachon odatdagi marshrutga tegmasligi kerak bo'lsa, buni belgilar va xavfsizlik devori qoidalari bilan, DNS va IPv6 ni ham qo'shib majburlang, shunda muvaffaqiyatsiz qayta yuklash proksini ochiq emas, aniq o'chirilgan holda qoldiradi.
Yangi chiqishni yangi so'rov bilan isbotlang
Muhimi faollashtirilgandan keyin ochilgan so'rov, ping emas va allaqachon keshlangan sahifa emas. Proksidan haqiqiy URL so'rab, uzoq tomon xabar qilgan chiqish manzilini o'qing, so'ng provayder bittasini ko'rsatganda mijozning tunnel haqidagi o'z qarashi bilan solishtiring.
Tahlil, qayta yuklash va so'rovni alohida buyruqlar sifatida saqlang, nosozlik bitta qadamga ishora qilsin. Birinchi ikkitasi muvaffaqiyatsiz bo'lganda hech narsani o'zgartirmaydi, shuning uchun qayta ishga tushirishdan oldin ishlaydi.
squid -k parse
sudo squid -k reconfigure
curl -x http://127.0.0.1:3128 -sS -o /dev/null -w '%{http_code} %{remote_ip}\n' https://example.comAgar qayta yuklash muvaffaqiyatsiz bo'lsa, xizmatni to'xtatib, qismni tuzating; eskirgan chiqish bilan xizmat qilayotgan proksi qisqa uzilishdan yomonroq. Qayta yuklash muvaffaqiyatli bo'lib, yangi so'rov baribir kutilmagan joydan chiqsa, manzillarni qayta tahrirlash o'rniga marshrutlash tekshiruviga qayting. Tekshirgan tunnel avlodini yozib qo'ying, keyingi qayta ulanish solishtiradigan aniq narsaga ega bo'lsin.