Eski yechim OpenVPN-ning bajariladigan faylini boshqa joyga ko‘chirib, asl yo‘lda shell o‘ramini qoldirgan. Bir necha oydan so‘ng yangilanish keladi va bu yechimni qaytarish qaysi fayl haqiqatan mijoz ekanini taxmin qilish o‘yiniga aylanadi. Buyruq nomi, xizmatda sozlangan bajariladigan fayl va paketning o‘z fayllar ro‘yxati turlicha obyektlarga ishora qilishi mumkin, va birini qolganlarisiz tuzatish tuzatilganday ko‘rinadigan, lekin yomonroq ishlaydigan xost yaratadi.

Xizmat ishga tushadigan yo‘ldan boshlang

Terminal va systemd birligi bajariladigan fayllarni bir xil hal qilmaydi. Shell PATH ichidan qidiradi; birlik yo‘lni nomlaydi, drop-in almashtirishlar esa siz o‘qiyotgan faylga tegmasdan uni almashtirishi mumkin. Aynan shu farq bu ishdagi chalkashlikning ko‘p qismini tushuntiradi. U sizning tuzatishingiz qaysi faylni nishonga olishi kerakligini ham belgilaydi.

Birlikdan nima ishga tushirishini so‘rang, uni o‘zgartiruvchi drop-inlar bilan birga, va o‘zingiz ishonchli deb hisoblagan parcha o‘rniga chiqqan ExecStart satrini o‘qing. So‘ng bu yo‘lni har qanday ramziy havola orqali oxirgi faylgacha kuzatib boring. Yashirin katalogga exec bilan tugaydigan o‘ram bu eski tuzatishlarning odatiy tuzilishidir.

Biror narsani o‘zgartirishdan oldin hal qilingan yo‘lni yozib qo‘ying.

systemctl cat [email protected] | grep -n 'ExecStart'
readlink -f "$(command -v openvpn)"

Buyruq nomini xizmat yo‘li bilan solishtiring

Ikki javob ko‘pincha farq qiladi va bu farq o‘z-o‘zidan nuqson emas. NetworkManager plagini o‘z yo‘lini ishga tushirishi mumkin, konteyner esa yana birini ulashi mumkin.

Muhimi — trafikka xizmat qiladigan jarayonni qaysi egasi ishga tushirishini bilish. Agar birlik /usr/local/sbin/openvpn-wrapper ni ishga tushirib, shellingiz /usr/sbin/openvpn ni hal qilsa, ikkinchi faylni tuzatish xizmatda hech narsani o‘zgartirmaydi.

Har bir nomzod qaysi paketga tegishli ekanini so‘rang, so‘ng fayl paket tomonidan boshqariladimi yoki mahalliy joylashtirilganmi, shuni hal qiling. Egasi paketi yo‘q fayl — kimdir ataylab qo‘ygan fayl, u o‘chirilishidan oldin nom, egasi va sababga loyiq. Teskari xato ham keng tarqalgan: forumdagi xabar bir xil katalogdan foydalangani uchun paket faylini eski saqlangan ikkilik fayl bilan qayta yozish.

Paket fayllari haqida paketlar ma’lumotlar bazasi gapirsin

Agar dasturiy ta’minot Debian paketidan kelgan bo‘lsa, paketlar ma’lumotlar bazasi uning fayllari hali ham o‘rnatilganga mos kelishini aytishi mumkin. Bu yaxlitlik haqidagi tor savol, xavfsizlik hukmi emas, va nimani tuzatishni hal qilganda bu farq muhim. Mos kelmaslik fayl o‘rnatishdan keyin o‘zgarganini bildiradi, bu sizning eski yechimingiz yoki qonuniy mahalliy tahrir bo‘lishi mumkin. Chiqish qaysi biri ekanini hal qilmaydi, shuning uchun uni xulosa emas, ishora sifatida o‘qing.

Tekshiruvni ishga tushiring va bo‘sh natijani biror narsaning isboti deb hisoblash o‘rniga chiqishni o‘qing.

dpkg -S /usr/sbin/openvpn
dpkg --verify openvpn

dpkg qo‘llanmasi tekshiruv o‘rnatilgan fayllarni mahalliy qayd etilgan metama’lumotlar bilan solishtirishini, mavjud bo‘lsa saqlangan nazorat yig‘indilaridan foydalanishini hujjatlashtiradi. U o‘zgargan paket faylini sezadi, lekin uning o‘rniga boshqa ikkilik fayl ishga tushirilayotganini ayta olmaydi.

Tuzatishdan oldin holatni qayd eting

Hal qilingan ishga tushirish yo‘lini, faylning paket bilan aloqasini, o‘ramning joylashuvini va uni kiritgan o‘zgarish yozuvini to‘plang. Agar keyinchalik kerak bo‘ladigan integratsiya ishi bo‘lsa, o‘ramni himoyalangan joyga nusxalang.

O‘qimasdan turib o‘ram mazmunini qo‘llab-quvvatlash mavzusiga joylashtirmang, chunki bu skriptlar ba’zan hisob ma’lumotlari yoki shlyuz tafsilotlarini olib yuradi.

Ish paytida xizmat qaysi profillarni ishlatishini va kim ulanganini qayd eting, chunki tunnelni qayta ishga tushirish xostni boshqarayotgan sessiyangizni uzib qo‘yishi mumkin.

Ishga tushishni tasdiqlang, so‘ng o‘ramni olib tashlang

Tuzatishdan so‘ng xizmatni ishga tushiring va jarayon siz ko‘zlagan yo‘lda ishlayotganini tasdiqlang. Qo‘lda bajarilgan versiya so‘rovi fayl ishlashini isbotlaydi; birlik undan foydalanishini isbotlamaydi.

So‘ng mijozni qayta ulang va profil hali ham autentifikatsiyadan o‘tishini tekshiring, chunki asl parametrlarni e’tiborsiz qoldiradigan ikkilik almashtirish sertifikat muammosiga o‘xshab ko‘rinadigan tarzda muvaffaqiyatsiz bo‘ladi.

Ko‘chirilgan o‘ramni uni kiritgan o‘sha o‘zgarish yozuvi orqali olib tashlang. Tugallangan tuzatish qaysi bajariladigan fayl ishlayotganini, nima uchun va qaysi fayl olib tashlanganini aytadi; fayl nomini tiklab, umid qilish bir narsa emas.

O'xshash maqolalar