VPN ortidagi SaaS ma'muriy hududi: qaysi manzilga ishonish kerak?
Manba noutbukning tunnel manzilini emas, VPN shlyuzingizning chiqish manzilini ko'radi. Faqat sozlangan proksi sarlavhasiga ishoning, so'ng har bir ma'muriy operatsiyani darvozalang.
Ommaviy SaaS sahifalari hamma uchun ochiq qolishi mumkin, ularning ortidagi ma'muriy operatsiyalar esa VPN tashqarisidagi har kimni rad etadi. Buni mumkin qiladigan mexanizm yashirin menyu yoki alohida kirish sahifasi emas; bu so'rovni yetkazgan tarmoq yo'lining tekshiruvi. Manzil dalilini xato olsangiz, tekshiruv yo haqiqiy ma'murlarni bloklaydi, yo sarlavha yozishni biladigan har kimni ichkariga oladi. Manba aslida nima olishidan boshlang.
Tunneldan keyin manba aslida nima oladi
Brauzer internet trafigini ham tashiydigan VPN orqali ommaviy saytga yetganda, shlyuz ulanishni chiqishdan oldin tarjima qiladi. SaaS shlyuzning ommaviy chiqish manzilini ko'radi, odatda bitta manzil yoki kichik diapazon, va noutbukning tunnel manzilini hech qachon ko'rmaydi. Shuning uchun 10.90.0.42 ni ruxsat etilganlar ro'yxatiga qo'shish muvaffaqiyatsiz bo'ladi, va shuning uchun butun RFC 1918 ni qo'shish yana balandroq muvaffaqiyatsiz bo'ladi: ikkinchisi sizga yetib borishi mumkin bo'lgan har bir xususiy tarmoqni ichkariga oladi. Shart qo'yishga arziydigan yagona manzil tashkilotingiz chiqishda aslida egalik qiladigan manzildir.
curl -s https://ifconfig.me
dig +short admin.example.com
Bo'lingan tunnellash bu farazni jimgina buzadi. Agar VPN faqat xususiy ofis marshrutlarini tashisa, ommaviy ma'muriy xost nomiga so'rov mahalliy provayder orqali chiqadi va manba turar-joy manzilini ko'radi. Ulangan VPN belgisi bu aniq manzil haqida hech narsani isbotlamaydi, shuning uchun tunneldan emas, manzildan sinovdan o'tkazing.
Agar chiqish manzili foydalanuvchiga qarab farq qilsa, har qanday siyosat yozishdan oldin to'xtang va marshrutlashni tuzating. Faqat ba'zi ma'murlarga to'g'ri keladigan shart shart yo'qligidan yomonroq, chunki u hodisaga qadar muammoni yashiradi.
Faqat manzilni qayta yozadigan proksiga ishoning
Ommaviy saytlarning aksariyati CDN yoki teskari proksi orqasida, shuning uchun manbaning soket manzili mehmonga emas, o'sha old qismga tegishli. Old qism odatda asl manzilni sarlavhada uzatadi, va manba uni faqat ma'lum proksilardan qabul qilmasa, bu sarlavha hujumchi nazoratida bo'ladi. Ishonchli manbalar ro'yxatini aniq sozlang va manbani boshqa hech qayerdan kirish imkonsiz qiling. O'sha ikkinchi yarmisiz hujumchi proksidan o'tib, sarlavhani to'g'ridan-to'g'ri yuboradi.
set_real_ip_from 192.0.2.0/24;
real_ip_header X-Forwarded-For;
real_ip_recursive on;
curl -H 'X-Forwarded-For: 198.51.100.27' https://origin.example.com/admin
Xuddi shu mantiq PROXY protokoliga ham tegishli: u faqat tinglovchi proksi yetib boradigan va boshqa hech narsa yetib bormaydigan interfeysga bog'langan bo'lsa ishonchli. Yetishmayotgan manzil konteksti himoyalangan tekshiruvni muvaffaqiyatsiz qilishi kerak, standart ruxsatga tushmasligi kerak. Yo'q sarlavha ishonchli yo'lning dalili emas.
Shartni har bir himoyalangan operatsiyaga bog'lang
Tekshiruvni menyuni ko'rsatadigan sahifaga emas, har bir himoyalangan operatsiya o'tadigan avtorizatsiya chegarasiga qo'ying. Marshrut guruhlari, middleware yoki siyosat qatlami barchasi ishlaydi; har bir ishlovchiga nusxa ishlamaydi, chunki keyingi chorakda qo'shilgan ishlovchida u bo'lmaydi.
user = requireAuthenticatedSession()
requirePermission(user, "admin")
requireVpnEgress(verifiedClientAddress(request))
performProtectedOperation(user, request)
Xuddi shu chegara JSON API, eksportlar, imzolangan yuklab olish URL'lari va WebSocket qo'l siqishini ham qamrab olishi kerak, chunki ularning hech biri birinchi navbatda HTML sahifasini so'rashni talab qilmaydi. VPN ishlab turganda yaratilgan yuklab olish havolasi, yuklab olish oxirgi nuqtasi qayta tekshirmasa, keyin ham amal qiladi. Uzoq muddatli sessiyalar ham qayta baholash qoidasiga muhtoj, aks holda bitta autentifikatsiya qilingan so'rov doimiy istisnoga aylanadi. Standart rad etish xodimlar almashinuvidan omon qoladigan yagona sozlamadir.
Umumiy keshlar tekshiruvni aylanib o'tishning boshqa yo'lidir. Himoyalangan javobni allaqachon saqlagan kesh uni manbaga murojaat qilmasdan taqdim eta oladi, shuning uchun ma'muriy javoblarni shaxsiy deb belgilang va umumiy xotiradan tashqarida saqlang. Agar kesh ularni taqdim etishi shart bo'lsa, kirish tekshiruvi taqdim etishdan oldin ishlashi kerak, bu odatda u umuman umumiy kesh bo'la olmasligini bildiradi.
Hozir yopgan aylanib o'tishlaringizni sinang
Baxtli yo'lni emas, matritsani mashq qiling: VPN orqali ma'mur, usiz o'sha ma'mur, u orqali bo'lmagan ma'mur va soxta manzil sarlavhasi. To'g'ridan-to'g'ri manbaga so'rov va keshlangan javobli so'rov qo'shing, chunki aynan shu ikkisi old qismni butunlay chetlab o'tadi.
curl -sI https://admin.example.com/export.csv
curl -s -H 'X-Forwarded-For: 198.51.100.27' https://origin.example.com/admin
curl -s https://admin.example.com/api/me -o /dev/null -w '%{http_code}\n'
Har bir so'rov siyosat va'da qilgan holatni qaytarishi kerak, jurnal esa qaysi manzil dalili ishlatilganini qayd etishi kerak. IPv6 ni alohida qamrab oling, chunki ikki stekli manba siz sinaganidan boshqa manba oilasini ko'rishi mumkin. Oddiy mijoz operatsiyalarini VPN tashqarisida ishlab tursin, aks holda mijoz birinchi marta shikoyat qilganda o'zgarish qaytariladi. Har bir satrning kutilgan natijasini ishga tushirishdan oldin yozing, kutilmagan o'tish ko'rinadigan bo'lsin.
Chiqish manzili ruxsat etilgan tarmoq yo'lini isbotlaydi, shaxsni ham, boshqariladigan qurilmani ham emas. Uni autentifikatsiya va ruxsat yonida bitta shart sifatida saqlang, butun mahsulotni faqat-VPN xizmatiga aylantirmasdan ma'muriy hudud tor qoladi. Bu ajratish dizaynning o'zi, uning cheklovi emas.