Вообще существует два типа VPN:
Client VPN может использовать различные протоколы: IPSec, SSL, PPTP, L2TP и т.д.
Cisco ASA поддерживает два типа VPN Clints:
Данный материал посвящен установке Cisco Anyconnect на устройство ASA.
CiscoASA1# show version
Cisco Adaptive Security Appliance Software Version 8.3(2) Device Manager Version 6.3(2) Compiled on Fri 30-Jul-10 20:17 by builders System image file is "disk0:/asa832-npe-k8.bin" Config file at boot was "startup-config" CiscoASA1 up 86 days 23 hours Hardware: ASA5520, 2048 MB RAM, CPU Pentium 4 Celeron 2000 MHz Internal ATA Compact Flash, 256MB BIOS Flash M50FW016 @ 0xfff00000, 2048KB Encryption hardware device : Cisco ASA-55x0 on-board accelerator (revision 0x0) Boot microcode : CN1000-MC-BOOT-2.00 SSL/IKE microcode: CNLite-MC-SSLm-PLUS-2.03 IPSec microcode : CNlite-MC-IPSECm-MAIN-2.06 0: Ext: GigabitEthernet0/0 : address is c89c.1d16.be9a, irq 9 1: Ext: GigabitEthernet0/1 : address is c89c.1d16.be9b, irq 9 2: Ext: GigabitEthernet0/2 : address is c89c.1d16.be9c, irq 9 3: Ext: GigabitEthernet0/3 : address is c89c.1d16.be9d, irq 9 4: Ext: Management0/0 : address is c89c.1d16.be99, irq 11 5: Int: Not used : irq 11 6: Int: Not used : irq 5 Licensed features for this platform: Maximum Physical Interfaces : Unlimited perpetual Maximum VLANs : 150 perpetual Inside Hosts : Unlimited perpetual Failover : Active/Active perpetual VPN-DES : Enabled perpetual VPN-3DES-AES : Disabled perpetual Security Contexts : 10 perpetual GTP/GPRS : Disabled perpetual SSL VPN Peers : 500 perpetual Total VPN Peers : 750 perpetual Shared License : Disabled perpetual AnyConnect for Mobile : Enabled perpetual AnyConnect for Cisco VPN Phone : Enabled perpetual AnyConnect Essentials : Enabled perpetual Advanced Endpoint Assessment : Enabled perpetual Botnet Traffic Filter : Enabled perpetual Intercompany Media Engine : Disabled perpetual This platform has an ASA 5520 VPN Plus license. Serial Number: JMX1520L0X2 Running Permanent Activation Key: 0x1018da6e 0xc8d0d0e8 0x5d81b868 0xe4a8c490 0xc31ed5a7 Configuration register is 0x1 Configuration last modified by enable_15 at 10:27:43.137 MSD Mon Feb 9 2015
Копирую старые образы на TFTP:
asa832-npe-k8.bin
asdm-632.bin
Копирую новывй образы на ASA Flash:
asa915-21-k8.bin
asdm-732.bin
Далее удаляем старый образы, а также старую конфигурацию:
config factory-default
Для подключения к коммутатору используем Etherchannel со следующей конфигурацией:
ASA
interface GigabitEthernet0/0 channel-group 1 mode on ! interface GigabitEthernet0/1 channel-group 1 mode on ! interface Port-channel1 port-channel load-balance src-mac no shu ! interface Port-channel1.182 description LAN vlan 182 nameif inside security-level 100 ip address 192.168.252.18 255.255.255.252
WS-C3560X-48
interface Port-channel12 description --3560xUG1 moscow5520-- switchport trunk encapsulation dot1q switchport mode trunk ! interface GigabitEthernet0/28 description --3560xUG1 moscow5520-- switchport trunk encapsulation dot1q switchport mode trunk channel-group 12 mode on no shu ! interface GigabitEthernet0/29 description --3560xUG1 moscow5520-- switchport trunk encapsulation dot1q switchport mode trunk channel-group 12 mode on no shu
Проверим что etherchannel успешно собрался:
ASA
ciscoasa# show port-channel summary Flags: D - down P - bundled in port-channel I - stand-alone s - suspended H - Hot-standby (LACP only) U - in use N - not in use, no aggregation/nameif M - not in use, no aggregation due to minimum links not met w - waiting to be aggregated Number of channel-groups in use: 1 Group Port-channel Protocol Span-cluster Ports ------+-------------+---------+------------+------------------------------------ 1 Po1(U) - No Gi0/0(P) Gi0/1(P)
ciscoasa# show port-channel brief Channel-group listing: ----------------------- Group: 1 ---------- Span-cluster port-channel: No Ports: 2 Maxports = 16 Port-channels: 1 Max Port-channels = 48 Protocol: ON Minimum Links: 1 Load balance: src-mac
3560xUG1#show etherchannel 12 summary Flags: D - down P - bundled in port-channel I - stand-alone s - suspended H - Hot-standby (LACP only) R - Layer3 S - Layer2 U - in use f - failed to allocate aggregator M - not in use, minimum links not met u - unsuitable for bundling w - waiting to be aggregated d - default port Number of channel-groups in use: 9 Number of aggregators: 9 Group Port-channel Protocol Ports ------+-------------+-----------+----------------------------------------------- 12 Po12(SU) - Gi0/28(P) Gi0/29(P)
3560xUG1#show etherchannel load-balance EtherChannel Load-Balancing Configuration: src-mac
Обратите внимание, что на обоих устройствах должен быть выставлен одинаковый Load balance. В нашем случае это src-mac, метод по умолчанию для коммутатора.
clock timezone MSK 3 ntp server 64.90.182.55 ntp server 62.117.76.138 ntp server 81.2.117.228 ntp server 88.147.254.228 ntp server 192.168.252.6 ntp server 192.168.252.2
Проверка
show clock show ntp status show ntp associations
Для просмотра установленных лицензий используем команду show version
AnyConnect Essentials - основной тип лицензий клиенту anyconnect. Если установить AnyConnect Essentials, станет доступно 250 одновременных подключений. Основное ограничение - нельзя использовать Clientless Portal.
AnyConnect Premium Peers тоже что и AnyConnect Essentials + Clientless Portal.
AnyConnect for Mobile - подключение iphone, ipad, android.
Advanced Endpoint Assessment - позволяет предварительно проверить машину клиента на наличие Антивирусного ПО, встроенного Firewall, и по результатам накладывать соответствующую политику безопасности.
Подробнее здесь:
Cisco ASA Anyconnect licensing for dummies, updated!
http://www.firewall.cx/cisco-technical-knowledgebase/cisco-firewalls/110...
Существуют дистрибутивы anyconnect 3 и 4 версий:
Всего это 4 файла PKG:
- linux
- linux-64
- macosx
- win
Важно понимать, что PKG относятся к PC, и без файла PKG клиент не сможет подключиться к ASA.
т.е. если поставить только клиента win, то только клиенты windows смогут подключаться к VPN.
Для клиентов Android, iphone, ipad файл PKG не требуется.
С cisco.com также можно скачать и файл .ISO, позволяющий установить клиента с диска.
Копируем файл Anyconnect PKG.
В нашем случае это anyconnect-win-3.1.06078-k9.pkg
msk-asa-01# conf t msk-asa-01(config)# webvpn msk-asa-01(config-webvpn)# anyconnect image disk0:/anyconnect-win-3.1.06078-k9.pkg msk-asa-01(config-webvpn)# enable outside INFO: WebVPN and DTLS are enabled on 'outside'. msk-asa-01(config-webvpn)# anyconnect enable msk-asa-01(config-webvpn)# exit
msk-asa-01(config)# sysopt connection permit-vpn
msk-asa-01(config)# http redirect outside 80
msk-asa-01(config)# ip local pool vpnpool_pool 192.168.92.10-192.168.92.254 mask 255.255.255.0
object network vpnpool_obj subnet 192.168.92.0 255.255.255.0 object-group network RFC1918_objg network-object 192.168.0.0 255.255.0.0 network-object 172.16.0.0 255.240.0.0 network-object 10.0.0.0 255.0.0.0 nat (inside,outside) source static RFC1918_objg RFC1918_objg destination static vpnpool_obj vpnpool_obj no-proxy-arp route-lookup
access-list split-tunnel_acl standard permit 192.168.10.0 255.255.255.0
Данная настройка будет заворачивать в туннель только трафик в сети той же RFC1918.
same-security-traffic permit inter-interface same-security-traffic permit intra-interface
group-policy anyconnect_gp internal group-policy anyconnect_gp attributes dns-server value 192.168.10.5 vpn-tunnel-protocol ssl-client ssl-clientless split-tunnel-policy tunnelspecified split-tunnel-network-list value split-tunnel_acl webvpn anyconnect keep-installer installed anyconnect dpd-interval client 20 anyconnect ask none default anyconnect
tunnel-group vpn-users_tg type remote-access tunnel-group vpn-users_tg general-attributes address-pool vpnpool_pool default-group-policy anyconnect_gp tunnel-group vpn-users_tg webvpn-attributes group-alias vpn_users-alias enable webvpn tunnel-group-list enable
Последняя команда позволяет пользователям выбирать для себя tunnel-group. Это полезно когда у нас несколько tunnel-group.
Anyconnect уже должно заработать, - можно заходить под админской учёткой.
Конфиг полностью: moscow5520_12.02.2015
Всегда, когда мы заходим на какой-либо сайт по SSL или HTTPS, то на этом сайте используется сертификат формата x.509.
ASA не явлется исключением, и на ASA сертификат выполняет несколько функций:
Идентификация самого сайта для пользователя
Таким образом, сертификат играет важную роль в инсталляции сервера ASA.
При изначальной установке ASA автоматом генерируется self-signed certificate или самоподписный сертификат.
Такому сертификату никакой клиент не будет доверять и будет выдавать ошибку. С такими сертификатами могут быть связано несколько проблем, - ругань клиентских браузеров, ругань клиентов anyconnect и т.д.
Поэтому крайне рекомендуется установка на ASA signed certificate, т.е. сертификат, сгенерированный и подписанный доверенным CA.
Существует несколько способов установки на устройство signed certificate.
В данном материале мы прибегнем к первому способу.
В предыдущем конфиге мы получили рабочий Anyconnect SSL VPN. В этом случае ASA для работы использует self-signed certificate, который регенерируется при каждой перезагрузке устройства.
В данной части мы настроим использование заверенного identity certificate, который не будет меняться при перезагрузке, и которому будут доверять клиенты.
show clock show ntp status show ntp associations
hostname vpn domain-name ost-grup.ru
FQDN будет vpn.ost-grup.ru, т.е. на этот FQDN будут ходить VPN Client.
Далее генерируем keypair, т.е. Private Key и Public Key.
Private Key остаётся на самой ASA, а Public Key будет помещён внутрь сертификата.
crypto key generate rsa label myrsakey modulus 2048 INFO: The name for the keys will be: myrsakey Keypair generation process begin. Please wait...
Trustpoint - это такое виртуальное пространство в конфигурации, в котором размещается сертификат.
В Trustpoint хранятся все составляющие сертификата, т.е. keypair, fqdn и другие параметры.
vpn(config)#vpn(config)# crypto ca trustpoint Trustpoint1 vpn(config-ca-trustpoint)# enrollment terminal vpn(config-ca-trustpoint)# fqdn vpn.ost-grup.ru vpn(config-ca-trustpoint)# subject-name CN=vpn.ost-grup.ru, C=RU, ST=moscow, L=tech, O=ost, OU=security vpn(config-ca-trustpoint)# keypair myrsakey
После того, как мы определили все составляющие сертификата, можно начать Enroll Process.
Генерируем Certificate Signing Request (CSR):
vpn(config)# crypto ca enroll Trustpoint1 % Start certificate enrollment .. % The subject name in the certificate will be: CN=vpn.ost-grup.ru, C=RU, ST=moscow, L=tech, O=ost, OU=security % The fully-qualified domain name in the certificate will be: vpn.ost-grup.ru % Include the device serial number in the subject name? [yes/no]: no Display Certificate Request to terminal? [yes/no]: yes Certificate Request follows: -----BEGIN CERTIFICATE REQUEST----- MIIDFjCCAf4CAQAwgZAxETAPBgNVBAsTCHNlY3VyaXR5MQ4wDAYDVQQKEwVvc3Rl YzENMAsGA1UEBxMEdGVjaDEPMA0GA1UECBMGbW9zY293MQswCQYDVQQGEwJSVTEb MBkGA1UEAxMSdnBuLm9zdGVjLWdyb3VwLnJ1MSEwHwYJKoZIhvcNAQkCFhJ2cG4u .................................. zyWM42Lgt+Aez0WFagGs40mZ8JN66UGN3FSP+nFkZgmUr3kNEKmrxbp1Ys9Wmleu UgdKvt3jkLnTLJDyAkmOosJVvEuOFX5aL2nb/Npl1Cy1CbS0YPpavKhvISNxgHRO wmT22YqEOCcbpzawhevnO8tyLGGExrVpvDQ= -----END CERTIFICATE REQUEST----- Redisplay enrollment request? [yes/no]: no
Вот эта простыня и есть CSR. Это данные, зашифрованные и подписанные с помощью Private Key. Эту информацию нам нужно передать на CA.
Сертификат мы будем генерировать в https://www.startssl.com
Для этого:
По сути, полученный сертификат это тот же CSR, но подписанный закрытым ключом сервера CA.
Теперь данному сертификату будут доверять те, кто доверяет серверу CA.
vpn(config)# crypto ca import Trustpoint1 certificate % The fully-qualified domain name in the certificate will be: vpn.ost-grup.ru Enter the base 64 encoded certificate. End with the word "quit" on a line by itself -----BEGIN CERTIFICATE----- MIIGSzCCBTOgAwIBAgIHBTPuAmPWCTANBgkqhkiG9w0BAQsFADCBjDELMAkGA1UE BhMCSUwxFjAUBgNVBAoTDVN0YXJ0Q29tIEx0ZC4xKzApBgNVBAsTIlNlY3VyZSBE aWdpdGFsIENlcnRpZmljYXRlIFNpZ25pbmcxODA2BgNVBAMTL1N0YXJ0Q29tIENs YXNzIDEgUHJpbWFyeSBJbnRlcm1lZGlhdGUgU2VydmVyIENBMB4XDTE1MDIxMjA0 NDYzMloXDTE2MDIxMjIxMzgzMlowVDELMAkGA1UEBhMCUlUxGzAZBgNVBAMTEnZw bi5vc3RlYy1ncm91cC5ydTEoMCYGCSqGSIb3DQEJARYZcG9zdG1hc3RlckBvc3Rl Yy1ncm91cC5ydTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAN5oGtId YcOnrv8+y60sOESGDJvijh0a8LP7eiuKY0C8M8pVwjBpxCWvGtC6RTVdSfv66XXf ................................................................. bC5jcmwwgY4GCCsGAQUFBwEBBIGBMH8wOQYIKwYBBQUHMAGGLWh0dHA6Ly9vY3Nw LnN0YXJ0c3NsLmNvbS9zdWIvY2xhc3MxL3NlcnZlci9jYTBCBggrBgEFBQcwAoY2 aHR0cDovL2FpYS5zdGFydHNzbC5jb20vY2VydHMvc3ViLmNsYXNzMS5zZXJ2ZXIu Y2EuY3J0MCMGA1UdEgQcMBqGGGh0dHA6Ly93d3cuc3RhcnRzc2wuY29tLzANBgkq hkiG9w0BAQsFAAOCAQEACuVdcRKMrRdmFbvUkq9vZnA9q67M4lnedHF4DFrrJMhy G3rAlpagMfRvFI0pIq5oHxxQIsoYo5U9fBfFqa4/dQhnTyQcnMmAi7OHbPo+ybZ6 KjPoiVR8r5vU7wILk1b8RPUMuauuQavyxXJNbeNVBX+00GDrX1jkPwldmM1ElIf7 LFIb/obE0FuJ1Du8hKu3xsJDVcJYQxJ6nZGjJghi6qA6TQP5J1U8VU55cv7lJa4J 1MpePPlS5oUNYg8VnUoFaGqcYPnGPkdjv1TpYau5TKFr6Hff1vuh71nKG81Fmp3Y lzJrG+Q1kkwjohOP8s30l136nHWpoct1/oBeDm/7mQ== -----END CERTIFICATE----- quit INFO: Certificate successfully imported
У нас должна быть комбинация из Identity Certficate + CA Certificate.
Вообще установка CA Certificate означает что ASA будет доверять этому CA и всем кому этот CA выдавал сертификаты.
Первое мы уже установили. Установим второе.
vpn(config)# crypto ca authenticate Trustpoint1 Enter the base 64 encoded CA certificate. End with the word "quit" on a line by itself -----BEGIN CERTIFICATE----- MIIF2TCCA8GgAwIBAgIHFxU9nqs/vzANBgkqhkiG9w0BAQsFADB9MQswCQYDVQQG EwJJTDEWMBQGA1UEChMNU3RhcnRDb20gTHRkLjErMCkGA1UECxMiU2VjdXJlIERp Z2l0YWwgQ2VydGlmaWNhdGUgU2lnbmluZzEpMCcGA1UEAxMgU3RhcnRDb20gQ2Vy dGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDcxMDE0MjA1NDE3WhcNMjIxMDE0MjA1 NDE3WjCBjDELMAkGA1UEBhMCSUwxFjAUBgNVBAoTDVN0YXJ0Q29tIEx0ZC4xKzAp BgNVBAsTIlNlY3VyZSBEaWdpdGFsIENlcnRpZmljYXRlIFNpZ25pbmcxODA2BgNV BAMTL1N0YXJ0Q29tIENsYXNzIDEgUHJpbWFyeSBJbnRlcm1lZGlhdGUgU2VydmVy IENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtonGrO8JUngHrJJj 0PREGBiEgFYfka7hh/oyULTTRwbw5gdfcA4Q9x3AzhA2NIVaD5Ksg8asWFI/ujjo /OenJOJApgh2wJJuniptTT9uYSAK21ne0n1jsz5G/vohURjXzTCm7QduO3CHtPn6 6+6CPAVvkvek3AowHpNz/gfK11+AnSJYUq4G2ouHI2mw5CrY6oPSvfNx23BaKA+v WjhwRRI/ME3NO68X5Q/LoKldSKqxYVDLNM08XMML6BDAjJvwAwNi/rJsPnIO7hxD KslIDlc5xDEhyBDBLIf+VJVSH1I8MRKbf+fAoKVZ1eKPPvDVqOHXcDGpxLPPr21T Lwb0pwIDAQABo4IBTDCCAUgwEgYDVR0TAQH/BAgwBgEB/wIBADAOBgNVHQ8BAf8E BAMCAQYwHQYDVR0OBBYEFOtCNNCYsKuf9BtrCPfMZC7vDixFMB8GA1UdIwQYMBaA ............................................................... 9JHPXUfrAhZYKyOQUIqcfE5bvssaY+oODVxji6BMk8VSVHsJ4FSC1/7Pkt/UPoQp FVh38wIJnvEUeNVmVl3HHFYTd50irdKYPBC63qi2V/YYI6bJKmbrjfP9Vhyt9uNr y3Kh4W22ktDuCCvWC7n/gqerdq+VlTRfNt7D/mB0irnaKjEVNCXBXm9V/978J+Ez 8aplGZccQ9jnc9kiPtUp5dj45E3V8vKqzp9srSSI5Xapdg+ZcPY+6HNuVB+MadRp ZW2One/Qnzg9B4GnVX7MOETImdoP4kXpostFuxoY/5LxCU1LJAIENV4txvT50lX2 GBXCkxllRLWOgdyll11ift/4IO1aCOGDijGIfh498YisM1LGxytmGcxvbJERVri+ gGpWAZ5J6dvtf0s+bA== -----END CERTIFICATE----- quit INFO: Certificate has the following attributes: Fingerprint: d15a7b97 30e2694d be791936 a12835c2 Do you accept this certificate? [yes/no]: yes Trustpoint 'Trustpoint1' is a subordinate CA and holds a non self-signed certificate. Trustpoint CA certificate accepted. % Certificate successfully imported
vpn# show crypto ca certificates CA Certificate Status: Available Certificate Serial Number: 17153d9eab3fbf Certificate Usage: General Purpose Public Key Type: RSA (2048 bits) Signature Algorithm: SHA256 with RSA Encryption Issuer Name: cn=StartCom Certification Authority ou=Secure Digital Certificate Signing o=StartCom Ltd. c=IL Subject Name: cn=StartCom Class 1 Primary Intermediate Server CA ou=Secure Digital Certificate Signing o=StartCom Ltd. c=IL OCSP AIA: URL: http://ocsp.startssl.com/ca CRL Distribution Points: [1] http://crl.startssl.com/sfsca.crl Validity Date: start date: 23:54:17 MSK Oct 14 2007 end date: 23:54:17 MSK Oct 14 2022 Associated Trustpoints: Trustpoint1 Certificate Status: Available Certificate Serial Number: 0533ee0263d609 Certificate Usage: General Purpose Public Key Type: RSA (2048 bits) Signature Algorithm: SHA256 with RSA Encryption Issuer Name: cn=StartCom Class 1 Primary Intermediate Server CA ou=Secure Digital Certificate Signing o=StartCom Ltd. c=IL Subject Name: e=postmaster@ost-grup.ru cn=vpn.ost-grup.ru c=RU OCSP AIA: URL: http://ocsp.startssl.com/sub/class1/server/ca CRL Distribution Points: [1] http://crl.startssl.com/crt1-crl.crl Validity Date: start date: 07:46:32 MSK Feb 12 2015 end date: 00:38:32 MSK Feb 13 2016 Associated Trustpoints: Trustpoint1
Мы создали Trustpoint1, который включает два сертификата (Identity + CA certificates).
Для привязки этого Trustpoint1 к внешнему интерфейсу:
ssl trust-point Trustpoint1 outside
Сертификат имеет срок действия, и если он истечет мы всегда сможем вернуться к старому доброму self-signed certificate:
no ssl trust-point Trustpoint1 outside
Когда срок действия серта истекает мы должны заново установить новый.
show crypto ca certificates
vpn(config)# crypto key generate rsa label myrsakey2 modulus 2048 INFO: The name for the keys will be: myrsakey2 Keypair generation process begin. Please wait... vpn(config)# crypto ca trustpoint Trustpoint2 vpn(config-ca-trustpoint)# enrollment terminal vpn(config-ca-trustpoint)# fqdn vpn.ost-grup.ru vpn(config-ca-trustpoint)# subject-name CN=vpn.ost-grup.ru, C=RU, ST=moscow, L=tech, O=ost, OU=security vpn(config-ca-trustpoint)# keypair myrsakey2 Генерируем Certificate Signing Request (CSR): vpn(config)# crypto ca enroll Trustpoint2 % Start certificate enrollment .. % The subject name in the certificate will be: CN=vpn.ost-grup.ru, C=RU, ST=moscow, L=tech, O=ost, OU=security % The fully-qualified domain name in the certificate will be: vpn.ost-grup.ru % Include the device serial number in the subject name? [yes/no]: no Display Certificate Request to terminal? [yes/no]: yes Certificate Request follows: -----BEGIN CERTIFICATE REQUEST----- MIIDFjCCAf4CAQAwgZAxETAPBgNVBAsTCHNlY3VyaXR5MQ4wDAYDVQQKEwVvc3Rl YzENMAsGA1UEBxMEdGVjaDEPMA0GA1UECBMGbW9zY293MQswCQYDVQQGEwJSVTEb MBkGA1UEAxMSdnBuLm9zdGVjLWdyb3VwLnJ1MSEwHwYJKoZIhvcNAQkCFhJ2cG4u .................................. zyWM42Lgt+Aez0WFagGs40mZ8JN66UGN3FSP+nFkZgmUr3kNEKmrxbp1Ys9Wmleu UgdKvt3jkLnTLJDyAkmOosJVvEuOFX5aL2nb/Npl1Cy1CbS0YPpavKhvISNxgHRO wmT22YqEOCcbpzawhevnO8tyLGGExrVpvDQ= -----END CERTIFICATE REQUEST----- Redisplay enrollment request? [yes/no]: no
vpn(config)# crypto ca import Trustpoint2 certificate % The fully-qualified domain name in the certificate will be: vpn.ost-grup.ru Enter the base 64 encoded certificate. End with the word "quit" on a line by itself -----BEGIN CERTIFICATE----- MIIGSzCCBTOgAwIBAgIHBTPuAmPWCTANBgkqhkiG9w0BAQsFADCBjDELMAkGA1UE BhMCSUwxFjAUBgNVBAoTDVN0YXJ0Q29tIEx0ZC4xKzApBgNVBAsTIlNlY3VyZSBE aWdpdGFsIENlcnRpZmljYXRlIFNpZ25pbmcxODA2BgNVBAMTL1N0YXJ0Q29tIENs YXNzIDEgUHJpbWFyeSBJbnRlcm1lZGlhdGUgU2VydmVyIENBMB4XDTE1MDIxMjA0 NDYzMloXDTE2MDIxMjIxMzgzMlowVDELMAkGA1UEBhMCUlUxGzAZBgNVBAMTEnZw bi5vc3RlYy1ncm91cC5ydTEoMCYGCSqGSIb3DQEJARYZcG9zdG1hc3RlckBvc3Rl Yy1ncm91cC5ydTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAN5oGtId YcOnrv8+y60sOESGDJvijh0a8LP7eiuKY0C8M8pVwjBpxCWvGtC6RTVdSfv66XXf ................................................................. bC5jcmwwgY4GCCsGAQUFBwEBBIGBMH8wOQYIKwYBBQUHMAGGLWh0dHA6Ly9vY3Nw LnN0YXJ0c3NsLmNvbS9zdWIvY2xhc3MxL3NlcnZlci9jYTBCBggrBgEFBQcwAoY2 aHR0cDovL2FpYS5zdGFydHNzbC5jb20vY2VydHMvc3ViLmNsYXNzMS5zZXJ2ZXIu Y2EuY3J0MCMGA1UdEgQcMBqGGGh0dHA6Ly93d3cuc3RhcnRzc2wuY29tLzANBgkq hkiG9w0BAQsFAAOCAQEACuVdcRKMrRdmFbvUkq9vZnA9q67M4lnedHF4DFrrJMhy G3rAlpagMfRvFI0pIq5oHxxQIsoYo5U9fBfFqa4/dQhnTyQcnMmAi7OHbPo+ybZ6 KjPoiVR8r5vU7wILk1b8RPUMuauuQavyxXJNbeNVBX+00GDrX1jkPwldmM1ElIf7 LFIb/obE0FuJ1Du8hKu3xsJDVcJYQxJ6nZGjJghi6qA6TQP5J1U8VU55cv7lJa4J 1MpePPlS5oUNYg8VnUoFaGqcYPnGPkdjv1TpYau5TKFr6Hff1vuh71nKG81Fmp3Y lzJrG+Q1kkwjohOP8s30l136nHWpoct1/oBeDm/7mQ== -----END CERTIFICATE----- quit INFO: Certificate successfully imported
Этот сертификат находится в архиве, который предлагается скачать после генерации сертификата клиента.
его мы и установим:
vpn(config)# crypto ca authenticate Trustpoint2 Enter the base 64 encoded CA certificate. End with the word "quit" on a line by itself -----BEGIN CERTIFICATE----- MIIF5TCCA82gAwIBAgIQal3D5TtOT9B7aR6l/OxkazANBgkqhkiG9w0BAQsFADB9 MQswCQYDVQQGEwJJTDEWMBQGA1UEChMNU3RhcnRDb20gTHRkLjErMCkGA1UECxMi ------------------------------------- dI4aQx6FkHWvKU0e7s/cUym6Px3vXrC4z6woAztC98XaorPO0pkL73P4dKSjnKYY rYsqe7BnBGtANf1XaG5Pm8BUWJ9WZAWin6KsJXTo8Nj0G4CRq7dq17LBnCbi9Qmp Szc2kuPNbrV8PvbTLIXupfZFFj0d9mpaFg== -----END CERTIFICATE----- quit INFO: Certificate has the following attributes: Fingerprint: 5dfbe3ba 9ab6bad3 7dee4d05 363fc9bd Do you accept this certificate? [yes/no]: yes Trustpoint 'Trustpoint3' is a subordinate CA and holds a non self-signed certificate. Trustpoint CA certificate accepted. % Certificate successfully imported
vpn# show crypto ca trustpoints Trustpoint Trustpoint1: Subject Name: cn=StartCom Class 1 Primary Intermediate Server CA ou=Secure Digital Certificate Signing o=StartCom Ltd. c=IL Serial Number: 17153d9eab3fbf Certificate configured. Trustpoint Trustpoint2: Subject Name: cn=StartCom Class 1 DV Server CA ou=StartCom Certification Authority o=StartCom Ltd. c=IL Serial Number: 6a5dc3e53b4e4fd07b691ea5fcec646b Certificate configured.
Наш новый trustpoint должен быть с сертификатом
show crypto ca certificates
ssl trust-point Trustpoint2 outside
Мы должны иметь ACS подготовленный соответствующим образом.
aaa-server tac_acs protocol tacacs+ aaa-server tac_acs (inside) host 192.168.10.46 key my_key aaa-server tac_acs (inside) host 192.168.10.47 key my_key ! aaa authentication telnet console tac_acs LOCAL aaa authentication ssh console tac_acs LOCAL aaa authentication http console tac_acs LOCAL ! aaa accounting telnet console tac_acs aaa accounting ssh console tac_acs aaa accounting command privilege 15 tac_acs
aaa-server rad_acs protocol radius aaa-server rad_acs (inside) host 192.168.10.46 key my_key tunnel-group vpn-users_tg general-attributes authentication-server-group rad_acs accounting-server-group rad_acs
Из CLI:
vpn# show uauth Current Most Seen Authenticated Users 1 1 Authen In Progress 0 0 remote access VPN user 'vpn_video_user1' at 192.168.92.25, authenticated access-list #ACSACL#-IP-video_dacl-54ddc357 (*)
vpn# show access-list access-list cached ACL log flows: total 0, denied 0 (deny-flow-max 4096) alert-interval 300 access-list split-tunnel_acl; 1 elements; name hash: 0xb6fb0e access-list split-tunnel_acl line 1 standard permit 192.168.10.0 255.255.255.0 (hitcnt=0) 0x13482529 access-list #ACSACL#-IP-video_dacl-54ddc357; 1 elements; name hash: 0x6c7d7b7f (dynamic) access-list #ACSACL#-IP-video_dacl-54ddc357 line 1 extended permit ip any4 host 192.168.10.45 (hitcnt=0) 0x4ce5deb8
Смотрим кто залогинен
show vpn-sessiond summary
show vpn-sessiond anyconnect
Выкинуть юзера из впн:
vpn-sessiondb logoff name langemakj
snmp-server enable snmp-server host inside 192.168.10.45 community cmonitor snmp-server community cmonitor snmp-server enable traps snmp authentication linkup linkdown coldstart ! no logging message 106015 no logging message 106023 no logging message 106100 no logging message 302013 no logging message 302014 no logging message 302015 no logging message 302016 no logging message 302017 no logging message 302018 no logging message 302020 no logging message 302021 no logging message 313001 no logging message 313008 no logging message 710003 flow-export template timeout-rate 1 flow-export delay flow-create 60 flow-export destination inside 192.168.10.45 9996 logging flow-export-syslogs disable ! class-map global-class description flow-export-class match any policy-map global_policy class global-class flow-export event-type all destination 192.168.10.45 ! snmp-server host inside 192.168.10.45 community cmonitor snmp-server host inside 192.168.10.46 community cmonitor snmp-server host inside 192.168.10.47 community cmonitor
В последних версиях PRTG есть установленный счетчик для ASA.
Для старой версии небходимо предварительно установить MIB
CISCO-REMOTE-ACCESS-MONITOR-MIB.my
В ней для учета юзеров VPN нам понадобится сенсор:
cras activity/cras num users
Подробнее по установке MIB:
Мониторинг устройств через PRTG
В вышеописанной конфигурации болтается название этой группы.
Чтобы её убрать, нам нужно создать дефолтные group-policy и tunnel-group:
В результате конфигурация web vpn будет:
webvpn enable outside1 anyconnect-essentials anyconnect image disk0:/anyconnect-win-3.1.06079-k9.pkg 1 anyconnect enable group-policy DfltGrpPolicy attributes dns-server value 192.168.10.5 vpn-tunnel-protocol ssl-client ssl-clientless split-tunnel-policy tunnelspecified split-tunnel-network-list value split-tunnel_acl default-domain value ost-grup.ru webvpn anyconnect dpd-interval client 20 anyconnect ask none default anyconnect group-policy anyconnect_gp internal group-policy anyconnect_gp attributes dns-server value 192.168.10.5 vpn-tunnel-protocol ssl-client ssl-clientless split-tunnel-policy tunnelspecified split-tunnel-network-list value split-tunnel_acl webvpn anyconnect keep-installer installed anyconnect dpd-interval client 20 anyconnect ask none default anyconnect username cadmin password OxC0yUnlf.GyKDwP encrypted privilege 15 tunnel-group DefaultWEBVPNGroup general-attributes address-pool vpnpool_pool authentication-server-group rad_acs accounting-server-group rad_acs tunnel-group vpn-users_tg type remote-access tunnel-group vpn-users_tg general-attributes address-pool vpnpool_pool authentication-server-group rad_acs accounting-server-group rad_acs default-group-policy anyconnect_gp tunnel-group vpn-users_tg webvpn-attributes group-alias vpn_users-alias enable
Для того, чтобы anyconnect клиенты были доступны друг для друга
same-security-traffic permit inter-interface same-security-traffic permit intra-interface
Также в split-tunnel должна быть пользовательская подсеть.
access-list split-tunnel_acl standard permit 192.168.96.0 255.255.252.0
Добавить комментарий