అత్యంత సురక్షితమైన రిమోట్ యాక్సెస్ భావన యొక్క అమలు
సంస్థ అంశంపై కథనాల శ్రేణిని కొనసాగిస్తోంది రిమోట్ యాక్సెస్ VPN యాక్సెస్ నేను సహాయం చేయలేను కానీ నా ఆసక్తికరమైన విస్తరణ అనుభవాన్ని పంచుకోలేను అత్యంత సురక్షితమైన VPN కాన్ఫిగరేషన్. ఒక కస్టమర్ (రష్యన్ గ్రామాలలో ఆవిష్కర్తలు ఉన్నారు) ద్వారా అల్పమైన పనిని సమర్పించారు, కానీ ఛాలెంజ్ అంగీకరించబడింది మరియు సృజనాత్మకంగా అమలు చేయబడింది. ఫలితం క్రింది లక్షణాలతో ఆసక్తికరమైన భావన:
టెర్మినల్ పరికరం యొక్క ప్రత్యామ్నాయానికి వ్యతిరేకంగా రక్షణ యొక్క అనేక కారకాలు (వినియోగదారుకి కఠినమైన బంధంతో);
ప్రామాణీకరణ డేటాబేస్లో అనుమతించబడిన PC యొక్క కేటాయించిన UDIDతో వినియోగదారు PC యొక్క సమ్మతిని అంచనా వేయడం;
Cisco DUO ద్వారా ద్వితీయ ప్రమాణీకరణ కోసం సర్టిఫికెట్ నుండి PC UDIDని ఉపయోగించి MFAతో (మీరు ఏదైనా SAML/రేడియస్ అనుకూలతని జోడించవచ్చు);
బహుళ-కారకాల ప్రమాణీకరణ:
వాటిలో ఒకదానికి వ్యతిరేకంగా ఫీల్డ్ వెరిఫికేషన్ మరియు సెకండరీ అథెంటికేషన్తో యూజర్ సర్టిఫికెట్;
లాగిన్ (మార్చలేనిది, సర్టిఫికేట్ నుండి తీసుకోబడింది) మరియు పాస్వర్డ్;
కనెక్ట్ చేసే హోస్ట్ (భంగిమ) స్థితిని అంచనా వేయడం
ఉపయోగించిన పరిష్కార భాగాలు:
సిస్కో ASA (VPN గేట్వే);
సిస్కో ISE (ప్రామాణీకరణ / ఆథరైజేషన్ / అకౌంటింగ్, స్టేట్ ఎవాల్యుయేషన్, CA);
Cisco DUO (మల్టీ-ఫాక్టర్ అథెంటికేషన్) (మీరు ఏదైనా SAML/రేడియస్ అనుకూలతని జోడించవచ్చు);
Cisco AnyConnect (వర్క్స్టేషన్లు మరియు మొబైల్ OS కోసం బహుళ ప్రయోజన ఏజెంట్);
కస్టమర్ అవసరాలతో ప్రారంభిద్దాం:
వినియోగదారు తప్పనిసరిగా, తన లాగిన్/పాస్వర్డ్ ప్రమాణీకరణ ద్వారా, VPN గేట్వే నుండి AnyConnect క్లయింట్ను డౌన్లోడ్ చేయగలగాలి; అవసరమైన అన్ని AnyConnect మాడ్యూల్లు తప్పనిసరిగా వినియోగదారు విధానానికి అనుగుణంగా స్వయంచాలకంగా ఇన్స్టాల్ చేయబడాలి;
వినియోగదారు స్వయంచాలకంగా ప్రమాణపత్రాన్ని జారీ చేయగలగాలి (ఒక దృష్టాంతంలో, మాన్యువల్ జారీ చేయడం మరియు PCలో అప్లోడ్ చేయడం ప్రధాన దృష్టాంతం), కానీ నేను ప్రదర్శన కోసం ఆటోమేటిక్ సమస్యను అమలు చేసాను (దీన్ని తీసివేయడానికి ఇది చాలా ఆలస్యం కాదు).
ప్రాథమిక ప్రమాణీకరణ తప్పనిసరిగా అనేక దశల్లో జరగాలి, ముందుగా అవసరమైన ఫీల్డ్లు మరియు వాటి విలువల విశ్లేషణతో సర్టిఫికేట్ ప్రమాణీకరణ ఉంది, ఆపై లాగిన్/పాస్వర్డ్, ఈసారి మాత్రమే సర్టిఫికేట్ ఫీల్డ్లో పేర్కొన్న వినియోగదారు పేరు తప్పనిసరిగా లాగిన్ విండోలో చొప్పించబడాలి. విషయం పేరు (CN) సవరించే సామర్థ్యం లేకుండా.
మీరు లాగిన్ చేస్తున్న పరికరం రిమోట్ యాక్సెస్ కోసం వినియోగదారుకు జారీ చేయబడిన కార్పొరేట్ ల్యాప్టాప్ అని మరియు మరేదైనా కాదని మీరు నిర్ధారించుకోవాలి. (ఈ అవసరాన్ని తీర్చడానికి అనేక ఎంపికలు చేయబడ్డాయి)
కనెక్ట్ చేసే పరికరం యొక్క స్థితి (ఈ దశలో PC) కస్టమర్ అవసరాలు (సంగ్రహించడం) యొక్క మొత్తం భారీ పట్టిక యొక్క చెక్తో అంచనా వేయాలి:
ఫైళ్లు మరియు వాటి లక్షణాలు;
రిజిస్ట్రీ ఎంట్రీలు;
అందించిన జాబితా నుండి OS ప్యాచ్లు (తరువాత SCCM ఇంటిగ్రేషన్);
నిర్దిష్ట తయారీదారు నుండి యాంటీ-వైరస్ లభ్యత మరియు సంతకాల యొక్క ఔచిత్యం;
నిర్దిష్ట సేవల కార్యకలాపాలు;
కొన్ని ఇన్స్టాల్ చేయబడిన ప్రోగ్రామ్ల లభ్యత;
ప్రారంభించడానికి, ఫలిత అమలు యొక్క వీడియో ప్రదర్శనను మీరు ఖచ్చితంగా చూడాలని నేను సూచిస్తున్నాను Youtube (5 నిమిషాలు).
ఇప్పుడు నేను వీడియో క్లిప్లో పొందుపరచబడని అమలు వివరాలను పరిగణించాలని ప్రతిపాదిస్తున్నాను.
AnyConnect ప్రొఫైల్ని సిద్ధం చేద్దాం:
సెట్టింగ్పై నా కథనంలో ప్రొఫైల్ను (ASDMలో మెను ఐటెమ్ పరంగా) సృష్టించడానికి నేను గతంలో ఒక ఉదాహరణ ఇచ్చాను. VPN లోడ్-బ్యాలెన్సింగ్ క్లస్టర్. ఇప్పుడు నేను మనకు అవసరమైన ఎంపికలను విడిగా గమనించాలనుకుంటున్నాను:
ప్రొఫైల్లో, మేము VPN గేట్వే మరియు ముగింపు క్లయింట్కి కనెక్ట్ చేయడానికి ప్రొఫైల్ పేరును సూచిస్తాము:
ప్రొఫైల్ వైపు నుండి సర్టిఫికేట్ యొక్క స్వయంచాలక జారీని కాన్ఫిగర్ చేద్దాం, ప్రత్యేకించి, సర్టిఫికేట్ పారామితులను సూచిస్తుంది మరియు లక్షణంగా, ఫీల్డ్పై శ్రద్ధ వహించండి ప్రారంభ అక్షరాలు (I), ఇక్కడ నిర్దిష్ట విలువ మాన్యువల్గా నమోదు చేయబడుతుంది నువ్వు చేసావు పరీక్ష యంత్రం (సిస్కో AnyConnect క్లయింట్ ద్వారా రూపొందించబడిన ప్రత్యేక పరికర ఐడెంటిఫైయర్).
ఇక్కడ నేను లిరికల్ డైగ్రెషన్ చేయాలనుకుంటున్నాను, ఎందుకంటే ఈ కథనం భావనను వివరిస్తుంది; ప్రదర్శన ప్రయోజనాల కోసం, సర్టిఫికేట్ జారీ చేయడానికి UDID AnyConnect ప్రొఫైల్ యొక్క ప్రారంభ ఫీల్డ్లో నమోదు చేయబడుతుంది. వాస్తవానికి, నిజ జీవితంలో, మీరు ఇలా చేస్తే, క్లయింట్లందరూ ఈ ఫీల్డ్లో ఒకే UDIDతో సర్టిఫికేట్ను అందుకుంటారు మరియు వారికి వారి నిర్దిష్ట PC యొక్క UDID అవసరం కాబట్టి వారికి ఏమీ పని చేయదు. AnyConnect, దురదృష్టవశాత్తూ, ఎన్విరాన్మెంట్ వేరియబుల్ ద్వారా సర్టిఫికేట్ అభ్యర్థన ప్రొఫైల్లోకి UDID ఫీల్డ్ను ప్రత్యామ్నాయంగా అమలు చేయలేదు, ఉదాహరణకు, వేరియబుల్తో %USER%.
కస్టమర్ (ఈ దృష్టాంతంలో) ప్రారంభంలో అటువంటి రక్షిత PC లకు మాన్యువల్ మోడ్లో ఇచ్చిన UDIDతో సర్టిఫికేట్లను స్వతంత్రంగా జారీ చేయాలని యోచిస్తున్నారని గమనించాలి, ఇది అతనికి సమస్య కాదు. అయినప్పటికీ, మనలో చాలా మందికి ఆటోమేషన్ కావాలి (అలాగే, నాకు ఇది నిజం =)).
మరియు ఆటోమేషన్ పరంగా నేను అందించగలిగేది ఇదే. AnyConnect ఇంకా UDIDని డైనమిక్గా భర్తీ చేయడం ద్వారా స్వయంచాలకంగా సర్టిఫికేట్ను జారీ చేయలేకపోతే, కొంచెం సృజనాత్మక ఆలోచన మరియు నైపుణ్యం కలిగిన చేతులు అవసరమయ్యే మరొక మార్గం ఉంది - నేను మీకు కాన్సెప్ట్ చెబుతాను. ముందుగా, AnyConnect ఏజెంట్ ద్వారా వివిధ ఆపరేటింగ్ సిస్టమ్లలో UDID ఎలా ఉత్పత్తి చేయబడుతుందో చూద్దాం:
విండోస్ — DigitalProductID మరియు మెషిన్ SID రిజిస్ట్రీ కీ కలయిక యొక్క SHA-256 హాష్
దీని ప్రకారం, మేము మా కార్పొరేట్ Windows OS కోసం స్క్రిప్ట్ను సృష్టిస్తాము, ఈ స్క్రిప్ట్తో మేము స్థానికంగా తెలిసిన ఇన్పుట్లను ఉపయోగించి UDIDని గణిస్తాము మరియు అవసరమైన ఫీల్డ్లో ఈ UDIDని నమోదు చేయడం ద్వారా సర్టిఫికేట్ జారీ చేయడానికి అభ్యర్థనను ఏర్పరుస్తాము, మార్గం ద్వారా, మీరు మెషీన్ను కూడా ఉపయోగించవచ్చు. AD ద్వారా జారీ చేయబడిన సర్టిఫికేట్ (స్కీమ్కి సర్టిఫికేట్ ఉపయోగించి డబుల్ ప్రమాణీకరణను జోడించడం ద్వారా బహుళ సర్టిఫికేట్).
సిస్కో ASA వైపు సెట్టింగ్లను సిద్ధం చేద్దాం:
ISE CA సర్వర్ కోసం TrustPointని సృష్టిద్దాం, అది క్లయింట్లకు సర్టిఫికెట్లను జారీ చేస్తుంది. నేను కీ-చైన్ దిగుమతి విధానాన్ని పరిగణించను; సెటప్పై నా కథనంలో ఒక ఉదాహరణ వివరించబడింది VPN లోడ్-బ్యాలెన్సింగ్ క్లస్టర్.
crypto ca trustpoint ISE-CA
enrollment terminal
crl configure
ప్రమాణీకరణ కోసం ఉపయోగించే ప్రమాణపత్రంలోని ఫీల్డ్లకు అనుగుణంగా నిబంధనల ఆధారంగా మేము టన్నెల్-గ్రూప్ ద్వారా పంపిణీని కాన్ఫిగర్ చేస్తాము. మేము మునుపటి దశలో చేసిన AnyConnect ప్రొఫైల్ కూడా ఇక్కడ కాన్ఫిగర్ చేయబడింది. నేను విలువను ఉపయోగిస్తున్నానని దయచేసి గమనించండి సెక్యూర్బ్యాంక్-RA, జారీ చేయబడిన సర్టిఫికేట్ ఉన్న వినియోగదారులను సొరంగం సమూహానికి బదిలీ చేయడానికి సెక్యూర్-బ్యాంక్-VPN, AnyConnect ప్రొఫైల్ సర్టిఫికెట్ అభ్యర్థన కాలమ్లో నాకు ఈ ఫీల్డ్ ఉందని దయచేసి గమనించండి.
ప్రమాణీకరణ సర్వర్లను సెటప్ చేస్తోంది. నా విషయంలో, ఇది మొదటి దశ ప్రమాణీకరణకు ISE మరియు MFAగా DUO (రేడియస్ ప్రాక్సీ).
! 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
!
మేము సమూహ విధానాలు మరియు సొరంగం సమూహాలు మరియు వాటి సహాయక భాగాలను సృష్టిస్తాము:
సొరంగం సమూహం డిఫాల్ట్WEBVPNG గ్రూప్ AnyConnect VPN క్లయింట్ని డౌన్లోడ్ చేయడానికి మరియు ASA యొక్క SCEP-ప్రాక్సీ ఫంక్షన్ని ఉపయోగించి వినియోగదారు సర్టిఫికేట్ జారీ చేయడానికి ప్రాథమికంగా ఉపయోగించబడుతుంది; దీని కోసం మేము సొరంగం సమూహంలో మరియు అనుబంధిత సమూహ విధానంలో సంబంధిత ఎంపికలను సక్రియం చేసాము. AC-డౌన్లోడ్ చేయండి, మరియు లోడ్ చేయబడిన AnyConnect ప్రొఫైల్లో (సర్టిఫికేట్ జారీ చేయడానికి ఫీల్డ్లు మొదలైనవి). అలాగే ఈ గ్రూప్ పాలసీలో మేము డౌన్లోడ్ చేయవలసిన అవసరాన్ని సూచిస్తాము ISE భంగిమ మాడ్యూల్.
సొరంగం సమూహం సెక్యూర్-బ్యాంక్-VPN మునుపటి దశలో జారీ చేయబడిన సర్టిఫికేట్తో ప్రామాణీకరించబడినప్పుడు క్లయింట్ స్వయంచాలకంగా ఉపయోగించబడుతుంది, ఎందుకంటే, సర్టిఫికేట్ మ్యాప్కు అనుగుణంగా, కనెక్షన్ ప్రత్యేకంగా ఈ సొరంగం సమూహంలో వస్తుంది. ఇక్కడ ఆసక్తికరమైన ఎంపికల గురించి నేను మీకు చెప్తాను:
ద్వితీయ-ప్రామాణీకరణ-సర్వర్-సమూహం DUO # DUO సర్వర్లో ద్వితీయ ప్రమాణీకరణను సెట్ చేయండి (రేడియస్ ప్రాక్సీ)
వినియోగదారు పేరు-సర్టిఫికెట్CN నుండి # ప్రాథమిక ప్రమాణీకరణ కోసం, వినియోగదారు లాగిన్ను వారసత్వంగా పొందేందుకు మేము సర్టిఫికేట్ యొక్క CN ఫీల్డ్ని ఉపయోగిస్తాము
ద్వితీయ-వినియోగదారు పేరు-సర్టిఫికేట్ I # DUO సర్వర్లో ద్వితీయ ప్రమాణీకరణ కోసం, మేము సంగ్రహించిన వినియోగదారు పేరు మరియు సర్టిఫికేట్ యొక్క ఇనిషియల్స్ (I) ఫీల్డ్లను ఉపయోగిస్తాము.
ప్రీ-ఫిల్-యూజర్నేమ్ క్లయింట్ # వినియోగదారు పేరును మార్చే అవకాశం లేకుండా ప్రామాణీకరణ విండోలో ముందే పూరించండి
secondary-pre-fill-username client hide use-common-password push # మేము ద్వితీయ ప్రమాణీకరణ DUO కోసం లాగిన్/పాస్వర్డ్ ఇన్పుట్ విండోను దాచిపెడతాము మరియు నోటిఫికేషన్ పద్ధతిని (sms/పుష్/ఫోన్) ఉపయోగిస్తాము - పాస్వర్డ్ ఫీల్డ్కు బదులుగా ప్రామాణీకరణను అభ్యర్థించడానికి డాక్ చేయండి ఇక్కడ
!
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 లోనే స్థానిక వినియోగదారుని సృష్టించి ఫీల్డ్లో కేటాయించాను వివరణUDID PC దీని నుండి అతను VPN ద్వారా లాగిన్ చేయడానికి అనుమతించబడ్డాడు. నేను ISEలో స్థానిక ప్రమాణీకరణను ఉపయోగిస్తే, నేను ఒక పరికరానికి మాత్రమే పరిమితం చేయబడతాను, ఎందుకంటే చాలా ఫీల్డ్లు లేవు, కానీ మూడవ పక్ష ప్రమాణీకరణ డేటాబేస్లలో నాకు అలాంటి పరిమితులు ఉండవు.
అధికార విధానాన్ని చూద్దాం, ఇది నాలుగు కనెక్షన్ దశలుగా విభజించబడింది:
స్టేజ్ X — AnyConnect ఏజెంట్ని డౌన్లోడ్ చేయడం మరియు సర్టిఫికేట్ జారీ చేయడం కోసం పాలసీ
స్టేజ్ X — ప్రాథమిక ప్రమాణీకరణ విధానం లాగిన్ (సర్టిఫికేట్ నుండి)/పాస్వర్డ్ + UDID ధ్రువీకరణతో సర్టిఫికేట్
స్టేజ్ X — UDIDని వినియోగదారు పేరుగా ఉపయోగించి Cisco DUO (MFA) ద్వారా ద్వితీయ ప్రమాణీకరణ + రాష్ట్ర అంచనా
ఒక ఆసక్తికరమైన పరిస్థితిని చూద్దాం UUID_VALIDATED, ప్రామాణీకరించే వినియోగదారు వాస్తవానికి ఫీల్డ్లో అనుబంధించబడిన అనుమతించబడిన UDID ఉన్న PC నుండి వచ్చినట్లు కనిపిస్తోంది <span style="font-family: Mandali; "> టెండర్ వివరణ</span> ఖాతా, పరిస్థితులు ఇలా ఉన్నాయి:
1,2,3 దశలలో ఉపయోగించిన అధికార ప్రొఫైల్ క్రింది విధంగా ఉంది:
ISEలోని క్లయింట్ సెషన్ వివరాలను చూడటం ద్వారా AnyConnect క్లయింట్ నుండి UDID మాకు ఎలా వస్తుందో మీరు ఖచ్చితంగా తనిఖీ చేయవచ్చు. వివరంగా మనం మెకానిజం ద్వారా AnyConnect అని చూస్తాము ACIDEX ప్లాట్ఫారమ్ గురించిన సమాచారాన్ని మాత్రమే కాకుండా, పరికరం యొక్క UDIDని కూడా పంపుతుంది సిస్కో-AV-పెయిర్:
వినియోగదారుకు మరియు ఫీల్డ్కు జారీ చేయబడిన ప్రమాణపత్రంపై శ్రద్ధ చూపుదాం ప్రారంభ అక్షరాలు (I), ఇది Cisco DUOలో ద్వితీయ MFA ప్రమాణీకరణ కోసం లాగిన్గా తీసుకోవడానికి ఉపయోగించబడుతుంది:
లాగ్లోని DUO రేడియస్ ప్రాక్సీ వైపు, ప్రామాణీకరణ అభ్యర్థన ఎలా చేయబడిందో మనం స్పష్టంగా చూడవచ్చు, ఇది UDIDని వినియోగదారు పేరుగా ఉపయోగిస్తుంది:
DUO పోర్టల్ నుండి మేము విజయవంతమైన ప్రామాణీకరణ ఈవెంట్ను చూస్తాము:
మరియు వినియోగదారు లక్షణాలలో నేను దానిని సెట్ చేసాను అలియాస్, నేను లాగిన్ కోసం ఉపయోగించాను, ఇది లాగిన్ కోసం అనుమతించబడిన PC యొక్క UDID:
ఫలితంగా మేము పొందాము:
బహుళ-కారకాల వినియోగదారు మరియు పరికర ప్రమాణీకరణ;
వినియోగదారు పరికరం యొక్క స్పూఫింగ్ నుండి రక్షణ;
పరికరం యొక్క పరిస్థితిని అంచనా వేయడం;
డొమైన్ మెషిన్ సర్టిఫికేట్ మొదలైన వాటితో నియంత్రణను పెంచే అవకాశం;
స్వయంచాలకంగా అమలు చేయబడిన భద్రతా మాడ్యూళ్ళతో సమగ్ర రిమోట్ కార్యాలయ రక్షణ;