Cron har o'n daqiqada butunlay sog'lom VPN'ni qayta ishga tushiradi, xuddi shu ish esa o'lik VPN'ni bir hafta ishlab turishiga qoldiradi. Ikkala nosozlik ham «ishlayapti» deganini kamida to'rtta fakt bo'lsa-da, bitta fakt deb qabul qilishdan kelib chiqadi. Qurilma ma'muriy jihatdan yoqilgan, to'g'ri marshrutlangan, to'liq shifrlangan bo'lishi va baribir hech qanday foydali narsa tashimasligi mumkin. Avval kuzatuvlarni ajrating, tekshiruv deyarli o'z-o'zidan yoziladi.

Ulanma bayroqlari qurilmani tasvirlaydi, yo'lni emas

Hamma ko'chiradigan tekshiruv faqat nollardan iborat apparat manzilini qidiradi. Bu hiyla ba'zi drayverlarda haqiqiy interfeysni o'rin egallovchidan ajratadi, qolganlarida hech narsani isbotlamaydi, chunki tun qurilmasida xabar beradigan MAC umuman yo'q. ip -brief link show tun0 buning o'rniga bayroqlarni beradi: UP administrator qurilmani yoqqanini bildiradi, va LOWER_UP drayver ulanishni foydalanishga yaroqli deb hisoblashini bildiradi. Birga o'qilganda, ular qurilma mavjudligini va ma'muriy jihatdan o'chirilmaganini aytadi. Hech biri paketning boradigan joyi borligini aytmaydi.

OpenVPN o'z tun qurilmasini marshrutlar o'rnatilishidan oldin yaratadi, shuning uchun hech narsa marshrutlanmagan bo'lsa-da bayroqlar mukammal ko'rinishi mumkin. Ularni shart deb biling, hech qachon javob deb emas.

Paket qayerga ketishini so'rang

Marshrut qidiruvi bayroqlar javob bera olmaydigan savolga javob beradi. ip route get 10.8.0.1 from 10.8.0.2 interfeysni, manba manzilini va yadro ishlatadigan jadvalni nomlaydi, bo'lingan tunnelni aynan shu bilan solishtirib tekshirish kerak. Manba manzilsiz siz boshqa narsani so'rayapsiz, siyosat asosidagi marshrutlashda esa javob manbaga qarab farq qilishi mumkin. Bu eng arzon halol sinov, chunki u sizning trafigingiz ishlatadigan ayni qoidalardan so'raydi.

WireGuard uchun qo'l berishni qo'shing. wg show har bir sherik uchun oxirgi qo'l berish vaqt belgisini chop etadi, oldinga siljishni to'xtatgan belgi sherik ketganini bildiradi, interfeys bayroqlari nima desa ham. Yaqinda qo'l berish bo'lmagan sozlangan interfeys uy sharoitidagi monitoringda eng ko'p uchraydigan noto'g'ri ijobiylardan biridir.

220-jadval IPsec tarixini hikoya qiladi

strongSwan marshrut o'rnatish yoqilganda kelishilgan selektorlar uchun marshrutlarni 220-jadvalga o'rnatadi. ip route list table 220 shuning uchun kelishilganni marshrutlangandan ajratadi: yuklangan ulanish yonidagi bo'sh jadval IKE va CHILD SA ko'tarilganini, lekin ularga hech qanday trafik yo'naltirilmayotganini bildiradi. Tekshiring ip xfrm state u bilan birga, chunki u o'rnatilgan xavfsizlik birlashmalarini va ularning oxirgi nuqtalarini sanaydi.

Tuzoq siyosati e'tibor berish kerak bo'lgan holatdir. U marshrutlash o'rniga qiziqarli trafikni kutadi, shuning uchun biror narsa tunnelni ishga tushirmaguncha jadval bo'sh qoladi.

Menejer holati va daemon holati turli ro'yxatlar

NetworkManager faqat o'ziga tegishli ulanishlarni sanaydi. nmcli -t -f NAME,TYPE connection show --active to'g'ridan-to'g'ri wg-quick yoki OpenVPN daemoni tomonidan boshlangan tunnel uchun hech narsa qaytarmaydi.

Bu farq skript ikki menejerdan qaysi biridan so'rashni hal qilishi kerak bo'lganda muhim. Bu xostda tunnelga haqiqatan ega bo'lganini tanlang va boshqasining sukunatiga e'tibor bermang. Ikkalasi ham bo'lsa, qaysi biri vakolatli ekanini hal qiling va ikkinchisini o'chiring, chunki bitta interfeysda marshrutlarni qayta yozadigan ikki menejer hech kim takrorlay olmaydigan nosozliklarni keltirib chiqaradi. Yo'q yozuv menejer haqida ma'lumot, tunnel haqida emas.

Keyingi qadamni unga kerak bo'lgan tekshiruvga bog'lang

UDP portini tekshirish tayyorlik haqida hech narsani isbotlamaydi, chunki UDP'da qo'l berish yo'q va nc -u paket chiqishi bilanoq muvaffaqiyat qozonadi. Keyingi qadam haqiqatan nimani iste'mol qilishini sinab ko'ring: yo'naltirilgan portga TCP ulanish, tunnel ichidagi xostga so'rov, faqat o'sha yerda hal qilinadigan nom. Kutishni vaqt chegarasi va urinishlar soni bilan cheklang, tugaganda baland ovozda muvaffaqiyatsiz bo'ling.

Mijoz kancalarni taklif qilsa, kancalar so'rovdan yaxshiroq. --up va --down OpenVPN skriptlari interfeys holati o'zgargandan keyin ishlaydi, bu poygani butunlay yo'q qiladi, lekin ular daemon saqlab qolgan imtiyozlar bilan ishlaydi. Agar OpenVPN user va group orqali imtiyozsiz hisobga tushgan bo'lsa, kanca o'sha hisob sifatida ishlaydi. Shunda tizim xizmatini qayta ishga tushirish aynan o'sha buyruqqa ruxsat beruvchi sudo talab qiladi. Qayta urinishni cron halqasi emas, xizmat menejeriga topshiring: ishga tushirish chegarasi bo'lgan cheklangan qayta ishga tushirish siyosati buzilgan tunnelni fosh qiladi, cheksiz halqa esa uni cheksiz yashiradi.

O'xshash maqolalar