Qayta ishga tushirishdan keyin WireGuard sherigi yo'qoladi: haqiqiy konfiguratsiyani toping
wg set bilan qo'shilgan sherik keyingi qayta ishga tushirishgacha ishlaydi, chunki interfeys siz hech qachon tahrir qilmagan fayl yoki profildan qayta quriladi. Avval egasini toping.
wg set bilan qo'shgan sherigingiz kun bo'yi ping'ga javob beradi va qayta ishga tushirishdan keyin yo'qoladi. Hech narsa buzilmadi: yadro bu sherikni jonli interfeysdan boshqa hech qayerda saqlamagan va yuklanish paytida interfeysni qayta yaratadigan har qanday narsa uni siz tegmagan fayldan qurgan. Tuzatish yana bir wg set emas. Interfeysga qaysi komponent egalik qilishini aniqlash, o'sha komponent holatini tahrirlash va keyin sherik uni olib tashlagan aynan o'sha hayot sikli hodisasidan omon qolishini isbotlash kerak.
Buni bir marta ataylab takrorlang
Qayta ishga tushirish muammosini o'z ko'zingiz bilan ko'rmaguningizcha tuzatmang. Konsol yoki tashqi kirish mavjud bo'lsa, sheriklar ro'yxatini yozib oling, interfeysga ega xizmat orqali qayta ishga tushiring va solishtiring. Agar sherik hali ham joyida bo'lsa, sizning o'zgarishingiz allaqachon doimiy holatga yetgan va siz noto'g'ri hodisani tuzatyapsiz.
Buni qilayotganda uchta faktni yozing: interfeys nomi, uni ishga tushirgan unit yoki profil va omon qolgan sherikdagi qo'l siqish hisoblagichi nolga tushirilganmi. Nolga tushirilgan hisoblagich interfeys yo'q qilinib, qayta yaratilganini bildiradi; o'zgarmagan hisoblagich va yo'q sherik esa kimdir konfiguratsiyani oyog'ingiz ostida tahrirlaganini bildiradi.
Interfeysga kim egalik qiladi?
WireGuard o'zida demon ham, konfiguratsiya fayli ham yo'q. Uning ustidagi narsa yuklanish paytida wg ni chaqiradi va o'sha narsa haqiqat manbai. Odatiy nomzodlar [email protected], NetworkManager ulanish profili, distributivga xos tarmoq unit yoki o'z ma'lumotlar bazasini yozadigan boshqaruv paneli.
Distributivingiz hujjatlaridan emas, tizimdan so'rang. systemctl status wg-quick@wg0 va nmcli connection show odatda buni har biri bitta buyruq bilan hal qiladi. Agar ikkalasi ham interfeysga da'vo qilsa, biror narsani tahrirlashdan oldin xatoni topdingiz: ikkita egasi har ishga tushishda bir xil qurilmani qayta yozadi va oxirgi ishlagani g'olib bo'ladi.
systemctl status wg-quick@wg0 --no-pager
grep -R "Address\|SaveConfig\|PostUp" /etc/wireguard/wg0.conf
nmcli -g NAME,TYPE connection show
wg show wg0 peersIsh rejimi holati va ishga tushish holati bir xil fayl emas
wg set jonli qurilmani netlink orqali boshqaradi. U /etc/wireguard/wg0.conf, NetworkManager profili yoki panelning ma'lumotlar bazasini yozmaydi. Keyin muvaffaqiyatli wg show yadro sherikni qabul qilganini isbotlaydi, biror narsa uni qayta tiklaydi degani emas.
Qarama-qarshi yo'nalishda ikkinchi tuzoq bor. wg-quick'ning SaveConfig parametri interfeys tushirilganda joriy interfeys holatini konfiguratsiya fayliga qayta yozadi. U yoqilgan bo'lsa, interfeys ishlab turganda faylga kiritilgan tahrir keyingi o'chirish bilan qoplanishi mumkin va siz o'sha satr u yerda bo'lganiga qasam ichasiz. Sherik qayta-qayta qaytsa, faylni to'xtatgandan keyin o'qing, oldin emas.
NetworkManager yana boshqacha tutadi: profil unga tegishli va uni faollashtirishda qo'llaydi, shuning uchun faol NetworkManager ulanishi yonidagi qo'lda tahrirlangan .conf faqat bezak. Interfeys uchun bitta egasi tanlang va boshqa menejerga unga tegmaslikni qo'yib bering.
O'zgarish ikkala joyga yetishini ta'minlang
Avval doimiy holatni tahrirlang, keyin egasi uni qo'llasin, oxirida jonli holatni tekshiring. Bu tartib har qanday bosqichdagi nosozlik uchta emas, bitta narsaga ishora qilishini bildiradi.
# 1. persistent state (wg-quick owner)
sudo vi /etc/wireguard/wg0.conf
# 2. apply through the owner, not by hand
sudo systemctl restart wg-quick@wg0
# 3. verify runtime matches the file
sudo wg show wg0
sudo wg showconf wg0wg showconf jonli konfiguratsiyani fayl ishlatadigan sintaksisda chop etadi, bu ikkalasini to'g'ridan-to'g'ri solishtirish imkonini beradi. Bu chiqishga sir sifatida qarang: unda shaxsiy kalitlar bor, shuning uchun uni chipta yoki chat kanaliga yopishtirmang. Sheriklarning ochiq kalitlari va ruxsat berilgan IP'larni solishtiring va ataylab olib tashlangan sherik qaytmaganini tekshiring.
U hayot sikli hodisasidan omon qolishini isbotlang
Egasi orqali ikkinchi marta qayta ishga tushiring, keyin uchta alohida narsani tasdiqlang: sherik wg show ichida ko'rinadi, trafikdan keyin qo'l siqish hisoblagichi oshadi va tunnelga bog'liq dastur haqiqatan javob beradi. Eski qo'l siqish bilan ro'yxatga olingan sherik — marshrutlash yoki kalit muammosi, doimiylik muammosi emas, va bu farq behuda konfiguratsiya tahririni tejaydi.
Nihoyat, qayta ishga tushirish nimani tiklaganini tekshiring. Ataylab olib tashlangan sherikni jonlantiruvchi qayta ishga tushirish — o'sha xatoning qarama-qarshi belgisi, va odatda konfiguratsiyaning eski nusxasi hali ham biror joydan yuklanayotganini bildiradi. Egasini, fayl yo'lini, sherikning ochiq kalitini va tekshirish buyruqlarini konfiguratsiya yoniga yozib qo'ying, keyingi odam ishlab chiqarish hostini qayta ishga tushirib buni qayta kashf qilmasin.