ProHoster > Blog > Ma'muriyat > Yuqori darajada xavfsiz masofaviy kirish kontseptsiyasini amalga oshirish
Yuqori darajada xavfsiz masofaviy kirish kontseptsiyasini amalga oshirish
Tashkilot mavzusidagi maqolalar turkumini davom ettirish Masofaviy kirish VPN kirish Men o'zimning qiziqarli tarqatish tajribam bilan o'rtoqlasholmayman yuqori darajada xavfsiz VPN konfiguratsiyasi. Bir mijoz tomonidan ahamiyatsiz bo'lmagan vazifa taqdim etildi (Rossiya qishloqlarida ixtirochilar bor), ammo Challenge qabul qilindi va ijodiy tarzda amalga oshirildi. Natijada quyidagi xususiyatlarga ega qiziqarli kontseptsiya paydo bo'ladi:
Terminal qurilmasini almashtirishdan himoya qilishning bir nechta omillari (foydalanuvchi uchun qat'iy majburiyat bilan);
autentifikatsiya ma'lumotlar bazasida ruxsat etilgan shaxsiy shaxsiy kompyuterning UDID ga foydalanuvchi shaxsiy kompyuterining muvofiqligini baholash;
TIV Cisco DUO orqali ikkilamchi autentifikatsiya qilish uchun sertifikatdan shaxsiy kompyuter UDID-dan foydalangan holda (Siz har qanday SAML/Radiusga mos keluvchini biriktirishingiz mumkin);
Ko'p faktorli autentifikatsiya:
Dala tekshiruvi va ulardan biriga nisbatan ikkilamchi autentifikatsiya bilan foydalanuvchi sertifikati;
Login (o'zgarmas, sertifikatdan olingan) va parol;
Ulanadigan xostning holatini baholash (posture)
Ishlatilgan eritma komponentlari:
Cisco ASA (VPN Gateway);
Cisco ISE (Autentifikatsiya / Avtorizatsiya / Buxgalteriya hisobi, Davlatni baholash, CA);
Cisco DUO (ko'p faktorli autentifikatsiya) (Siz har qanday SAML/Radiusga mos keluvchini biriktirishingiz mumkin);
Cisco AnyConnect (ish stantsiyalari va mobil OT uchun ko'p maqsadli agent);
Keling, mijozning talablaridan boshlaylik:
Foydalanuvchi o'zining Login/Parol autentifikatsiyasi orqali AnyConnect mijozini VPN shlyuzidan yuklab olishi kerak; barcha kerakli AnyConnect modullari foydalanuvchi siyosatiga muvofiq avtomatik ravishda o'rnatilishi kerak;
Foydalanuvchi sertifikatni avtomatik ravishda berish imkoniyatiga ega bo'lishi kerak (stsenariylardan biri uchun asosiy stsenariy qo'lda berish va kompyuterga yuklash), lekin men namoyish qilish uchun avtomatik masalani amalga oshirdim (uni olib tashlash hech qachon kech emas).
Asosiy autentifikatsiya bir necha bosqichda o'tishi kerak, avval kerakli maydonlar va ularning qiymatlari tahlili bilan sertifikat autentifikatsiyasi mavjud, keyin login/parol, faqat bu safar sertifikat maydonida ko'rsatilgan foydalanuvchi nomi kirish oynasiga kiritilishi kerak. Mavzu nomi (CN) tahrir qilish imkoniyatisiz.
Siz tizimga kirgan qurilma boshqa narsa emas, balki masofaviy kirish uchun foydalanuvchiga berilgan korporativ noutbuk ekanligiga ishonch hosil qilishingiz kerak. (Ushbu talabni qondirish uchun bir nechta variantlar mavjud)
Ulanish moslamasining holati (ushbu bosqichda shaxsiy kompyuter) mijoz talablarining butun jadvalini tekshirish bilan baholanishi kerak (yakunlash):
Fayllar va ularning xususiyatlari;
Ro'yxatga olish kitobi yozuvlari;
Taqdim etilgan ro'yxatdagi OS yamoqlari (keyinchalik SCCM integratsiyasi);
Muayyan ishlab chiqaruvchidan antivirusning mavjudligi va imzolarning dolzarbligi;
Muayyan xizmatlarning faoliyati;
Ba'zi o'rnatilgan dasturlarning mavjudligi;
Boshlash uchun men sizga natijada amalga oshiriladigan dasturning video namoyishini ko'rib chiqishingizni maslahat beraman Youtube (5 daqiqa).
Endi men videoklipda ko'rsatilmagan amalga oshirish tafsilotlarini ko'rib chiqishni taklif qilaman.
AnyConnect profilini tayyorlaylik:
Men avvalroq sozlash haqidagi maqolamda profil yaratish misolini (ASDM-dagi menyu elementi nuqtai nazaridan) keltirdim. VPN yuklarni muvozanatlash klasteri. Endi men bizga kerak bo'ladigan variantlarni alohida ta'kidlamoqchiman:
Profilda biz VPN shlyuzini va oxirgi mijozga ulanish uchun profil nomini ko'rsatamiz:
Profil tomondan sertifikatning avtomatik chiqarilishini sozlaymiz, xususan, sertifikat parametrlarini ko'rsatamiz va xarakterli ravishda maydonga e'tibor beramiz. Bosh harflar (I), bu erda ma'lum bir qiymat qo'lda kiritiladi UID sinov mashinasi (Cisco AnyConnect mijozi tomonidan yaratilgan noyob qurilma identifikatori).
Bu erda men lirik chekinishni xohlayman, chunki ushbu maqola kontseptsiyani tavsiflaydi; namoyish qilish uchun sertifikat berish uchun UDID AnyConnect profilining Bosh harflar maydoniga kiritilgan. Albatta, real hayotda, agar siz buni qilsangiz, barcha mijozlar ushbu sohada bir xil UDID sertifikatiga ega bo'lishadi va ular uchun hech narsa ishlamaydi, chunki ularga o'zlarining shaxsiy shaxsiy kompyuterlarining UDID-si kerak bo'ladi. AnyConnect, afsuski, UDID maydonini sertifikat so'rovi profiliga muhit o'zgaruvchisi orqali almashtirishni hali amalga oshirmaydi, masalan, o'zgaruvchi bilan %USER%.
Shuni ta'kidlash kerakki, mijoz (ushbu stsenariyda) dastlab bunday Himoyalangan shaxsiy kompyuterlarga qo'lda rejimda berilgan UDID bilan sertifikatlarni mustaqil ravishda berishni rejalashtirmoqda, bu uning uchun muammo emas. Biroq, ko'pchiligimiz uchun biz avtomatlashtirishni xohlaymiz (yaxshi, men uchun bu to'g'ri =)).
Va bu men avtomatlashtirish nuqtai nazaridan taklif qila olaman. Agar AnyConnect UDID-ni dinamik ravishda almashtirish orqali sertifikatni avtomatik ravishda chiqara olmasa, unda biroz ijodiy fikr va mohir qo'llarni talab qiladigan yana bir yo'l bor - men sizga kontseptsiyani aytib beraman. Birinchidan, AnyConnect agenti tomonidan turli xil operatsion tizimlarda UDID qanday yaratilishini ko'rib chiqamiz:
Windows β DigitalProductID va Machine SID registr kaliti kombinatsiyasining SHA-256 xeshi
OSX - SHA-256 xesh platformasiUUID
Linux - Ildiz bo'limining UUID ning SHA-256 xeshi.
Shunga ko'ra, biz korporativ Windows operatsion tizimlarimiz uchun skript yaratamiz, bu skript yordamida biz ma'lum ma'lumotlardan foydalangan holda UDIDni mahalliy hisoblaymiz va ushbu UDIDni kerakli maydonga kiritish orqali sertifikat berish uchun so'rovni shakllantiramiz, aytmoqchi, siz ham foydalanishingiz mumkin AD tomonidan chiqarilgan mashina sertifikati (sxemaga sertifikat yordamida ikki tomonlama autentifikatsiyani qo'shish orqali Bir nechta sertifikat).
Cisco ASA tomonida sozlamalarni tayyorlaylik:
Keling, ISE CA serveri uchun TrustPoint yarataylik, u mijozlarga sertifikatlar beradigan server bo'ladi. Men Key-Chain import protsedurasini ko'rib chiqmayman; misol o'rnatish haqidagi maqolamda tasvirlangan VPN yuklarni muvozanatlash klasteri.
crypto ca trustpoint ISE-CA
enrollment terminal
crl configure
Biz Tunnel-Group tomonidan autentifikatsiya qilish uchun ishlatiladigan sertifikat maydonlariga muvofiq qoidalar asosida tarqatishni sozlaymiz. Oldingi bosqichda yaratgan AnyConnect profili ham shu yerda sozlangan. Iltimos, men qiymatdan foydalanayotganimni unutmang SECUREBANK-RA, berilgan sertifikatga ega foydalanuvchilarni tunnel guruhiga o'tkazish uchun SECURE-BANK-VPN, iltimos, AnyConnect profili sertifikat soΚ»rovi ustunida ushbu maydon borligini unutmang.
Autentifikatsiya serverlarini sozlash. Mening holatimda, bu autentifikatsiyaning birinchi bosqichi uchun ISE va TIV sifatida DUO (Radius Proksi).
! CISCO ISE
aaa-server ISE protocol radius
authorize-only
interim-accounting-update periodic 24
dynamic-authorization
aaa-server ISE (inside) host 192.168.99.134
key *****
!
! DUO RADIUS PROXY
aaa-server DUO protocol radius
aaa-server DUO (inside) host 192.168.99.136
timeout 60
key *****
authentication-port 1812
accounting-port 1813
no mschapv2-capable
!
Biz guruh siyosatlari va tunnel guruhlari va ularning yordamchi komponentlarini yaratamiz:
Tunnel guruhi Standart WEBVPNguruhi birinchi navbatda AnyConnect VPN mijozini yuklab olish va ASA ning SCEP-Proksi funksiyasidan foydalangan holda foydalanuvchi sertifikatini berish uchun ishlatiladi; buning uchun biz tunnel guruhining o'zida ham, tegishli guruh siyosatida ham faollashtirilgan mos variantlarga egamiz. AC-Yuklab olish, va yuklangan AnyConnect profilida (sertifikat berish uchun maydonlar va boshqalar). Shuningdek, ushbu guruh siyosatida biz yuklab olish zarurligini ko'rsatamiz ISE posture moduli.
Tunnel guruhi SECURE-BANK-VPN oldingi bosqichda berilgan sertifikat bilan autentifikatsiya qilishda mijoz tomonidan avtomatik ravishda foydalaniladi, chunki Sertifikat xaritasiga muvofiq ulanish ushbu tunnel guruhiga to'g'ri keladi. Men sizga bu erda qiziqarli variantlar haqida gapirib beraman:
ikkilamchi autentifikatsiya serveri guruhi DUO # DUO serverida ikkilamchi autentifikatsiyani o'rnating (Radius Proksi)
foydalanuvchi nomi-certificateCN # Birlamchi autentifikatsiya qilish uchun foydalanuvchi loginini meros qilib olish uchun sertifikatning CN maydonidan foydalanamiz
sertifikatdan ikkinchi darajali foydalanuvchi nomi I # DUO serverida ikkilamchi autentifikatsiya qilish uchun biz olingan foydalanuvchi nomi va sertifikatning bosh harflari (I) maydonlaridan foydalanamiz.
foydalanuvchi nomini oldindan to'ldirish mijozi # foydalanuvchi nomini autentifikatsiya oynasida o'zgartirish imkoniyatisiz oldindan to'ldirilgan qilib qo'ying
ikkinchi darajali-pre-to'ldirish-foydalanuvchi nomi mijoz yashirish foydalanish-umumiy-parol surish # Biz ikkilamchi DUO autentifikatsiyasi uchun login/parol kiritish oynasini yashiramiz va parol maydoni oΚ»rniga autentifikatsiyani soΚ»rash uchun bildirishnoma usulidan (sms/push/telefon) foydalanamiz. shu yerda
!
access-list posture-redirect extended permit tcp any host 72.163.1.80
access-list posture-redirect extended deny ip any any
!
access-list VPN-Filter extended permit ip any any
!
ip local pool vpn-pool 192.168.100.33-192.168.100.63 mask 255.255.255.224
!
group-policy SECURE-BANK-VPN internal
group-policy SECURE-BANK-VPN attributes
dns-server value 192.168.99.155 192.168.99.130
vpn-filter value VPN-Filter
vpn-tunnel-protocol ssl-client
split-tunnel-policy tunnelall
default-domain value ashes.cc
address-pools value vpn-pool
webvpn
anyconnect ssl dtls enable
anyconnect mtu 1300
anyconnect keep-installer installed
anyconnect ssl keepalive 20
anyconnect ssl rekey time none
anyconnect ssl rekey method ssl
anyconnect dpd-interval client 30
anyconnect dpd-interval gateway 30
anyconnect ssl compression lzs
anyconnect dtls compression lzs
anyconnect modules value iseposture
anyconnect profiles value SECUREBANK type user
!
group-policy AC-DOWNLOAD internal
group-policy AC-DOWNLOAD attributes
dns-server value 192.168.99.155 192.168.99.130
vpn-filter value VPN-Filter
vpn-tunnel-protocol ssl-client
split-tunnel-policy tunnelall
default-domain value ashes.cc
address-pools value vpn-pool
scep-forwarding-url value http://ise.ashes.cc:9090/auth/caservice/pkiclient.exe
webvpn
anyconnect ssl dtls enable
anyconnect mtu 1300
anyconnect keep-installer installed
anyconnect ssl keepalive 20
anyconnect ssl rekey time none
anyconnect ssl rekey method ssl
anyconnect dpd-interval client 30
anyconnect dpd-interval gateway 30
anyconnect ssl compression lzs
anyconnect dtls compression lzs
anyconnect modules value iseposture
anyconnect profiles value SECUREBANK type user
!
tunnel-group DefaultWEBVPNGroup general-attributes
address-pool vpn-pool
authentication-server-group ISE
accounting-server-group ISE
default-group-policy AC-DOWNLOAD
scep-enrollment enable
tunnel-group DefaultWEBVPNGroup webvpn-attributes
authentication aaa certificate
!
tunnel-group SECURE-BANK-VPN type remote-access
tunnel-group SECURE-BANK-VPN general-attributes
address-pool vpn-pool
authentication-server-group ISE
secondary-authentication-server-group DUO
accounting-server-group ISE
default-group-policy SECURE-BANK-VPN
username-from-certificate CN
secondary-username-from-certificate I
tunnel-group SECURE-BANK-VPN webvpn-attributes
authentication aaa certificate
pre-fill-username client
secondary-pre-fill-username client hide use-common-password push
group-alias SECURE-BANK-VPN enable
dns-group ASHES-DNS
!
Keyin ISE ga o'tamiz:
Biz mahalliy foydalanuvchini sozlaymiz (siz AD/LDAP/ODBC va h.k. dan foydalanishingiz mumkin), soddalik uchun men ISE-ning o'zida mahalliy foydalanuvchi yaratdim va uni maydonga tayinladim. tavsifiUDID kompyuter undan VPN orqali kirishga ruxsat beriladi. Agar ISEda mahalliy autentifikatsiyadan foydalansam, men faqat bitta qurilma bilan cheklanaman, chunki maydonlar ko'p emas, lekin uchinchi tomon autentifikatsiya ma'lumotlar bazalarida menda bunday cheklovlar bo'lmaydi.
Keling, avtorizatsiya siyosatini ko'rib chiqaylik, u to'rtta ulanish bosqichiga bo'lingan:
Stend 1 β AnyConnect agentini yuklab olish va sertifikat berish siyosati
Stend 2 β Asosiy autentifikatsiya siyosati Login (sertifikatdan)/Parol + UDID tekshiruvi bilan sertifikat
Stend 3 β Foydalanuvchi nomi sifatida UDID dan foydalangan holda Cisco DUO (MFA) orqali ikkilamchi autentifikatsiya + Davlat baholash
Stend 4 - Yakuniy ruxsat quyidagi holatda bo'ladi:
Muvofiq;
UDID tekshiruvi (sertifikat + tizimga kirishdan),
Cisco DUO TIV;
login orqali autentifikatsiya;
Sertifikatning autentifikatsiyasi;
Keling, qiziqarli holatni ko'rib chiqaylik UUID_VALIDATED, shunchaki autentifikatsiya qiluvchi foydalanuvchi ushbu sohada ruxsat etilgan UDID bilan bog'langan shaxsiy kompyuterdan kelganga o'xshaydi. Tavsif hisob, shartlar quyidagicha ko'rinadi:
AnyConnect mijozidan UDID bizga qanday kelishini ISEdagi mijoz sessiyasi tafsilotlariga qarab tekshirishingiz mumkin. Batafsil ravishda biz AnyConnect-ni mexanizm orqali ko'ramiz ACIDEX sifatida nafaqat platforma haqida ma'lumot, balki qurilmaning UDID-ni ham yuboradi Cisco-AV-PAIR:
Keling, foydalanuvchi va maydonga berilgan sertifikatga e'tibor beraylik Bosh harflar (I), bu uni Cisco DUO da ikkilamchi TIV autentifikatsiyasi uchun login sifatida qabul qilish uchun ishlatiladi:
Jurnalning DUO Radius Proksi tomonida biz autentifikatsiya so'rovi qanday amalga oshirilganligini aniq ko'rishimiz mumkin, u foydalanuvchi nomi sifatida UDID yordamida keladi:
DUO portalidan biz muvaffaqiyatli autentifikatsiya hodisasini ko'ramiz:
Va foydalanuvchi xususiyatlarida men uni o'rnatdim ALIAS, men kirish uchun foydalanganman, o'z navbatida, bu kirish uchun ruxsat etilgan shaxsiy kompyuterning UDIDidir:
Natijada biz oldik:
Ko'p faktorli foydalanuvchi va qurilma autentifikatsiyasi;
Foydalanuvchi qurilmasini aldashdan himoya qilish;
Qurilmaning holatini baholash;
Domen mashinasi sertifikati va boshqalar bilan nazoratni kuchaytirish imkoniyati;
Avtomatik o'rnatilgan xavfsizlik modullari bilan ish joyini har tomonlama masofadan himoya qilish;