EC2 da strongSwan: VPC ish yukini yo'naltirsin
Darvoza orqali ishlaydigan tunnel faqat darvozani isbotlaydi. Ish yuki quyi tarmog'ini yo'naltiring, mehmonda uzatishni yoqing, selektorlarni kengaytiring va so'ng undan sinab ko'ring.
Tunnel ishlayapti, darvoza nusxasi uzoq tarmoqqa ping yubora oladi, lekin yonidagi ilova nusxasi hech qayerga yetib bormaydi. Hech narsa buzilmagan. Muvaffaqiyatli test VPN xostida boshlangan va u o'sha xost bir xil IPsec aloqasi orqali boshqa manba manzilini olib o'ta oladimi, deb hech so'ramagan. Bu qo'llanma o'sha bo'shliqni to'rt qadamda yopadi, har bir nosozlikni ko'rinadigan qilib turadigan tartibda.
Avval to'rtta manzilni yozib oling
Quyidagi har bir qadam shularga ishora qiladi, shuning uchun marshrut jadvaliga tegishdan oldin ularni o'z hisobingiz uchun to'ldiring.
VPC: 10.60.0.0/16
Gateway subnet: 10.60.1.0/24, gateway ENI address 10.60.1.10
Workload subnet: 10.60.2.0/24, application address 10.60.2.20
Remote network: 10.90.0.0/24
Misol tasdiqlangan, ishlaydigan siyosatga asoslangan IPsec ulanishini va manbani saqlaydigan oqimni nazarda tutadi. Bu bitta ajratilgan manzilni qarzga oladigan NAT'li masofaviy kirish mijozi emas va bu farq selektorlarni o'zgartirish kerakmi-yo'qmi ekanini hal qiladi.
1-qadam: ish yuki quyi tarmog'iga marshrut bering
Ish yuki quyi tarmog'iga haqiqatan bog'langan marshrut jadvali uzoq prefiks uchun darvozaning tarmoq interfeysiga ishora qiluvchi yo'lga muhtoj. Nusxa ichida o'rnatilgan mehmon marshruti o'sha AWS marshrut jadvalida yozuv emas va hech qanday strongSwan konfiguratsiyasi uni yaratmaydi.
AWS ning qurilma orqali yo'naltirish bo'yicha qo'llanmasi tarmoq interfeysi nishonlarini va uzatuvchi nusxaning manba/manzil tekshiruvi talabini tavsiflaydi. Bu tekshiruv o'zgarishini darvoza roli bilan cheklang va oddiy ilova nusxalarini tinch qo'ying.
Bitta tasdiqlangan tarmoqqa joy ochish uchun VPC ning lokal marshrutini yoki har bir mavjud yozuvni almashtirmang. Hech kim ishlatmaydigan marshrut jadvali uchun konsol sahifasi ko'rsatganini emas, nima bog'langan va faol ekanini tekshiring. O'xshash ko'rinadigan ikki jadvalning bog'lanishlari boshqacha bo'lishi mumkin. Muhimi — ish yuki quyi tarmog'i ulangan jadval.
2-qadam: mehmonda uzatishni yoqing
sysctl -w net.ipv4.ip_forward=1
# persist in /etc/sysctl.d/ and re-apply after reboot
Yadro uzatishi va xostning xavfsizlik devori o'tishga ruxsat berishi kerak. Hammani qabul qilish o'rniga ish yuki va uzoq prefikslar uchun mo'ljallangan uzatish qoidalarini qo'shing va darvoza quyi tarmog'i o'z trafigi uchun yaroqli transport marshrutini saqlab qolishini tasdiqlang.
Xavfsizlik guruhlari bu qadam odatda tiqilib qoladigan joydir. Oraliq qurilma nusxalar o'rtasidagi to'g'ridan-to'g'ri aloqaning xavfsizlik guruhi havolasi xatti-harakatini meros olmaydi, shuning uchun boshqariladigan Client VPN misolidan ko'chirilgan qoida hech qachon mos kelmasligi mumkin. Haqiqiy yo'lda xavfsizlik guruhini va quyi tarmoq ACL ni ikki yo'nalishda ham tekshiring.
3-qadam: selektorlarni haqiqiy manbalargacha kengaytiring
AWS tomonida faqat 10.60.1.10/32 ni qamrab oladigan siyosat 10.60.2.20 ni qamrab olmasdan darvozadan boshlangan muvaffaqiyatni tushuntiradi. Uzoq manzil tomon marshrut trafik selektorini kengaytirmaydi va bu o'sha ajablanibning ikkinchi yarmidir.
swanctl --list-sas
# read the installed CHILD-SA local and remote traffic selectors
Agar kelishilgan loyiha butun VPC ni himoya qilsa, ikkala tomon ham 10.60.0.0/16 va 10.90.0.0/24 ni qabul qilishi kerak. Agar u bitta ish yukini himoya qilsa, o'sha torroq prefiksni ataylab ishlating. Har holda, o'rnatilgan CHILD-SA siyosatini tekshiring, chunki siz tahrirlagan konfiguratsiya va uni boshqacha torga kiritgan tomon bir xil kelishuv emas.
Uzoq joy saqlangan VPC manbalari uchun javoblarni ham mo'ljallangan IPsec darvozasi orqali qaytarishi kerak. Boshqa manba-NAT qoidalari mavjud bo'lganda himoyalangan trafik uchun qo'llab-quvvatlanadigan NAT istisnosini saqlang; tasdiqlanmagan ish yukini ruxsat etilgan xost manziliga aylantirish boshqa identifikatsiya shartnomasidir, siz xohlagan kirishga qisqa yo'l emas.
4-qadam: tekshiring, kerak bo'lsa orqaga qaytaring
Ish yukining o'zidan yangi ruxsat etilgan ilova amali bilan sinab ko'ring, so'ng chiqarib tashlanishi kerak bo'lgan manzil bilan takrorlang. Uzoq xizmat ko'radigan manba manzilini va u ishlatadigan qaytish yo'lini yozib oling. Darvoza pingi yoki yashil IKE holati bu test emas.
Agar darvoza ishlayotganda ish yuki hali ham muvaffaqiyatsiz bo'lsa, qadamlar bo'ylab tartib bilan orqaga qayting: selektor, so'ng uzatish va xavfsizlik guruhlari, so'ng bog'langan marshrut jadvali. Har birining alohida alomati bor va taxmin qilish aslida xato bo'lganini o'tkazib yuboradi.
Orqaga qaytarish o'sha tartibni teskari aylantiradi. Ish yuki quyi tarmog'i marshrutini oxirida olib tashlang, avvalgi selektorlarni tiklaganingizdan so'ng, manbalarini endi himoya qilmaydigan darvozaga ishora qiluvchi quyi tarmoq qoldirmaslik uchun. Bu shartnomalar amal qilganda o'z-o'zini joylashtirish darvoza xostidan ko'proq xizmat qilishi mumkin va AWS boshqaradigan Site-to-Site VPN strongSwan mijoz darvozasi tomonida o'tirishi mumkin bo'lgan boshqa operatsion modeldir.