Ëmsetzung vum Konzept vum héich sécheren Fernzougang
Weiderféieren vun der Serie vun Artikelen iwwert d'Thema vun Organisatioun Remote-Access VPN Zougang Ech kann net hëllefen, mee meng interessant Détachement Erfahrung deelen héich sécher VPN Konfiguratioun. Eng net-trivial Aufgab gouf vun engem Client presentéiert (et ginn Erfinder a russeschen Dierfer), awer d'Erausfuerderung gouf ugeholl a kreativ ëmgesat. D'Resultat ass en interessant Konzept mat de folgende Charakteristiken:
Verschidde Faktore vum Schutz géint Substitutioun vum Terminalapparat (mat strikt Bindung zum Benotzer);
Bewäertung vun der Konformitéit vum PC vum Benotzer mat dem zougewisenen UDID vum erlaabten PC an der Authentifikatiounsdatebank;
Mat MFA benotzt de PC UDID vum Zertifikat fir sekundär Authentifikatioun iwwer Cisco DUO (Dir kënnt all SAML / Radius kompatibel befestegt);
Multi-Faktor Authentifikatioun:
Benotzerzertifika mat Feldverifikatioun a sekundärer Authentifikatioun géint ee vun hinnen;
Login (onverännerbar, aus dem Zertifika geholl) a Passwuert;
Schätzung vum Zoustand vum Verbindungshost (Posture)
Léisung Komponente benotzt:
Cisco ASA (VPN Gateway);
Cisco ISE (Authentifikatioun / Autorisatioun / Comptablesmethod, Staat Evaluatioun, CA);
Cisco DUO (Multi-Factor Authentifikatioun) (Dir kënnt all SAML / Radius kompatibel befestegt);
Cisco AnyConnect (Multi-Zweck Agent fir Aarbechtsstatiounen an Handy OS);
Loosst eis mat den Ufuerderunge vum Client ufänken:
De Benotzer muss duerch seng Login / Passwuert Authentifikatioun den AnyConnect Client vum VPN Gateway eroflueden; all néideg AnyConnect Moduler mussen automatesch am Aklang mat der Politik vum Benotzer installéiert ginn;
De Benotzer soll fäeg sinn automatesch e Certificat auszeginn (fir ee vun den Szenarien ass den Haaptszenario manuell Ausstellung an Eroplueden op engem PC), awer ech hunn automatesch Ausgab fir Demonstratioun implementéiert (et ass ni ze spéit fir se ze läschen).
Basis Authentifikatioun muss an e puer Etappe stattfannen, als éischt gëtt et Zertifikat Authentifikatioun mat Analyse vun den néidege Felder an hire Wäerter, dann Login / Passwuert, nëmmen dës Kéier muss de Benotzernumm, deen am Zertifikatfeld uginn ass, an d'Loginfenster agefouert ginn Sujet Numm (CN) ouni d'Fäegkeet ze änneren.
Dir musst sécher sinn datt den Apparat, aus deem Dir Iech aloggen, de Firmenlaptop ass, deen dem Benotzer fir Fernzougang erausginn ass, an net soss eppes. (Verschidde Optioune goufen gemaach fir dës Ufuerderung ze erfëllen)
Den Zoustand vun der Verbindung Apparat (op dëser Etapp PC) soll mat engem Scheck vun enger ganzer hefteger Dësch vun Client Ufuerderunge bewäert ginn (resuméiert):
Dateien an hir Eegeschaften;
Enregistrement Entréen;
OS Patches aus der geliwwert Lëscht (spéider SCCM Integratioun);
Disponibilitéit vun Anti-Virus vun engem spezifeschen Hiersteller an Relevanz vun Ënnerschrëften;
Aktivitéit vu bestëmmte Servicer;
Disponibilitéit vu bestëmmte installéiert Programmer;
Fir unzefänken, proposéiere ech datt Dir definitiv d'Video Demonstratioun vun der resultéierender Implementatioun kuckt Youtube (5 Minutten).
Elo proposéieren ech d'Implementéierungsdetailer ze berücksichtegen déi net am Videoclip ofgedeckt sinn.
Loosst eis den AnyConnect Profil virbereeden:
Ech hunn virdru e Beispill ginn fir e Profil ze kreéieren (wat e Menüpunkt an ASDM ugeet) a mengem Artikel iwwer Astellung VPN Load-Balancing Cluster. Elo wëll ech separat d'Optiounen notéieren déi mir brauchen:
Am Profil wäerte mir de VPN Gateway an de Profilnumm uginn fir mat dem Endclient ze verbannen:
Loosst eis d'automatesch Emissioun vun engem Zertifika vun der Profilsäit konfiguréieren, besonnesch d'Zertifikatparameter uginn an, charakteristesch, op d'Feld oppassen Initialen (I), wou e spezifesche Wäert manuell agefouert gëtt UID Test Maschinn (Eenzegaarteg Apparat Identifizéierer datt vum Cisco AnyConnect Client generéiert ass).
Hei wëll ech eng lyresch Digression maachen, well dësen Artikel d'Konzept beschreift; fir Demonstratiounszwecker gëtt den UDID fir en Zertifikat erausginn am Initials Feld vum AnyConnect Profil aginn. Natierlech, am richtege Liewen, wann Dir dëst maacht, kréien all Clienten e Certificat mat der selwechter UDID an dësem Beräich an näischt wäert fir si schaffen, well se den UDID vun hirem spezifesche PC brauchen. AnyConnect, leider, implementéiert nach net d'Auswiesselung vum UDID Feld an den Zertifika Ufroprofil iwwer eng Ëmfeldvariabel, sou wéi et zum Beispill mat enger Variabel mécht. %USER%.
Et ass derwäert ze bemierken datt de Client (vun dësem Szenario) ufanks plangt onofhängeg Certificaten mat engem bestëmmten UDID am manuelle Modus op esou Protected PCs auszeginn, wat fir hien kee Problem ass. Wéi och ëmmer, fir déi meescht vun eis wëlle mir Automatisatioun (gutt, fir mech ass et wouer =)).
An dat kann ech a punkto Automatisatioun ubidden. Wann AnyConnect nach net fäeg ass en Zertifika automatesch auszeginn andeems d'UDID dynamesch ersat gëtt, da gëtt et eng aner Manéier déi e bësse kreativ Gedanken a kompetent Hänn erfuerdert - ech soen Iech d'Konzept. Als éischt kucke mer wéi d'UDID op verschiddene Betribssystemer vum AnyConnect Agent generéiert gëtt:
Windows - SHA-256 Hash vun der Kombinatioun vum DigitalProductID a Machine SID Registry Key
OSX - SHA-256 Hash PlattformUUID
Linux - SHA-256 Hash vun der UUID vun der Root Partition.
Deementspriechend kreéiere mir e Skript fir eis Firmen Windows OS, mat dësem Skript berechene mir lokal den UDID mat bekannten Inputen a bilden eng Ufro fir en Zertifika auszestellen andeems Dir dësen UDID am erfuerderleche Feld aginn, iwwregens, Dir kënnt och eng Maschinn benotzen Zertifikat ausgestallt vun AD (duerch d'Doppele Authentifikatioun mat engem Zertifika un de Schema derbäi ze ginn Multiple Zertifikat).
Loosst eis d'Astellungen op der Cisco ASA Säit virbereeden:
Loosst eis e TrustPoint fir den ISE CA Server erstellen, et wäert deen sinn deen Certificaten u Clienten ausginn. Ech wäert d'Key-Chain Import Prozedur net berücksichtegen; e Beispill gëtt a mengem Setup Artikel beschriwwen VPN Load-Balancing Cluster.
crypto ca trustpoint ISE-CA
enrollment terminal
crl configure
Mir konfiguréieren d'Verdeelung duerch Tunnel-Grupp baséiert op Reegelen am Aklang mat de Felder am Zertifika deen fir d'Authentifikatioun benotzt gëtt. Den AnyConnect Profil dee mir an der viregter Etapp gemaach hunn ass och hei konfiguréiert. Maacht weg datt ech de Wäert benotzen SECUREBANK-RA, fir Benotzer mat engem erausginn Zertifikat un en Tunnelgrupp ze transferéieren SECURE-BANK-VPN, Notéiert w.e.g. datt ech dëst Feld an der AnyConnect Profil Zertifika Ufro Kolonn hunn.
Astelle vun Authentifikatioun Serveren. A mengem Fall ass dëst ISE fir déi éischt Stuf vun der Authentifikatioun an DUO (Radius Proxy) als 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
!
Mir kreéieren Gruppepolitiken an Tunnelgruppen an hir Hëllefskomponenten:
Tunnel Grupp StandardWEBVPNGroup gëtt haaptsächlech benotzt fir den AnyConnect VPN Client erofzelueden an e Benotzerzertifika mat der SCEP-Proxy Funktioun vun der ASA auszeginn; dofir hu mir déi entspriechend Optiounen aktivéiert souwuel op der Tunnelgrupp selwer an op der verbonne Gruppepolitik AC-Download, an op de geluedenen AnyConnect Profil (Felder fir d'Ausstellung vun engem Certificat, etc.). Och an dëser Gruppepolitik weisen mir de Besoin fir erofzelueden ISE Posture Modul.
Tunnel Grupp SECURE-BANK-VPN gëtt automatesch vum Client benotzt beim Authentifikatioun mam erausginn Zertifika an der viregter Etapp, well, am Aklang mat der Zertifikatkaart, d'Verbindung speziell op dëser Tunnelgrupp falen. Ech soen Iech iwwer interessant Optiounen hei:
Secondaire-Authentifikatioun-Server-Grupp DUO # Set sekundär Authentifikatioun um DUO Server (Radius Proxy)
Benotzernumm-vun-ZertifikatCN # Fir primär Authentifikatioun benotze mir d'CN Feld vum Zertifika fir de Benotzer Login ze ierwen
Secondaire Benotzernumm-vum-Zertifikat I # Fir sekundär Authentifikatioun um DUO Server benotze mir de Benotzernumm extrahéiert an d'Initialen (I) Felder vum Zertifika.
Pre-fill-Benotzernumm Client # maacht de Benotzernumm virausgefëllt an der Authentifikatiounsfenster ouni d'Fäegkeet ze änneren
Secondary-Pre-fill-username Client verstoppen use-common-password push # Mir verstoppen d'Login / Passwuert Input Fënster fir sekundär Authentifikatioun DUO a benotzen d'Notifikatiounsmethod (Sms / Push / Telefon) - Dock fir Authentifikatioun ze froen amplaz vum Passwuertfeld hei
!
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
!
Als nächst gi mir weider op ISE:
Mir konfiguréieren e lokale Benotzer (Dir kënnt AD / LDAP / ODBC benotzen, etc.), Fir Einfachheet hunn ech e lokale Benotzer an ISE selwer erstallt an en am Feld zougewisen BeschreiwungUDID PC vun deem hien erlaabt ass via VPN aloggen. Wann ech lokal Authentifikatioun op ISE benotzen, wäert ech op nëmmen een Apparat limitéiert sinn, well et net vill Felder sinn, awer an Drëtt-Partei Authentifikatiounsdatenbanken wäert ech net sou Restriktiounen hunn.
Loosst eis d'Autorisatiounspolitik kucken, et ass a véier Verbindungsstadien opgedeelt:
Stage 1 - Politik fir den AnyConnect Agent erofzelueden an en Zertifika auszeginn
Loosst eis eng interessant Konditioun kucken UUID_VALIDATED, et gesäit just aus wéi wann den authentifizéierende Benotzer tatsächlech vun engem PC koum mat engem erlaabten UDID am Feld assoziéiert description Kont, d'Konditioune kucken esou aus:
Den Autorisatiounsprofil deen an de Stufen 1,2,3 benotzt gëtt ass wéi follegt:
Dir kënnt genau iwwerpréiwen wéi d'UDID vum AnyConnect Client bei eis ukommt andeems Dir d'Client Sessiounsdetailer an ISE kuckt. Am Detail wäerte mir gesinn datt AnyConnect duerch de Mechanismus SAIER schéckt net nëmmen Informatiounen iwwert d'Plattform, awer och d'UDID vum Apparat als Cisco-AV-PAIR:
Loosst eis op den Zertifikat, deen dem Benotzer ausgestallt gëtt, an d'Feld oppassen Initialen (I), déi benotzt gëtt fir et als Login fir sekundär MFA Authentifikatioun op Cisco DUO ze huelen:
Op der DUO Radius Proxy Säit am Log kënne mir kloer gesinn wéi d'Authentifikatiounsufro gemaach gëtt, et kënnt mat UDID als Benotzernumm:
Vum DUO Portal gesi mir en erfollegräichen Authentifikatiounsevenement:
An an de Benotzereigenschaften hunn ech et gesat alias, déi ech fir de Login benotzt hunn, am Tour, dëst ass den UDID vum PC erlaabt fir Login:
Als Resultat hu mir:
Multi-Faktor Benotzer an Apparat Authentifikatioun;
Schutz géint Spoofing vum Apparat vum Benotzer;
Bewäertung vum Zoustand vum Apparat;
Potenzial fir erhéicht Kontroll mat Domain Maschinn Zertifikat, etc .;
Iwwergräifend Remote Aarbechtsplaz Schutz mat automatesch ofgebaut Sécherheet Moduler;