Примена АСА ВПН кластера за балансирање оптерећења
У овом чланку бих желео да пружим упутства корак по корак о томе како можете брзо да примените најскалабилнију шему у овом тренутку ВПН са удаљеним приступом на основу приступа АниЦоннецт и Цисцо АСА - ВПН кластер за балансирање оптерећења.
Увод: Многе компаније широм света, због тренутне ситуације са ЦОВИД-19, улажу напоре да своје запослене пребаце на даљински рад. Због широко распрострањеног преласка на рад на даљину, оптерећење постојећих ВПН гатеваи-а компанија критично расте и потребна је веома брза могућност њиховог скалирања. С друге стране, многе компаније су принуђене да на брзину савладају концепт рада на даљину од нуле.
Припремио сам упутства корак по корак за једноставну опцију за постављање ВПН кластера за балансирање оптерећења као најскалабилније ВПН технологије.
Пример у наставку ће бити прилично једноставан са становишта коришћених алгоритама за аутентификацију и ауторизацију, али ће бити добра опција за брз почетак (што сада многима недостаје) са могућношћу дубинског прилагођавања ваше потребе током процеса имплементације.
Кратке информације: Технологија ВПН кластера за балансирање оптерећења није функција преласка на грешку или функција кластерирања у свом изворном смислу; ова технологија може комбиновати потпуно различите АСА моделе (са одређеним ограничењима) како би избалансирала ВПН везе са удаљеним приступом. Не постоји синхронизација сесија и конфигурација између чворова таквог кластера, али је могуће аутоматски балансирати ВПН везе и обезбедити отпорност на грешке ВПН веза све док бар један активни чвор не остане у кластеру. Оптерећење у кластеру се аутоматски балансира у зависности од оптерећења чворова по броју ВПН сесија.
За толеранцију грешака одређених чворова кластера (ако је потребно), можете користити филер, тако да ће активну везу обрадити примарни чвор филера. Филеовер није неопходан услов за обезбеђивање толеранције грешака унутар кластера за балансирање оптерећења; у случају квара чвора, сам кластер ће пренети корисничку сесију на други активни чвор, али без одржавања статуса везе, што је управо оно што филер пружа. Сходно томе, ове две технологије се могу комбиновати ако је потребно.
ВПН кластер за балансирање оптерећења може да садржи више од два чвора.
ВПН кластер за балансирање оптерећења је подржан на АСА 5512-Кс и новијим верзијама.
Пошто је сваки АСА у оквиру ВПН Лоад-Баланцинг кластера независна јединица у смислу подешавања, све кораке конфигурације спроводимо појединачно на сваком појединачном уређају.
Ми примењујемо АСАв инстанце шаблона који су нам потребни (АСАв5/10/30/50) са слике.
ИНСИДЕ/ОУТСИДЕ интерфејсе додељујемо истом ВЛАН-у (Споља у сопственом ВЛАН-у, УНУТРА у сопственом, али уобичајено унутар кластера, види топологију), важно је да се интерфејси истог типа налазе у истом Л2 сегменту.
Лиценце:
У време инсталације, АСАв неће имати никакве лиценце и биће ограничен на 100кбит/сец.
Да бисте инсталирали лиценцу, потребно је да генеришете токен на свом Смарт-Аццоунт налогу: https://software.cisco.com/ -> Паметно лиценцирање софтвера
У прозору који се отвори кликните на дугме Нови токен
Уверите се да је поље у прозору који се отвара активно и да је поље за потврду означено Дозволите функционалност контролисане извозом... Без овог активног поља нећете моћи да користите јаке функције шифровања и, сходно томе, ВПН. Ако ово поље није активно, контактирајте свој тим за налог да затражите активацију.
Након притиска на дугме Креирајте токен, биће креиран токен који ћемо користити за добијање лиценце за АСАв, копирајте га:
Поновимо кораке Ц,Д,Е за сваки распоређени АСАв.
Да бисмо олакшали копирање токена, хајде да привремено омогућимо телнет. Хајде да конфигуришемо сваки АСА (пример испод илуструје подешавања на АСА-1). телнет споља не ради, ако вам је заиста потребан, промените ниво безбедности на 100 на спољашњи, а затим га вратите.
!
ciscoasa(config)# int gi0/0
ciscoasa(config)# nameif outside
ciscoasa(config)# ip address 192.168.31.30 255.255.255.0
ciscoasa(config)# no shut
!
ciscoasa(config)# int gi0/1
ciscoasa(config)# nameif inside
ciscoasa(config)# ip address 192.168.255.2 255.255.255.0
ciscoasa(config)# no shut
!
ciscoasa(config)# telnet 0 0 inside
ciscoasa(config)# username admin password cisco priv 15
ciscoasa(config)# ena password cisco
ciscoasa(config)# aaa authentication telnet console LOCAL
!
ciscoasa(config)# route outside 0 0 192.168.31.1
!
ciscoasa(config)# wr
!
Да бисте регистровали токен у облаку Смарт-Аццоунт, морате да обезбедите приступ Интернету за АСА, детаљи овде.
Укратко, АСА је потребна:
Приступ Интернету преко ХТТПС-а;
синхронизација времена (тачније преко НТП-а);
регистровани ДНС сервер;
Идемо преко телнета до нашег АСА и вршимо подешавања за активирање лиценце преко Смарт-Аццоунт-а.
!
ciscoasa(config)# clock set 19:21:00 Mar 18 2020
ciscoasa(config)# clock timezone MSK 3
ciscoasa(config)# ntp server 192.168.99.136
!
ciscoasa(config)# dns domain-lookup outside
ciscoasa(config)# DNS server-group DefaultDNS
ciscoasa(config-dns-server-group)# name-server 192.168.99.132
!
! Проверим работу DNS:
!
ciscoasa(config-dns-server-group)# ping ya.ru
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 87.250.250.242, timeout is 2 seconds:
!!!!!
!
! Проверим синхронизацию NTP:
!
ciscoasa(config)# show ntp associations
address ref clock st when poll reach delay offset disp
*~192.168.99.136 91.189.94.4 3 63 64 1 36.7 1.85 17.5
* master (synced), # master (unsynced), + selected, - candidate, ~ configured
!
! Установим конфигурацию нашей ASAv для Smart-Licensing (в соответствии с Вашим профилем, в моем случае 100М для примера)
!
ciscoasa(config)# license smart
ciscoasa(config-smart-lic)# feature tier standard
ciscoasa(config-smart-lic)# throughput level 100M
!
! В случае необходимости можно настроить доступ в Интернет через прокси используйте следующий блок команд:
!call-home
! http-proxy ip_address port port
!
! Далее мы вставляем скопированный из портала Smart-Account токен (<token>) и регистрируем лицензию
!
ciscoasa(config)# end
ciscoasa# license smart register idtoken <token>
Проверавамо да ли је уређај успешно регистровао лиценцу и да ли су доступне опције шифровања:
Конфигурисање основног ССЛ-ВПН-а на сваком мрежном пролазу
Затим конфигуришемо приступ преко ССХ и АСДМ:
ciscoasa(config)# ssh ver 2
ciscoasa(config)# aaa authentication ssh console LOCAL
ciscoasa(config)# aaa authentication http console LOCAL
ciscoasa(config)# hostname vpn-demo-1
vpn-demo-1(config)# domain-name ashes.cc
vpn-demo-1(config)# cry key gen rsa general-keys modulus 4096
vpn-demo-1(config)# ssh 0 0 inside
vpn-demo-1(config)# http 0 0 inside
!
! Поднимем сервер HTTPS для ASDM на порту 445 чтобы не пересекаться с SSL-VPN порталом
!
vpn-demo-1(config)# http server enable 445
!
Да би АСДМ функционисао, прво морате да га преузмете са цисцо.цом, у мом случају то је следећа датотека:
Да би АниЦоннецт клијент функционисао, потребно је да преузмете слику на сваки АСА за сваки коришћени оперативни систем клијента (планирано да користи Линук/Виндовс/МАЦ), биће вам потребна датотека са Пакет за имплементацију главног уређаја У наслову:
Преузете датотеке се могу отпремити, на пример, на ФТП сервер и отпремити на сваки појединачни АСА:
Конфигуришемо АСДМ и Селф-Сигнед сертификат за ССЛ-ВПН (препоручује се коришћење поузданог сертификата у производњи). Успостављени ФКДН виртуелне адресе кластера (впн-демо.асхес.цц), као и сваки ФКДН повезан са екстерном адресом сваког чвора кластера морају бити решени у спољној ДНС зони на ИП адресу ВАЊСКОГ интерфејса (или на мапирану адресу ако се користи прослеђивање порта удп/443 (ДТЛС) и тцп/443(ТЛС)). Детаљне информације о захтевима за сертификат су наведене у одељку Верификација сертификата документацију.
!
vpn-demo-1(config)# crypto ca trustpoint SELF
vpn-demo-1(config-ca-trustpoint)# enrollment self
vpn-demo-1(config-ca-trustpoint)# fqdn vpn-demo.ashes.cc
vpn-demo-1(config-ca-trustpoint)# subject-name cn=*.ashes.cc, ou=ashes-lab, o=ashes, c=ru
vpn-demo-1(config-ca-trustpoint)# serial-number
vpn-demo-1(config-ca-trustpoint)# crl configure
vpn-demo-1(config-ca-crl)# cry ca enroll SELF
% The fully-qualified domain name in the certificate will be: vpn-demo.ashes.cc
Generate Self-Signed Certificate? [yes/no]: yes
vpn-demo-1(config)#
!
vpn-demo-1(config)# sh cry ca certificates
Certificate
Status: Available
Certificate Serial Number: 4d43725e
Certificate Usage: General Purpose
Public Key Type: RSA (4096 bits)
Signature Algorithm: SHA256 with RSA Encryption
Issuer Name:
serialNumber=9A439T02F95
hostname=vpn-demo.ashes.cc
cn=*.ashes.cc
ou=ashes-lab
o=ashes
c=ru
Subject Name:
serialNumber=9A439T02F95
hostname=vpn-demo.ashes.cc
cn=*.ashes.cc
ou=ashes-lab
o=ashes
c=ru
Validity Date:
start date: 00:16:17 MSK Mar 19 2020
end date: 00:16:17 MSK Mar 17 2030
Storage: config
Associated Trustpoints: SELF
CA Certificate
Status: Available
Certificate Serial Number: 0509
Certificate Usage: General Purpose
Public Key Type: RSA (4096 bits)
Signature Algorithm: SHA1 with RSA Encryption
Issuer Name:
cn=QuoVadis Root CA 2
o=QuoVadis Limited
c=BM
Subject Name:
cn=QuoVadis Root CA 2
o=QuoVadis Limited
c=BM
Validity Date:
start date: 21:27:00 MSK Nov 24 2006
end date: 21:23:33 MSK Nov 24 2031
Storage: config
Associated Trustpoints: _SmartCallHome_ServerCA
Да бисте проверили рад АСДМ-а, не заборавите да наведете порт, на пример:
Хајде да извршимо основна подешавања тунела:
Учинићемо корпоративну мрежу доступном кроз тунел, и директно повезати Интернет (није најбезбеднији метод у одсуству безбедносних мера на хосту за повезивање, могуће је продрети преко зараженог хоста и изнети корпоративне податке, опција сплит-туннел-полици туннелалл ће дозволити сав саобраћај домаћина у тунел. Ипак Сплит-Тунел омогућава да се растерети ВПН гејтвеј и не обрађује интернет саобраћај домаћина)
Издаћемо хостове у тунелу са адресама из подмреже 192.168.20.0/24 (скуп од 10 до 30 адреса (за чвор #1)). Сваки чвор у кластеру мора имати сопствени ВПН базен.
Хајде да извршимо основну аутентификацију са локално креираним корисником на АСА (ово се не препоручује, ово је најједноставнији метод), боље је извршити аутентификацију преко ЛДАП/РАДИУС, или још боље, кравата Вишефакторска аутентикација (МФА), Нпр Цисцо ДУО.
(ОПЦИОНО): У горњем примеру, користили смо локалног корисника на заштитном зиду за аутентификацију удаљених корисника, што је наравно од мале користи осим у лабораторији. Даћу пример како брзо прилагодити подешавање за аутентификацију РАДИУС сервер, који се користи на пример Цисцо Идентити Сервицес Енгине:
Ова интеграција је омогућила не само брзу интеграцију процедуре аутентификације са услугом АД именика, већ и да се разликује да ли повезани рачунар припада АД, да се разуме да ли се ради о корпоративном или личном уређају и процени стање повезаног уређај.
Хајде да конфигуришемо Транспарент НАТ тако да се не омета саобраћај између клијента и мрежних ресурса корпоративне мреже:
vpn-demo-1(config-network-object)# subnet 192.168.20.0 255.255.255.0
!
vpn-demo-1(config)# nat (inside,outside) source static any any destination static vpn-users vpn-users no-proxy-arp
(ОПЦИОНО): Да бисмо своје клијенте изложили Интернету преко АСА (када користите тунелалл опције) користећи ПАТ, а такође изађу кроз исти ВАЊСКИ интерфејс одакле су повезани, потребно је да извршите следећа подешавања
Изузетно је важно када се користи кластер да се интерној мрежи омогући да разуме који АСА да усмерава повратни саобраћај до корисника, за то је потребно прерасподелити руте /32 адресе које се издају клијентима.
Тренутно још нисмо конфигурисали кластер, али већ имамо функционалне ВПН мрежне пролазе на које се можете појединачно повезати преко ФКДН-а или ИП-а.
Видимо повезаног клијента у табели рутирања првог АСА:
Да би цео наш ВПН кластер и цела корпоративна мрежа знали пут до нашег клијента, префикс клијента ћемо прерасподелити у динамички протокол за рутирање, на пример ОСПФ:
Сада имамо руту до клијента од другог АСА-2 гејтвеја и корисници повезани на различите ВПН гејтвејеве унутар кластера могу, на пример, да комуницирају директно преко корпоративног софтфона, баш као што ће стизати повратни саобраћај из ресурса које корисник захтева на жељеном ВПН пролазу:
Пређимо на подешавање кластера за балансирање оптерећења.
Адреса 192.168.31.40 ће се користити као виртуелна ИП адреса (ВИП - сви ВПН клијенти ће се иницијално повезати на њу), са ове адресе ће Цлустер Мастер ПРЕУСМЕРИТИ на мање оптерећен чвор кластера. Не заборавите да се региструјете унапред и уназад ДНС записе како за сваку екстерну адресу/ФКДН сваког чвора кластера, тако и за ВИП.
Проверавамо рад кластера са два повезана клијента:
Учинимо корисничко искуство практичнијим са аутоматски преузетим АниЦоннецт профилом преко АСДМ-а.
Именујемо профил на погодан начин и повезујемо нашу политику групе са њим:
Након следећег повезивања са клијентом, овај профил ће бити аутоматски преузет и инсталиран у АниЦоннецт клијенту, тако да ако треба да се повежете, само треба да га изаберете са листе:
Пошто смо користећи АСДМ креирали овај профил само на једном АСА-у, не заборавите да поновите кораке на преосталим АСА-овима у кластеру.
Закључак: Стога смо брзо применили кластер од неколико ВПН мрежних пролаза са аутоматским балансирањем оптерећења. Додавање нових чворова у кластер је једноставно, постижући једноставно хоризонтално скалирање применом нових АСАв виртуелних машина или коришћењем хардверских АСА. АниЦоннецт клијент богат функцијама може у великој мери побољшати ваше могућности безбедне даљинске везе помоћу Држање (процене стања), који се најефикасније користи у комбинацији са централизованим системом контроле приступа и рачуноводства Идентити Сервицес Енгине.