Nyebarkeun Kluster Balancing Beban ASA VPN

Dina artikel ieu, Abdi hoyong nyadiakeun hambalan-demi-hambalan parentah tentang kumaha anjeun bisa gancang nyebarkeun skéma paling scalable di momen. Jauh Aksés VPN aksés base AnyConnect jeung Cisco ASA - VPN Load Balancing Kluster.

bubuka: Seueur perusahaan di sakumna dunya, ningali kaayaan ayeuna sareng COVID-19, nuju usaha pikeun nransfer karyawanna ka padamelan jarak jauh. Kusabab transisi masal ka padamelan jauh, beban dina gateway VPN perusahaan anu tos aya sacara kritis ningkat sareng kamampuan anu gancang pisan pikeun skala aranjeunna diperyogikeun. Di sisi anu sanés, seueur perusahaan kapaksa buru-buru ngawasa konsép padamelan jarak jauh ti mimiti.

Pikeun ngabantosan usaha pikeun ngahontal aksés VPN anu gampang, aman, sareng skalabel pikeun pagawé dina waktos anu paling pondok, Cisco ngalisensikeun klien SSL-VPN anu beunghar fitur AnyConnect dugi ka 13 minggu. Anjeun ogé tiasa nyandak ASAv pikeun uji (ASA Virtual pikeun hypervisors VMWare / Hyper-V / KVM sareng platform awan AWS / Azure) ti mitra anu otorisasi atanapi ku ngahubungi perwakilan Cisco anu damel sareng anjeun..

Prosedur pikeun ngaluarkeun lisénsi AnyConnect COVID-19 dijelaskeun di dieu.

Kuring geus disiapkeun pituduh hambalan-demi-hambalan pikeun deployment basajan tina VPN Load-Balancing Kluster salaku téhnologi VPN paling scalable.

Conto di handap bakal cukup basajan dina hal auténtikasi sareng otorisasi algoritma anu dianggo, tapi bakal janten pilihan anu hadé pikeun ngamimitian gancang (anu ayeuna henteu cekap pikeun seueur) kalayan kamungkinan adaptasi anu jero pikeun kabutuhan anjeun salami panyebaran. prosés.

Inpormasi singket: VPN Load Balancing Cluster téhnologi sanes a failover sarta lain fungsi clustering dina rasa asli na, téhnologi ieu bisa ngagabungkeun model ASA lengkep béda (kalawan larangan nu tangtu) guna ngamuat kasaimbangan sambungan Jauh-Aksés VPN. Henteu aya sinkronisasi sesi sareng konfigurasi antara titik-titik kluster sapertos kitu, tapi tiasa sacara otomatis ngamuat kasaimbangan sambungan VPN sareng mastikeun kasabaran kasalahan sambungan VPN dugi sahenteuna hiji titik aktif tetep dina kluster. Beban dina kluster sacara otomatis saimbang gumantung kana beban kerja titik ku jumlah sesi VPN.

Pikeun failover titik husus tina klaster (lamun diperlukeun), filer bisa dipaké, jadi sambungan aktip bakal diatur ku titik primér filer nu. Fileover sanes kaayaan anu dipikabutuh pikeun mastikeun kasabaran sesar dina klaster Load-Balancing, klaster sorangan, upami gagal node, bakal nransfer sesi pangguna ka node langsung anu sanés, tapi tanpa nyimpen status sambungan, anu tepatna. disadiakeun ku filer. Sasuai, kasebut nyaéta dimungkinkeun, upami diperlukeun, pikeun ngagabungkeun dua téknologi ieu.

Kluster VPN Load-Balancing tiasa ngandung langkung ti dua titik.

VPN Load-Balancing Cluster dirojong dina ASA 5512-X sareng di luhur.

Kusabab unggal ASA dina klaster VPN Load-Balancing mangrupikeun unit mandiri tina segi setélan, kami ngalaksanakeun sagala léngkah konfigurasi masing-masing dina unggal alat individu.

Rincian téknologi di dieu

Topologi logis tina conto anu dipasihkeun:

Nyebarkeun Kluster Balancing Beban ASA VPN

Panyebaran primér:

  1. Urang nyebarkeun instansi ASAv tina témplat urang kudu (ASAv5/10/30/50) tina gambar.

  2. Urang napelkeun jero / interfaces LUAR ka VLAN sarua (Di luar dina VLAN sorangan, jero dina sorangan, tapi umumna dina klaster, tingali topology nu), hal anu penting nu interfaces sahiji tipe sarua aya dina ruas L2 sarua.

  3. Lisensi:

    • Ayeuna pamasangan ASAv moal gaduh lisénsi sareng bakal dugi ka 100kbps.
    • Pikeun masang lisénsi, anjeun kedah ngahasilkeun token dina Akun Smart anjeun: https://software.cisco.com/ -> Lisénsi Software pinter
    • Dina jandela nu muka, klik tombol Token Anyar

    Nyebarkeun Kluster Balancing Beban ASA VPN

    • Pastikeun yén dina jandela anu muka aya widang aktip sareng tanda centang dipariksa Ngidinan fungsionalitas dikawasa ékspor… Tanpa widang ieu aktip, Anjeun moal bisa ngagunakeun fungsi enkripsi kuat jeung, sasuai, VPN. Lamun widang ieu teu aktip, mangga ngahubungan tim akun anjeun kalawan pamundut aktivasina.

    Nyebarkeun Kluster Balancing Beban ASA VPN

    • Saatos mencét tombol Jieun Token, token bakal didamel anu bakal kami anggo pikeun kéngingkeun lisénsi pikeun ASAv, salin:

    Nyebarkeun Kluster Balancing Beban ASA VPN

    • Ulang léngkah C, D, E pikeun tiap ASAv deployed.
    • Sangkan leuwih gampang nyalin token, hayu urang samentara ngidinan telnet. Hayu urang ngonpigurasikeun unggal ASA (conto di handap ieu ngagambarkeun setélan dina ASA-1). telnet henteu tiasa dianggo sareng luar, upami anjeun peryogi pisan, robih tingkat kaamanan ka 100 ka luar, teras balikkeun deui.

    !
    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
    !

    • Pikeun ngadaptarkeun token dina awan Smart-Account, anjeun kedah nyayogikeun aksés Internét pikeun ASA, rinci dieu.

    Singkatna, ASA diperyogikeun:

    • aksés via HTTPS ka Internét;
    • sinkronisasi waktos (langkung leres, via NTP);
    • server DNS didaptarkeun;
      • Urang telnet ka ASA urang jeung nyieun setelan pikeun ngaktipkeun lisénsi ngaliwatan Smart-Akun.

    !
    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>

    • Kami pariksa yén alat parantos suksés ngadaptarkeun lisénsi sareng pilihan enkripsi sayogi:

    Nyebarkeun Kluster Balancing Beban ASA VPN

    Nyebarkeun Kluster Balancing Beban ASA VPN

  4. Nyetél SSL-VPN dasar dina unggal gateway

    • Salajengna, ngonpigurasikeun aksés via SSH sareng 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 
    !

    • Pikeun ASDM tiasa dianggo, anjeun kedah ngaunduh heula tina situs wéb cisco.com, bisi kuring nyaéta file ieu:

    Nyebarkeun Kluster Balancing Beban ASA VPN

    • Pikeun klien AnyConnect tiasa dianggo, anjeun kedah unggah gambar ka unggal ASA pikeun unggal OS klien desktop anu dianggo (direncanakeun nganggo Linux / Windows / MAC), anjeun peryogi file sareng Paket deployment Headend Dina judulna:

    Nyebarkeun Kluster Balancing Beban ASA VPN

    • File anu diunduh tiasa diunggah, contona, ka server FTP sareng diunggah ka unggal ASA:

    Nyebarkeun Kluster Balancing Beban ASA VPN

    • Urang ngonpigurasikeun ASDM jeung sertipikat Self-Signed pikeun SSL-VPN (disarankeun make sertipikat dipercaya dina produksi). FQDN set tina Alamat Kluster Virtual (vpn-demo.ashes.cc), kitu ogé unggal FQDN pakait sareng alamat éksternal unggal titik klaster, kudu ngabéréskeun di zone DNS éksternal ka alamat IP tina panganteur OUTSIDE (atawa ka alamat dipetakeun lamun port diteruskeun udp / 443 dipaké (DTLS) jeung tcp / 443 (TLS)). Inpormasi lengkep ngeunaan sarat pikeun sertipikat dijelaskeun dina bagian Verifikasi Sértipikat dokuméntasi.

    !
    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               

    • Tong hilap netepkeun port pikeun mariksa ASDM berpungsi, contona:

    Nyebarkeun Kluster Balancing Beban ASA VPN

    • Hayu urang ngalaksanakeun setélan dasar torowongan:
    • Hayu urang ngajantenkeun jaringan perusahaan ngalangkungan torowongan, sareng ngantepkeun Internét langsung (sanés cara anu paling aman upami teu aya panyalindungan dina host anu nyambungkeun, mungkin waé pikeun nembus host anu kainféksi sareng ningalikeun data perusahaan, pilihan. pamisah-torowongan-kawijakan tunnelall bakal ngantep sadaya lalulintas host kana torowongan. Sanaos kitu pamisah-torowongan ngamungkinkeun pikeun ngaleupaskeun gateway VPN sareng henteu ngolah lalu lintas Internét host)
    • Hayu urang ngaluarkeun alamat tina subnet 192.168.20.0/24 ka host dina torowongan (kolam renang ti 10 dugi ka 30 alamat (pikeun titik #1)). Unggal titik tina klaster VPN kudu boga kolam renang sorangan.
    • Kami bakal ngalaksanakeun auténtikasi dasar sareng pangguna anu diciptakeun sacara lokal dina ASA (Ieu henteu disarankeun, ieu mangrupikeun metode anu paling gampang), langkung saé ngalakukeun auténtikasi ngalangkungan LDAP / RADIUS, atawa hadé acan, dasi Auténtikasi Multi-Faktor (MFA)contona Cisco DUO.

    !
    vpn-demo-1(config)# ip local pool vpn-pool 192.168.20.10-192.168.20.30 mask 255.255.255.0
    !
    vpn-demo-1(config)# access-list split-tunnel standard permit 192.168.0.0 255.255.0.0
    !
    vpn-demo-1(config)# group-policy SSL-VPN-GROUP-POLICY internal
    vpn-demo-1(config)# group-policy SSL-VPN-GROUP-POLICY attributes
    vpn-demo-1(config-group-policy)# vpn-tunnel-protocol ssl-client 
    vpn-demo-1(config-group-policy)# split-tunnel-policy tunnelspecified
    vpn-demo-1(config-group-policy)# split-tunnel-network-list value split-tunnel
    vpn-demo-1(config-group-policy)# dns-server value 192.168.99.132
    vpn-demo-1(config-group-policy)# default-domain value ashes.cc
    vpn-demo-1(config)# tunnel-group DefaultWEBVPNGroup general-attributes
    vpn-demo-1(config-tunnel-general)#  default-group-policy SSL-VPN-GROUP-POLICY
    vpn-demo-1(config-tunnel-general)#  address-pool vpn-pool
    !
    vpn-demo-1(config)# username dkazakov password cisco
    vpn-demo-1(config)# username dkazakov attributes
    vpn-demo-1(config-username)# service-type remote-access
    !
    vpn-demo-1(config)# ssl trust-point SELF
    vpn-demo-1(config)# webvpn
    vpn-demo-1(config-webvpn)#  enable outside
    vpn-demo-1(config-webvpn)#  anyconnect image disk0:/anyconnect-win-4.8.03036-webdeploy-k9.pkg
    vpn-demo-1(config-webvpn)#  anyconnect enable
    !

    • (PILIHAN): Dina conto di luhur, urang dipaké hiji pamaké lokal dina ITU pikeun auténtikasi pamaké jauh, nu tangtu, iwal di laboratorium, kirang lumaku. Kuring bakal masihan conto kumaha gancang adaptasi setelan pikeun auténtikasi radius server, contona dipaké Cisco Identity Services Engine:

    vpn-demo-1(config-aaa-server-group)# dynamic-authorization
    vpn-demo-1(config-aaa-server-group)# interim-accounting-update
    vpn-demo-1(config-aaa-server-group)# aaa-server RADIUS (outside) host 192.168.99.134
    vpn-demo-1(config-aaa-server-host)# key cisco
    vpn-demo-1(config-aaa-server-host)# exit
    vpn-demo-1(config)# tunnel-group DefaultWEBVPNGroup general-attributes
    vpn-demo-1(config-tunnel-general)# authentication-server-group  RADIUS 
    !

    Integrasi ieu ngamungkinkeun henteu ngan ukur gancang ngahijikeun prosedur auténtikasi sareng jasa diréktori AD, tapi ogé pikeun ngabédakeun naha komputer anu disambungkeun milik AD, ngartos naha alat ieu perusahaan atanapi pribadi, sareng pikeun meunteun status alat anu disambungkeun. .

    Nyebarkeun Kluster Balancing Beban ASA VPN

    Nyebarkeun Kluster Balancing Beban ASA VPN

    • Hayu urang ngonpigurasikeun Transparan NAT supados lalu lintas antara klien sareng sumber daya jaringan jaringan perusahaan henteu dicorét:

    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

    • (PILIHAN): Dina raraga ngalaan klien kami ka Internét ngaliwatan ASA (nalika ngagunakeun torowongan pilihan) ngagunakeun PAT, kitu ogé kaluar ngaliwatan interface OUTSIDE sarua ti mana maranéhanana disambungkeun, Anjeun kudu nyieun setélan handap

    vpn-demo-1(config-network-object)# nat (outside,outside) source dynamic vpn-users interface
    vpn-demo-1(config)# nat (inside,outside) source dynamic any interface
    vpn-demo-1(config)# same-security-traffic permit intra-interface 
    !

    • Nalika nganggo kluster, penting pisan pikeun ngaktifkeun jaringan internal pikeun ngartos ASA anu mana pikeun rute balik ka pangguna, pikeun ieu anjeun kedah nyebarkeun rute / 32 alamat anu dikaluarkeun ka klien.
      Di momen, urang teu acan ngonpigurasi klaster, tapi urang geus boga gawe gateways VPN nu bisa individual disambungkeun via FQDN atanapi IP.

    Nyebarkeun Kluster Balancing Beban ASA VPN

    Urang ningali klien disambungkeun dina tabel routing tina ASA munggaran:

    Nyebarkeun Kluster Balancing Beban ASA VPN

    Dina raraga sakabéh klaster VPN urang jeung sakabéh jaringan perusahaan uninga jalur ka klien kami, urang bakal redistribute awalan klien kana protokol routing dinamis, contona OSPF:

    !
    vpn-demo-1(config)# route-map RMAP-VPN-REDISTRIBUTE permit 1
    vpn-demo-1(config-route-map)#  match ip address VPN-REDISTRIBUTE
    !
    vpn-demo-1(config)# router ospf 1
    vpn-demo-1(config-router)#  network 192.168.255.0 255.255.255.0 area 0
    vpn-demo-1(config-router)#  log-adj-changes
    vpn-demo-1(config-router)#  redistribute static metric 5000 subnets route-map RMAP-VPN-REDISTRIBUTE

    Ayeuna kami gaduh rute ka klien tina gateway ASA-2 kadua sareng pangguna anu nyambung ka gerbang VPN anu béda dina kluster tiasa, contona, komunikasi langsung ngaliwatan telepon sélulér perusahaan, ogé ngabalikeun lalu lintas tina sumber daya anu dipénta ku pangguna bakal. datang ka gateway VPN nu dipikahoyong:

    Nyebarkeun Kluster Balancing Beban ASA VPN

  5. Hayu urang ngaléngkah ka ngonpigurasikeun klaster Load-Balancing.

    Alamat 192.168.31.40 bakal dianggo salaku IP Virtual (VIP - sadaya klien VPN mimitina bakal nyambung ka dinya), ti alamat ieu kluster Master bakal ngadamel REDIRECT ka titik kluster anu kirang dimuat. Tong hilap nyerat maju jeung ngabalikeun catetan DNS duanana pikeun tiap alamat éksternal / FQDN unggal titik tina klaster, sarta pikeun VIP.

    vpn-demo-1(config)# vpn load-balancing
    vpn-demo-1(config-load-balancing)# interface lbpublic outside
    vpn-demo-1(config-load-balancing)# interface lbprivate inside
    vpn-demo-1(config-load-balancing)# priority 10
    vpn-demo-1(config-load-balancing)# cluster ip address 192.168.31.40
    vpn-demo-1(config-load-balancing)# cluster port 4000
    vpn-demo-1(config-load-balancing)# redirect-fqdn enable
    vpn-demo-1(config-load-balancing)# cluster key cisco
    vpn-demo-1(config-load-balancing)# cluster encryption
    vpn-demo-1(config-load-balancing)# cluster port 9023
    vpn-demo-1(config-load-balancing)# participate
    vpn-demo-1(config-load-balancing)#

    • Kami pariksa operasi kluster sareng dua klien anu nyambung:

    Nyebarkeun Kluster Balancing Beban ASA VPN

    • Hayu urang ngajantenkeun pangalaman palanggan langkung merenah sareng profil AnyConnect anu dimuat sacara otomatis via ASDM.

    Nyebarkeun Kluster Balancing Beban ASA VPN

    Urang ngaranan profil dina cara merenah tur ngahubungkeun kawijakan grup urang jeung eta:

    Nyebarkeun Kluster Balancing Beban ASA VPN

    Saatos sambungan klien salajengna, profil ieu bakal otomatis diunduh sareng dipasang dina klien AnyConnect, janten upami anjeun kedah nyambung, anjeun kedah milih tina daptar:

    Nyebarkeun Kluster Balancing Beban ASA VPN

    Kusabab urang dijieun profil ieu dina ngan hiji ASA maké ASDM, ulah poho pikeun ngulang léngkah dina ASA séjén dina kluster.

kacindekan: Ku kituna, urang gancang deployed klaster sababaraha gateways VPN kalawan load balancing otomatis. Nambahkeun titik anyar kana klaster gampang, kalayan skala horizontal basajan ku deploying mesin virtual ASAv anyar atawa ngagunakeun ASAs hardware. Klién AnyConnect anu beunghar fitur tiasa pisan ningkatkeun sambungan jarak jauh anu aman ku ngagunakeun Sikep (perkiraan kaayaan), paling éféktif dipaké ditéang jeung sistem kontrol terpusat sarta aksés akuntansi Identity Services Engine.

sumber: www.habr.com

Tambahkeun komentar