ProHoster > Blog > Uprava > Uvajanje gruče za uravnoteženje obremenitve ASA VPN
Uvajanje gruče za uravnoteženje obremenitve ASA VPN
V tem članku bi rad ponudil navodila po korakih, kako lahko hitro uvedete trenutno najbolj razširljivo shemo. Oddaljeni dostop VPN osnovni dostop AnyConnect in Cisco ASA - Gruča za izravnavo obremenitve VPN.
Uvod: Številna podjetja po svetu si zaradi trenutne situacije s COVID-19 prizadevajo svoje zaposlene preusmeriti na delo na daljavo. Zaradi množičnega prehoda na delo na daljavo se obremenitev obstoječih VPN prehodov podjetij kritično povečuje in potrebna je zelo hitra sposobnost njihovega prilagajanja. Po drugi strani pa so številna podjetja prisiljena na hitro usvojiti koncept dela na daljavo iz nič.
Pripravil sem vodnik po korakih za enostavno uvedbo VPN Load-Balancing Cluster kot najbolj razširljive VPN tehnologije.
Spodnji primer bo precej preprost glede na uporabljene algoritme za preverjanje pristnosti in avtorizacijo, vendar bo dobra možnost za hiter začetek (kar trenutno mnogim ni dovolj) z možnostjo poglobljene prilagoditve vašim potrebam med uvajanjem. postopek.
Kratke informacije: Tehnologija grozda za izravnavo obremenitve VPN ni funkcija samodejnega preklopa ali združevanja v gruče v izvornem smislu; ta tehnologija lahko združuje popolnoma različne modele ASA (z določenimi omejitvami), da uravnoteži obremenitev povezav VPN z oddaljenim dostopom. Med vozlišči takšne gruče ni sinhronizacije sej in konfiguracij, je pa mogoče samodejno uravnavati obremenitev VPN povezav in zagotavljati toleranco napak VPN povezav, dokler v gruči ne ostane vsaj eno aktivno vozlišče. Obremenitev v gruči se samodejno uravnoteži glede na obremenitev vozlišč glede na število sej VPN.
Za samodejni preklop določenih vozlišč gruče (če je potrebno) je mogoče uporabiti datoteko, tako da bo aktivno povezavo obravnavalo primarno vozlišče datoteke. Fileover ni nujen pogoj za zagotavljanje tolerance napak znotraj Load-Balancing gruče, gruče same v primeru okvare vozlišča prenesejo uporabniško sejo na drugo živo vozlišče, vendar brez shranjevanja statusa povezave, kar je natančno priskrbel vložnik. V skladu s tem je mogoče po potrebi združiti ti dve tehnologiji.
Gruča VPN za uravnoteženje obremenitve lahko vsebuje več kot dve vozlišči.
Gruča za izravnavo obremenitve VPN je podprta na ASA 5512-X in novejših.
Ker je vsak ASA znotraj VPN Load-Balancing clustra glede nastavitev samostojna enota, izvajamo vse konfiguracijske korake posebej na vsaki posamezni napravi.
Iz slike uvedemo primerke ASAv predlog, ki jih potrebujemo (ASAv5/10/30/50).
Vmesnike INSIDE / OUTSIDE dodelimo istim VLAN-om (zunaj v svojem VLAN-u, INSIDE v svojem, vendar na splošno znotraj gruče, glej topologijo), pomembno je, da so vmesniki iste vrste v istem segmentu L2.
Licence:
Trenutno namestitev ASAv ne bo imela nobenih licenc in bo omejena na 100 kbps.
Če želite namestiti licenco, morate v svojem pametnem računu ustvariti žeton: https://software.cisco.com/ -> Pametno licenciranje programske opreme
V oknu, ki se odpre, kliknite gumb Nov žeton
Prepričajte se, da je polje v oknu, ki se odpre, aktivno in potrditveno polje označeno Dovoli izvozno nadzorovano funkcionalnost… Brez aktivnega tega polja ne boste mogli uporabljati funkcij močnega šifriranja in s tem VPN. Če to polje ni aktivno, se obrnite na ekipo za račun z zahtevo za aktivacijo.
Po pritisku na gumb Ustvari žeton, bo ustvarjen žeton, ki ga bomo uporabili za pridobitev licence za ASAv, kopirajte ga:
Ponovimo korake C, D, E za vsako nameščeno ASAv.
Za lažje kopiranje žetona začasno dovolimo telnet. Konfigurirajmo vsak ASA (spodnji primer prikazuje nastavitve na ASA-1). telnet ne deluje z zunaj, če ga res potrebujete, spremenite varnostno raven na 100 na zunaj, nato pa ga vrnite nazaj.
!
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
!
Če želite registrirati žeton v oblaku Smart-Account, morate zagotoviti dostop do interneta za ASA, podrobnosti tukaj.
Skratka, ASA je potreben:
dostop preko HTTPS do interneta;
časovna sinhronizacija (pravilneje prek NTP);
registriran DNS strežnik;
Našemu ASA vzpostavimo telnet in izvedemo nastavitve za aktiviranje licence prek pametnega računa.
!
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>
Preverimo, ali je naprava uspešno registrirala licenco in ali so na voljo možnosti šifriranja:
Konfiguriranje osnovnega SSL-VPN na vsakem prehodu
Nato konfigurirajte dostop prek SSH in ASDM:
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
!
Da bo ASDM deloval, ga morate najprej prenesti s spletne strani cisco.com, v mojem primeru je to naslednja datoteka:
Če želite, da odjemalec AnyConnect deluje, morate naložiti sliko v vsak ASA za vsak uporabljeni OS namiznega odjemalca (načrtovana uporaba Linux / Windows / MAC), potrebovali boste datoteko z Paket za uvedbo glavne enote V naslovu:
Prenesene datoteke je mogoče naložiti na primer na strežnik FTP in naložiti v vsak posamezen ASA:
Konfiguriramo ASDM in samopodpisano potrdilo za SSL-VPN (priporočljiva je uporaba zaupanja vrednega potrdila v produkciji). Nastavljeni FQDN naslova navidezne gruče (vpn-demo.ashes.cc), kot tudi vsak FQDN, povezan z zunanjim naslovom vsakega vozlišča gruče, se mora v zunanjem območju DNS razrešiti v naslov IP vmesnika OUTSIDE (ali na preslikani naslov, če se uporablja posredovanje vrat udp/443 (DTLS) in tcp/443(TLS)). Podrobne informacije o zahtevah za certifikat so navedene v razdelku Preverjanje spričevala dokumentacijo.
!
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
Ne pozabite določiti vrat za preverjanje delovanja ASDM, na primer:
Izvedemo osnovne nastavitve tunela:
Omrežje podjetja bomo naredili dostopno prek tunela in neposredno povezali internet (ni najbolj varna metoda, ker na povezovalnem gostitelju ni varnostnih ukrepov, možno je prodreti skozi okuženega gostitelja in izpisati podatke podjetja, možnost split-tunnel-policy tunnelall bo spustil ves gostiteljski promet v predor. Kljub temu split-tunel omogoča razbremenitev prehoda VPN in ne obdeluje gostiteljskega internetnega prometa)
Izdajmo naslove iz podomrežja 192.168.20.0/24 gostiteljem v tunelu (pool od 10 do 30 naslovov (za vozlišče #1)). Vsako vozlišče gruče VPN mora imeti svoje lastno področje.
Izvedli bomo osnovno avtentikacijo z lokalno ustvarjenim uporabnikom na ASA (To ni priporočljivo, to je najlažji način), bolje je, da avtentikacijo izvedete prek LDAP/RADIJ, ali še bolje, kravato Večfaktorska overitev (MFA)Npr Cisco DUO.
(NEOBVEZNO): V zgornjem primeru smo za avtentikacijo oddaljenih uporabnikov uporabili lokalnega uporabnika na ITU, kar je seveda, razen v laboratoriju, slabo uporabno. Dal bom primer, kako hitro prilagoditi nastavitev za preverjanje pristnosti RADIUS strežnik, na primer rabljen Cisco Identity Services Engine:
Ta integracija je omogočila ne le hitro integracijo postopka preverjanja pristnosti z imeniško storitvijo AD, temveč tudi razlikovanje, ali povezani računalnik pripada AD, razumevanje, ali gre za poslovno ali osebno napravo, in oceno stanja povezanega napravo.
Konfigurirajmo Transparent NAT tako, da promet med odjemalcem in omrežnimi viri omrežja podjetja ni moten:
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
(NEOBVEZNO): Da bi naše stranke izpostavili internetu prek ASA (pri uporabi tunnelall možnosti) z uporabo PAT in tudi izhodom prek istega vmesnika OUTSIDE, od koder so povezani, morate opraviti naslednje nastavitve
Pri uporabi gruče je izjemno pomembno omogočiti notranjemu omrežju, da razume, kateri ASA naj usmeri povratni promet uporabnikom, za to morate prerazporediti poti / 32 naslovov, izdanih strankam.
Trenutno še nismo konfigurirali grozda, vendar že imamo delujoče VPN prehode, na katere se lahko individualno povežete preko FQDN ali IP.
Povezanega odjemalca vidimo v usmerjevalni tabeli prvega ASA:
Da bi naša celotna gruča VPN in celotno omrežje podjetja poznala pot do našega odjemalca, bomo predpono odjemalca prerazporedili v dinamični usmerjevalni protokol, na primer OSPF:
Zdaj imamo pot do odjemalca iz drugega prehoda ASA-2 in uporabniki, povezani z različnimi prehodi VPN znotraj gruče, lahko na primer neposredno komunicirajo prek korporativnega programskega telefona in vračajo promet iz virov, ki jih zahteva uporabnik. pridite do želenega prehoda VPN:
Preidimo na konfiguracijo gruče za uravnoteženje obremenitve.
Naslov 192.168.31.40 bo uporabljen kot navidezni IP (VIP - vsi odjemalci VPN se bodo na začetku povezali nanj), s tega naslova bo Cluster Master PREUSMERIL na manj obremenjeno vozlišče gruče. Ne pozabite napisati naprej in nazaj zapis DNS tako za vsak zunanji naslov / FQDN vsakega vozlišča gruče kot za VIP.
Delovanje gruče preverimo z dvema povezanima odjemalcema:
Naredimo uporabniško izkušnjo bolj priročno s samodejno naloženim profilom AnyConnect prek ASDM.
Profil poimenujemo na prikladen način in z njim povežemo naš pravilnik skupine:
Po naslednji povezavi odjemalca bo ta profil samodejno prenesen in nameščen v odjemalcu AnyConnect, tako da, če se morate povezati, ga morate samo izbrati s seznama:
Ker smo ta profil ustvarili samo na enem ASA z uporabo ASDM, ne pozabite ponoviti korakov na drugih ASA v gruči.
Zaključek: Tako smo hitro uvedli gručo več prehodov VPN s samodejnim uravnavanjem obremenitve. Dodajanje novih vozlišč v gručo je enostavno s preprostim vodoravnim skaliranjem z uvedbo novih virtualnih strojev ASAv ali uporabo ASA strojne opreme. Funkcionalno bogat odjemalec AnyConnect lahko močno izboljša varno oddaljeno povezavo z uporabo Drža (ocene stanja), ki se najbolj učinkovito uporablja v povezavi s sistemom centraliziranega nadzora in računovodstva dostopa Identity Services Engine.