Saytdan saytga VPN yoki masofaviy kirish: ikkalasi nimani bog’laydi
Biri shlyuzlarni, ikkinchisi qurilmalarni bog’laydi. Trafik selektorlarini marshrutlar bilan solishtiring, manzillashni rejalashtiring, so’ng haqiqiy xostdan yo’naltirish va siyosatni sinab ko’ring.
Ikkala yechim ham VPN deb ataladi va ular turli muammolarni hal qiladi. Saytdan saytga tunnel ikkita shlyuzni bog’laydi, shuning uchun ularning orqasidagi har bir xost hech narsa o’rnatmasdan boshqa tomondagi ruxsat etilgan manzillarga yeta oladi. Masofaviy kirish tunnel alohida qurilmalarni tarmoqqa bog’laydi, bir vaqtda bitta mijoz. Bu taqqoslash muhim, chunki joylashtirish xatolarining ko’pi birini sozlab, ikkinchisining xatti-harakatini kutishdan kelib chiqadi va alomat odatda tunnel haqiqatan yetib borgan xizmatda vaqt tugashi bo’ladi.
Ikki yechim, ikki chegara
| Site-to-site | Remote access | |
|---|---|---|
| Endpoints | two gateways | a gateway and each client |
| Who configures | network owners | each user or an MDM |
| Scope of reach | whatever the gateways route | whatever the client is granted |
| Broadcast discovery | not carried | not carried |
Hech bir yechim LAN eshittirish domenini kengaytirmaydi. Uzoq tomondagi qurilmalar mahalliy aniqlash ro’yxatida ko’rinmaydi va buni kutish voz kechish kerak bo’lgan birinchi taxmindir. Siz ataylab e’lon qiladigan xususiy DNS nomlari har qanday aniqlash protokolidan ko’ra bashorat qilinadiganroq va yetkazib beruvchi o’zgarganda ham saqlanib qoladi.
Bir saytda 10.10.0.0/24 va boshqasida 10.20.0.0/24 oling. A shlyuziga 10.20.0.0/24 prefiksini tunnelga yuboradigan marshrut yoki trafik selektori kerak, B shlyuziga esa uning ko’zgu tasviri kerak. So’ngra ikki tomon xostlari oddiy IP ulanishidan foydalanadi va tunnel borligini hech qachon bilmaydi. Bu ko’rinmaslik xususiyatdir va nosozliklarning tunnel xatolari emas, oddiy tarmoq xatolariga o’xshashining sababi ham shu.
Siyosatga asoslangan va marshrutga asoslangan bir xil tunnel emas
Siyosatga asoslangan IPsec joylashtirishida kelishilgan trafik selektorlari qaysi manba va manzil juftlari himoyalanganini aniq belgilaydi. Agar bir shlyuz orqasida yangi quyi tarmoq paydo bo’lsa va uni hech bir selektor qamramasa, tunnel ishlashda davom etadi va yangi quyi tarmoq shunchaki tashilmaydi. Marshrutga asoslangan dizaynda trafikni interfeys qabul qiladi va qarorni marshrutlash jadvali qabul qiladi, bu prefiks qo’shishni tunnelni qayta kelishish emas, marshrut o’zgarishiga aylantiradi.
StrongSwan ikkala ko’rinishni ham bevosita ko’rsatadi va ularni birga o’qish aslida qaysi modelni joylashtirganingizni aniqlash yo’lidir.
swanctl --list-sas
ip xfrm policy
ip -4 route show table all | grep -E '10\.(10|20)\.'
Sizga kerakli prefiks tushirib qoldirilgan selektorlar ro’yxati hech qanday paket ushlamasdan nosozlikni tushuntiradi, noto’g’ri interfeysga ishora qiluvchi marshrut esa qaytish yo’lidagi ko’zgu nosozligini tushuntiradi. Biror narsani qayta kelishishdan oldin ikkalasini o’qing, chunki kalit yangilanishi siz hech qachon sozlamagan selektorni qo’shmaydi.
Manzillashni tunneldan oldin rejalashtiring
Ustma-ust tushadigan diapazonlar konfiguratsiya bilan tuzatib bo’lmaydigan dizayn xatosidir. Agar ikkala sayt ham 192.168.1.0/24 dan foydalansa, 192.168.1.50 kerak bo’lgan xostning ikkita nomzodi bor va tanlash yo’li yo’q. Tunnel autentifikatsiyadan o’tadi, xavfsizlik assotsiatsiyalari o’rnatiladi, marshrutlash qarori esa baribir noto’g’ri yoki noaniq bo’ladi.
Uchta halol variantdan birini tanlang: bitta saytni qayta raqamlang, shlyuzda ustma-ust tushadigan diapazonni tarjima qilib har bir tomon alohida prefiks ko’rsin, yoki o’sha xostlar uchun to’g’ridan-to’g’ri marshrutlashdan voz kechib xizmatni boshqa yo’l bilan e’lon qiling. Har birining narxi bor va ikki yillik ufqda birinchisi odatda eng arzon. Tunnel paydo bo’lishidan oldin qaror qiling, chunki keyin o’zgarish eski manzilga ega har bir qurilmaga tegadi.
MTU masalasini ham erta hal qiling. Tunnel foydali yukni kamaytiradi va fragmentatsiyaga tayanadigan dizayn shlyuzlarda MSSni qotiradigan dizayndan boshqacha ishlaydi.
Yo’naltirish va siyosat tunneldan tashqarida
Shlyuz tunnel interfeysi va LAN interfeysi o’rtasida paketlarni yo’naltirishga tayyor bo’lishi kerak va ikkala yo’nalishga ham xizmatga ruxsat beruvchi siyosat kerak. Linuxda bular ikkita alohida sozlama, qo’shimcha ravishda yo’naltirilgan oqimga umuman ruxsat berilganini hal qiladigan firewall qoidalari.
sysctl -w net.ipv4.ip_forward=1
iptables -A FORWARD -s 10.20.0.0/24 -d 10.10.0.0/24 -j ACCEPT
iptables -A FORWARD -s 10.10.0.0/24 -d 10.20.0.0/24 -j ACCEPT
Qabul qiluvchi xost uchinchi qatlamni qo’shadi: uning o’z firewalli hanuz masofaviy quyi tarmoqdan mijozni qabul qilishi kerak. Faqat o’z mahalliy /24 iga ruxsat beradigan fayl serveri tunnel qanchalik sog’lom ko’rinishidan qat’i nazar 10.20.0.7 dan yo’naltirilgan trafikni rad etadi va bu rad etishni marshrut nosozligi deb o’qish oson.
Shlyuzdan emas, xostdan sinab ko’ring
Shlyuzning o’zi yuborgan ping yo’naltirilgan foydalanuvchi trafigidan boshqa manba manzili va boshqa siyosatga rioya qilishi mumkin. Bu uni kuchsiz sinovga, ba’zan esa chalg’ituvchiga aylantiradi: ilova ishlamayotganda u muvaffaqiyatli bo’ladi yoki ilova ishlayotganda u muvaffaqiyatsiz bo’ladi.
ip route get 10.10.0.5 from 10.20.0.7
ping -I 10.20.0.7 10.10.0.5
curl -sv --max-time 5 http://files.10-10.internal/ -o /dev/null
Haqiqiy xost, haqiqiy manba manzili va ilova ishlatadigan haqiqiy protokoldan foydalaning. So’ng qaytish yo’lini alohida o’qing, chunki qaytish marshrutisiz ishlaydigan oldinga yo’nalish bloklangan xizmatga o’xshab ko’rinadigan vaqt tugashini keltirib chiqaradi.
Dizaynni o’zingiz javob berayotgan savolga qarab tanlang: tarmoqlarni bog’layapsizmi yoki qurilmalarni qabul qilyapsizmi? Qolgan hamma narsa, qaysi yetkazib beruvchini sozlashingiz ham, shu javobdan kelib chiqadi.