Firewall profillari va VPN chiqishi: nega ommaviy yo'l emas
Firewall profili qaysi qoidalar to'plami amal qilishini tanlaydi. U paketni qaysi interfeys olib o'tgani haqida hech narsa demaydi va aniq bloklash torroq ruxsatdan ustun turadi.
Qoida aniq eshitiladi: xususiy profilda mahalliy trafikka va ommaviy profilda faqat VPN trafikiga ruxsat bering. Ammo bunday emas, chunki tarmoq profili qaysi firewall qoidalar to'plami amal qilishini tanlaydi va paketni qaysi adapter olib o'tgani haqida hech narsa demaydi. Profil nomini yo'l talabi deb qabul qilish, cheklangan chiqish loyihasini tugallanmagan bo'lsa ham tugallangandek ko'rsatadigan xatodir.
Avval oqimlarni yozib oling, so'ng har birini haqiqatan ham amalga oshira oladigan mexanizmni aniqlang. O'sha oqimlar ro'yxati keyingi qoida o'zgarishidan omon qoladigan yagona artefaktdir.
Toifa qoidalarni tanlaydi, yo'llarni emas
Windows tarmoqni ommaviy yoki xususiy deb tasniflaganda, firewall shu profil uchun sozlangan qoidalar to'plamini qo'llaydi. Tasniflash adapter ulangan tarmoqqa ergashadi va qoidalar to'plami unda nimaga ruxsat berilganini hal qiladi. Bu faktlarning hech biri ilova trafigi tunneldan foydalangan-foydalanmaganiga bog'liq emas. Aynan shu mustaqillik butun qiyinchilikdir.
Yo'lni tanlashni marshrutlash amalga oshiradi, interfeys metrikasi va tunnel o'rnatadigan prefiks orqali. Shuning uchun profil ommaviy deb belgilangan bo'lishi mumkin, ilova ulanishi esa jismoniy yo'lni bosib o'tadi, firewall baribir ommaviy qoidalar to'plami qo'llanganini xabar qiladi.
Shuning uchun profil bilan cheklangan qoida faqat tunnel degani bo'la olmaydi. Bu ikki xususiyatni turli komponentlar hal qiladi va biri ikkinchisining o'rnini bosa olmaydi.
| Flow | What decides it | What a rule can enforce |
|---|---|---|
| VPN client to its endpoint | Routing plus the outer transport | Allow the client process before the tunnel exists |
| Application to an internet host | Interface metric and prefix length | Block the process unless the tunnel interface is up |
| Application to a LAN host | Local subnet route | Allow one destination, not the whole category |
Aniq bloklash torroq ruxsatdan ustun
Microsoftning firewall qoidalari bo'yicha qo'llanmasi standart bloklash amaliga berilgan ruxsat istisnosini ruxsatga zid bo'lgan aniq bloklashdan ajratadi. Aniq bloklashlar o'sha ziddiyatda g'olib chiqadi va chiqish qoidalari ham xuddi shu ustuvorlikka bo'ysunadi.
Shuning uchun hamma narsani bloklaydigan qoida qo'shib, uning ustiga qo'yilgan torroq ruxsatga tayanish kabi mashhur usul muallifi kutgan narsani qilmaydi. Windows Firewall ziddiyatni administrator tayinlagan qoidalar tartibi bilan hal qilmaydi. Bloklash shunchaki amal qiladi va ulanayotgan ilova vaqt tugaganini xabar qiladi. Istisnoga o'xshagan qoida hech qachon o'yinda bo'lmagan.
Qo'llab-quvvatlanadigan shakl tasdiqlangan ruxsat qoidalari bilan standart rad etish siyosatidir, bunda har bir ruxsat dastur, xizmat yoki manzilni ko'rib chiqish uchun yetarlicha aniq nomlaydi. Bunday loyiha auditdan o'tadi, chunki har bir istisno ko'rinadi va ularning hech biri yaratilish tartibiga bog'liq emas.
Bir-biriga zid ikki qoida bitta qoidadan yomonroq, chunki natijaviy xatti-harakat bir vaqtning o'zida ham to'g'ri, ham tushuntirib bo'lmaydigan bo'ladi.
Chiqish siyosatiga bitta egasini bering
Qo'llab-quvvatlanadigan VPN mijozi allaqachon o'zining bloklash xatti-harakati va o'zining oxirgi nuqta istisnolarini yuritadi. Muvofiqlashtirilmagan qo'lda qoidalar qo'shish o'sha mijozni sozlash uchun kerakli tunneldan tashqarida qoldirishi yoki hech kim sezmagan ikkinchi yo'lni ochiq qoldirishi mumkin.
Qoidalarni yozishdan oldin chiqish siyosati kimga tegishli ekanini hal qiling: mijozning o'z konfiguratsiyasi, boshqariladigan firewall siyosati yoki egasi bilan hujjatlashtirilgan mahalliy istisnolar ro'yxati. So'ngra biror narsa ulanmaguncha tajribalarni ustma-ust qo'yish o'rniga qatlamlarni uyg'unlashtiring. Nomlangan egasi ikki qatlam kelishmasa so'raladigan odam hamdir.
Biror narsani o'zgartirishdan oldin tiklanish kanalini saqlang. O'zining boshqaruv yo'lidan tashqarida qulflangan masofaviy mashina siz yopayotgan siyosat bo'shlig'idan ham yomonroq natijadir. Tiklanish qoidasini oldindan yozib qo'yish uni asoslashni osonlashtiradi va hech kimga yoqmaydigan soatda o'zgarish noto'g'ri ketsa topishni ham osonlashtiradi.
Yorliqni o'qish o'rniga to'rt natijani sinab ko'ring
Siyosat ajratib oladigan holatlar qadar yaxshi, shuning uchun profil yorlig'ini natija emas, boshlang'ich nuqta deb biling. To'rt natija ishlayotganini aytadi: mo'ljallangan LAN so'rovi muvaffaqiyatli bo'ladi, qamrab olingan internet so'rovi muvaffaqiyatli bo'ladi, taqiqlangan to'g'ridan-to'g'ri so'rov muvaffaqiyatsiz bo'ladi va tunnel nosozligi holati jimgina orqaga chekinish o'rniga loyihalashtirilganidek harakat qiladi. To'rt natijani qoida o'zgarishi yoniga yozing. To'rtta nomlangan holatli sinov rejasi har safar ishga tushirish uchun yetarlicha qisqa va baland ovozda muvaffaqiyatsiz bo'lish uchun yetarlicha aniqdir.
Get-NetConnectionProfile | Select-Object Name,NetworkCategory,InterfaceAlias Get-NetFirewallProfile | Select-Object Name,DefaultOutboundAction Get-NetFirewallRule -Direction Outbound -Enabled True | Where-Object Action -eq Block | Select-Object DisplayName,Profile
Birinchi buyruq har bir ulangan tarmoq qanday tasniflanganini ko'rsatadi, bu ko'pincha qoidani yozgan odam taxmin qilgan narsa emas. Ikkinchisi har bir profil uchun standart amalni ko'rsatadi, uchinchisi esa yoqilgan chiqish bloklarini sanab o'tadi, torroq ruxsatni jimgina bekor qiladiganlar ham.
Tarmoq o'zgarishidan keyin to'rt holatni yana ishga tushiring, chunki mashina boshqa tarmoqqa qo'shilganda profil qayta tasniflanishi mumkin. Mos keladigan profil yorlig'i yo'l siz mo'ljallagan yo'l bo'lganiga dalil emas.