Implementação do conceito de acesso remoto altamente seguro

Continuando a série de artigos sobre a organização do acesso à VPN de acesso remoto , não posso deixar de compartilhar a experiência interessante de implantar uma configuração de VPN altamente segura . Uma tarefa não trivial foi lançada por um cliente (existem inventores nas aldeias russas), mas o desafio foi aceito e implementado de forma criativa. O resultado é um conceito interessante com as seguintes características:


  1. Vários fatores de proteção contra a substituição do dispositivo terminal (com forte ligação ao usuário);
    • Avaliação da conformidade do PC do usuário com o UDID designado do PC autorizado no banco de dados de autenticação;
    • Com um MFA usando o UDID do PC do certificado para autenticação secundária através do Cisco DUO (você pode danificar qualquer compatível com SAML / Radius) ;
  2. Autenticação multifatorial:
    • Certificado de usuário com verificação de campo e autenticação secundária para um deles;
    • Login (imutável, retirado do certificado) e senha;
  3. Avaliando o status do host de conexão (Postura)

Componentes usados ​​da solução:


  • Cisco ASA (Gateway VPN);
  • Cisco ISE (autenticação / autorização / contabilidade, avaliação de status, autoridade de certificação);
  • Cisco DUO (autenticação multifator) (você pode ferrar qualquer SAML / Radius compatível) ;
  • Cisco AnyConnect (agente multiuso para estações de trabalho e sistema operacional móvel);

Vamos começar com os requisitos do cliente:


  1. O usuário deve autenticar com o início de uma sessão / senha para poder transferir o cliente de AnyConnect do gateway VPN, todos os módulos de AnyConnect necessários devem ser instalados automaticamente de acordo com a política do usuário;
  2. ( , – ), ( ).
  3. , , /, , Subject Name (CN) .
  4. , , , - . ( )
  5. ( ) ():
    • ;
    • ;
    • ( SCCM);
    • ;
    • ;
    • ;

- Youtube (5 ).



-.


AnyConnect:


( ASDM) VPN Load-Balancing . , :


VPN :



, , , , Initials (I), UDID ( , Cisco AnyConnect ).



, , UDID Initials AnyConnect. , UDID , UDID . AnyConnect UDID , %USER%.


( ) UDID , - . ( =) ).


. Anyonnect UDID , , – . , UDID AnyConnect:


  • Windows — SHA-256 DigitalProductID Machine SID
  • OSX — SHA-256 PlatformUUID
  • Linux — SHA-256 UUID root .
  • Apple iOS — SHA-256 PlatformUUID
  • Android

Windows, UDID UDID, , AD ( Multiple Certificate).


Cisco ASA:


TrustPoint ISE CA , . Key-Chain , VPN Load-Balancing .


crypto ca trustpoint ISE-CA
 enrollment terminal
 crl configure

Tunnel-Group , . AnyConnect, . SECUREBANK-RA, SECURE-BANK-VPN, AnyConnect.


tunnel-group-map enable rules
!
crypto ca certificate map OU-Map 6
 subject-name attr ou eq securebank-ra
!
webvpn
 anyconnect profiles SECUREBANK disk0:/securebank.xml
 certificate-group-map OU-Map 6 SECURE-BANK-VPN
!

. ISE DUO (Radius Proxy) MFA.


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

:


DefaultWEBVPNGroup AnyConnect VPN SCEP-Proxy ASA, , AC-Download, AnyConnect ( ..). ISE Posture Module.


SECURE-BANK-VPN , Certificate Map, . :


  • secondary-authentication-server-group DUO # DUO (Radius Proxy)
  • username-from-certificate CN # CN
  • secondary-username-from-certificate I # DUO , Initials (I) .
  • pre-fill-username client #
  • secondary-pre-fill-username client hide use-common-password push # / DUO (sms/push/phone) –

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

ISE:


( AD/LDAP/ODBC ..), ISE description UDID VPN. ISE , , .



, :


  • 1 — AnyConnect
  • 2 — ( )/ + UDID
  • 3 — Cisco DUO (MFA) UDID +
  • 4 — :
    • Compliant;
    • UDID ( + ),
    • Cisco DUO MFA;
    • ;
    • ;


UUID_VALIDATED, UDID Description , :



, 1,2,3 :



UDID AnyConnect ISE . , AnyConnect ACIDEX , UDID Cisco-AV-PAIR:



Initials (I), MFA Cisco DUO:



DUO Radius Proxy , UDID :



DUO :



ALIAS, , UDID :



:


  • ;
  • ;
  • ;
  • ..;
  • ;

Cisco VPN:



All Articles