Linux VPN'da manzil, marshrut, DNS va firewall kimga tegishli?
Linux VPN har bir obyekt uchun bitta vakolat talab qiladi: qurilma, manzil, marshrutlar, DNS, firewall. Bu xaritani yozing, so'ng yuklash, qayta ulanish va demontaj nimalarni tiklashini aniqlang.
Bir marshrut uchun kurashayotgan ikki skript Linux VPN muammosining odatiy shakli bo'lib, u marshrutlash xatosi sifatida qayd etiladi. Bir komponent tunnel qurilmasini yaratadi, boshqasi standart marshrut qo'shadi, uchinchisi resolver konfiguratsiyasini qayta yozadi, to'rtinchisi firewall qoidalarini qayta yuklaydi. Ularning har biri boshqasining ishini bekor qilishi mumkin, g'olib esa shunchaki oxirgi ishlagan. Javob berishga arziydigan savol qaysi paketni o'rnatish emas, balki holatning har bir qismi uchun qaysi komponent vakolatli ekani.
Bu xaritani bir marta yozing, va qayta ulanishdagi ko'p xatolar sirli bo'lishdan to'xtaydi. To'rt obyekt muhim: qurilma va uning manzillari, marshrutlar va siyosat qoidalari, DNS konfiguratsiyasi va firewall.
Qurilma va uning manzillari
Tunnel qurilmasi yo profilni biladigan menejer, yo kimdir qo'lda ishga tushirgan demon tomonidan yaratiladi. Ikkala tartib ham o'z-o'zidan ishlaydi; ularni aralashtirish ishlamaydi. Agar profil NetworkManager'ga tegishli bo'lsa, qurilma ham unga tegishli bo'lsin, va bir xil tunnel nomiga qarshi boshqarilmaydigan OpenVPN jarayonini boshlamang.
Sessiya tugaganda qurilmani kim olib tashlashini yozib qo'ying. O'z sessiyasidan uzoq yashaydigan qurilma eskirgan manzillar va ulardan keyingi chalkashlikning eng keng tarqalgan manbasidir.
Marshrutlar va siyosat qoidalari
Aynan marshrutlarda egalik mojarolari ko'rinadigan zarar yetkazadi. Ulanish menejeri tunnel uchun standart marshrut va uzoq tarmoq uchun aniqroq marshrut o'rnatadi; so'ng qo'lda yozilgan skript boshqa metrika bilan o'z standartini qo'shadi va vaqtga qarab jimgina yutadi yoki yutqazadi. Qaysi yozuvlar ulanishga bog'liq, qaysilari doimiy siyosat va qaysi komponent ularni qayta ulanishdan keyin yangilashini hal qiling. So'ng boshqa komponentlarni o'sha jadvaldan tashqarida saqlang.
Siyosat qoidalari ham xuddi shunday ravshanlikka loyiq, chunki hech kim to'ldirmaydigan jadvalga ishora qiluvchi qoida o'lik tunnelga aynan o'xshab ko'rinadigan qora tuynuk yaratadi. Agar qoida trafikni biror joyga majburlash uchun bo'lsa, u tanlaydigan jadvalni o'sha egasi yuritishi kerak.
DNS har doim alohida egadir
Resolver demoni o'z identifikatori ostida o'z jarayoni sifatida ishlaydi, shuning uchun tunnelning marshrutlash qarorlarini tasodifan meros qilmaydi. VPN DNS serverlarini itarib yuborganda, kimdir buni resolver rioya qiladigan har bir ulanish konfiguratsiyasiga aylantirishi kerak, keyin kimdir uni olib tashlashi kerak.
Bu yerda afsona shundaki, profilga nom serverini yozish so'rovlar qayerga ketishini o'zgartiradi. Bu resolverga nima aytilishini o'zgartiradi, resolver yuqorida qaysi soketdan foydalanishini emas. Faylga ishonish o'rniga so'rov va marshrut qidiruvi bilan sinab ko'ring.
Firewall holati va uni kim tiklaydi
Firewall qoidalari VPN xostda eng ko'p qayta yoziladigan obyektdir. Menejer har bir ulanish uchun NAT yoki yo'naltirish qoidalarini qo'shishi mumkin, yuklash vaqtidagi firewall xizmati esa saqlangan qoidalar to'plamini qayta yuklab, ularni o'chiradi. Siyosat uchun bitta vakolat tanlang va ikkinchisini uning iste'molchisiga aylantiring, yoki qayta yuklash xulq-atvorni jimgina o'zgartirishini qabul qiling. Ulanishga bog'liq istisnolar o'sha egasi yuklaydigan faylda bo'lishi kerak, muammoni hal qilishda terilgan iptables buyrug'ida emas.
Agar qoidalar qayta ulanishdan omon qolishi kerak bo'lsa, buni ochiq ayting. Kerak bo'lmasa, buni ham ayting, chunki keyingi muhandis qulayroq javobni taxmin qiladi.
Hayot tsikli: yuklash, qayta ulanish, demontaj
Ushbu uch lahzaning har biriga egasini bering. Yuklashda shartlarni nima tayyorlashi va qanday tartibda ekanini hal qiling. Yumshoq qayta yuklashda qurilma omon qolishi mumkin, sessiya holati esa yo'q, shuning uchun yaratuvchi emas, tekshiruvchi ishlashi kerak. Demontajda faqat shu ulanish yaratgan narsani olib tashlang, chunki har bir marshrutni tiklash yoki butun firewallni tozalash bitta tunnelni xizmatdan chiqarish bilan bir xil emas.
Kuzatish uchun ip monitor link address route yadro o'zgarishlarini ular sodir bo'layotganda ko'rsatadi, lekin niyatni emas, voqealarni xabar qiladi: o'chirilgan marshrut uni qaysi jarayon o'chirgani haqida hech narsa demaydi. Uni egalik xaritasi bilan bog'lang, va chalkash o'chirish qisqa nomzodlar ro'yxatiga aylanadi.
Istisnolarning ham narxi bor. Mojarodan qochish uchun butun qurilma sinfini boshqarilmaydigan deb belgilash bu holatni hech kimga bermaydi, bu tuzatish emas, qaror.