Բարձր անվտանգ հեռահար մուտքի հայեցակարգի իրականացում

Շարունակելով կազմակերպչական թեմայով հոդվածների շարքը Հեռակա մուտքի VPN մուտք Ես չեմ կարող չկիսվել իմ հետաքրքիր տեղակայման փորձով բարձր անվտանգ VPN կոնֆիգուրացիա. Մեկ պատվիրատուի կողմից ներկայացվեց ոչ տրիվիալ առաջադրանք (ռուսական գյուղերում գյուտարարներ կան), սակայն մարտահրավերն ընդունվեց և ստեղծագործորեն իրականացվեց։ Արդյունքը հետաքրքիր հայեցակարգ է հետևյալ բնութագրերով.

  1. Տերմինալային սարքի փոխարինումից պաշտպանության մի քանի գործոն (օգտագործողի համար խիստ պարտադիր);
    • Օգտագործողի ԱՀ-ի համապատասխանության գնահատում նույնականացման տվյալների բազայում թույլատրված ԱՀ-ի նշանակված UDID-ին.
    • ԱԳՆ-ի հետ՝ օգտագործելով PC UDID-ը վկայականից՝ Cisco DUO-ի միջոցով երկրորդական նույնականացման համար (Դուք կարող եք կցել ցանկացած SAML/Radius-ով համատեղելի);
  2. Բազմգործոն նույնականացում.
    • Օգտագործողի վկայական դաշտային ստուգմամբ և դրանցից մեկի նկատմամբ երկրորդական վավերացումով.
    • Մուտք (անփոփոխելի, վերցված է վկայականից) և գաղտնաբառը;
  3. Միացնող հյուրընկալողի վիճակի գնահատում (կեցվածք)

Օգտագործված լուծույթի բաղադրիչները.

  • Cisco ASA (VPN Gateway);
  • Cisco ISE (Նույնականացում / Թույլտվություն / Հաշվապահություն, Պետական ​​գնահատում, Կալիֆորնիա);
  • Cisco DUO (Բազմաֆունկցիոնալ նույնականացում) (Դուք կարող եք կցել ցանկացած SAML/Radius-ով համատեղելի);
  • Cisco AnyConnect (Բազմաֆունկցիոնալ գործակալ աշխատանքային կայանների և շարժական ՕՀ-ի համար);

Սկսենք հաճախորդի պահանջներից.

  1. Օգտագործողը պետք է իր մուտքի/գաղտնաբառի նույնականացման միջոցով կարողանա ներբեռնել AnyConnect հաճախորդը VPN դարպասից; AnyConnect-ի բոլոր անհրաժեշտ մոդուլները պետք է ավտոմատ կերպով տեղադրվեն՝ օգտատիրոջ քաղաքականության համաձայն.
  2. Օգտագործողը պետք է կարողանա ավտոմատ կերպով վկայական տրամադրել (սցենարներից մեկի դեպքում հիմնական սցենարը ձեռքով թողարկումն ու բեռնումն է համակարգչի վրա), բայց ես ցուցադրել եմ ավտոմատ թողարկում (այն հեռացնելու համար երբեք ուշ չէ):
  3. Հիմնական նույնականացումը պետք է իրականացվի մի քանի փուլով, նախ սերտիֆիկատի վավերացում անհրաժեշտ դաշտերի և դրանց արժեքների վերլուծությամբ, այնուհետև մուտք/գաղտնաբառ, միայն այս անգամ մուտքի պատուհանում պետք է տեղադրվի վկայագրի դաշտում նշված օգտանունը: Առարկայի անվանումը (CN) առանց խմբագրելու հնարավորության։
  4. Դուք պետք է համոզվեք, որ սարքը, որից մուտք եք գործում, կորպորատիվ նոութբուքն է, որը տրամադրվել է օգտատիրոջը հեռահար մուտքի համար, և ոչ թե այլ բան: (Այս պահանջը բավարարելու համար մի քանի տարբերակ է արվել)
  5. Միացնող սարքի վիճակը (այս փուլում ԱՀ) պետք է գնահատվի հաճախորդի պահանջների ամբողջական աղյուսակի ստուգմամբ (ամփոփելով).
    • Ֆայլեր և դրանց հատկությունները;
    • Ռեեստրի գրառումներ;
    • OS patches տրամադրված ցանկից (հետագայում SCCM ինտեգրում);
    • Հատուկ արտադրողի հակավիրուսի առկայությունը և ստորագրությունների համապատասխանությունը.
    • Որոշակի ծառայությունների գործունեություն;
    • Որոշ տեղադրված ծրագրերի առկայություն;

Սկսելու համար, ես առաջարկում եմ անպայման դիտել արդյունքում ստացված իրականացման տեսահոլովակը Youtube (5 րոպե).

Այժմ ես առաջարկում եմ դիտարկել տեսահոլովակում չքննարկված իրականացման մանրամասները։

Եկեք պատրաստենք AnyConnect պրոֆիլը.

Ես նախկինում տվել էի պրոֆիլ ստեղծելու օրինակ (ASDM-ում ընտրացանկի կետի առումով) կարգավորումների մասին իմ հոդվածում VPN բեռնվածության հավասարակշռման կլաստեր. Այժմ ես կցանկանայի առանձին նշել այն տարբերակները, որոնք մեզ անհրաժեշտ կլինեն.

Պրոֆիլում մենք կնշենք VPN դարպասը և պրոֆիլի անունը վերջնական հաճախորդին միանալու համար.

Բարձր անվտանգ հեռահար մուտքի հայեցակարգի իրականացում

Եկեք կազմաձևենք վկայագրի ավտոմատ թողարկումը պրոֆիլի կողմից՝ նշելով, մասնավորապես, վկայագրի պարամետրերը և, որպես կանոն, ուշադրություն դարձնենք դաշտին. սկզբնատառեր (I), որտեղ ձեռքով մուտքագրվում է որոշակի արժեք UDID- ը թեստային մեքենա (Սարքի եզակի նույնացուցիչ, որը ստեղծվում է Cisco AnyConnect հաճախորդի կողմից):

Բարձր անվտանգ հեռահար մուտքի հայեցակարգի իրականացում

Այստեղ ես ուզում եմ լիրիկական շեղում կատարել, քանի որ այս հոդվածը նկարագրում է հայեցակարգը, ցուցադրական նպատակներով վկայական տալու UDID-ը մուտքագրվում է AnyConnect պրոֆիլի սկզբնաղբյուրների դաշտում: Իհարկե, իրական կյանքում, եթե դուք դա անեք, ապա բոլոր հաճախորդները կստանան վկայական նույն UDID-ով այս ոլորտում, և նրանց համար ոչինչ չի ստացվի, քանի որ նրանց անհրաժեշտ է իրենց հատուկ ԱՀ-ի UDID-ը: AnyConnect-ը, ցավոք, դեռ չի իրականացնում UDID դաշտի փոխարինումը վկայագրի հարցման պրոֆիլում շրջակա միջավայրի փոփոխականի միջոցով, ինչպես դա անում է, օրինակ, փոփոխականով: %USER%.

Հարկ է նշել, որ հաճախորդը (այս սցենարի) ի սկզբանե նախատեսում է ինքնուրույն տրամադրել վկայագրեր տվյալ UDID-ով ձեռքով ռեժիմով նման Պաշտպանված ԱՀ-ներին, ինչը նրա համար խնդիր չէ: Այնուամենայնիվ, մեզանից շատերի համար մենք ուզում ենք ավտոմատացում (լավ, ինձ համար դա ճիշտ է =)):

Եվ սա այն է, ինչ ես կարող եմ առաջարկել ավտոմատացման առումով: Եթե ​​AnyConnect-ը դեռ չի կարողանում ավտոմատ կերպով վկայական տալ՝ դինամիկ կերպով փոխարինելով UDID-ը, ապա կա ևս մեկ միջոց, որը կպահանջի մի փոքր ստեղծագործ միտք և հմուտ ձեռքեր. ես ձեզ կասեմ հայեցակարգը: Նախ, եկեք տեսնենք, թե ինչպես է UDID-ն ստեղծվում տարբեր օպերացիոն համակարգերում AnyConnect գործակալի կողմից.

  • Windows — DigitalProductID-ի և Machine SID ռեեստրի բանալի համակցության SHA-256 հեշ
  • OSX- ը — SHA-256 հեշ հարթակUUID
  • Linux — Արմատային բաժանման UUID-ի SHA-256 հեշը:
  • apple iOS — SHA-256 հեշ հարթակUUID
  • Android - Տես փաստաթուղթը ՈՒղեցույց

Համապատասխանաբար, մենք ստեղծում ենք սցենար մեր կորպորատիվ Windows OS-ի համար, այս սկրիպտով մենք տեղականորեն հաշվարկում ենք UDID-ը՝ օգտագործելով հայտնի մուտքերը և ձևավորում ենք վկայագիր տրամադրելու հարցում՝ մուտքագրելով այս UDID-ը պահանջվող դաշտում, ի դեպ, կարող եք նաև օգտագործել մեքենա: AD-ի կողմից տրված վկայական (սխեմային ավելացնելով կրկնակի նույնականացում՝ վկայագրի միջոցով Բազմաթիվ վկայական).

Եկեք պատրաստենք Cisco ASA-ի կարգավորումները.

Եկեք ստեղծենք TrustPoint ISE CA սերվերի համար, այն կլինի, ով սերտիֆիկատներ կտա հաճախորդներին: Ես չեմ դիտարկի Key-Chain ներմուծման ընթացակարգը, օրինակ նկարագրված է իմ հոդվածում տեղադրման մասին VPN բեռնվածության հավասարակշռման կլաստեր.

crypto ca trustpoint ISE-CA
 enrollment terminal
 crl configure

Մենք կազմաձևում ենք բաշխումը Tunnel-Group-ի կողմից՝ հիմնվելով կանոնների վրա՝ հավաստագրի դաշտերի համաձայն, որն օգտագործվում է նույնականացման համար: Նախորդ փուլում մեր պատրաստած AnyConnect պրոֆիլը նույնպես կազմաձևված է այստեղ: Խնդրում ենք նկատի ունենալ, որ ես օգտագործում եմ արժեքը ԱՊԱՀՈՎԱԿԱՆ ԲԱՆԿ-ՀՀ, տրված վկայականով օգտատերերին թունելային խումբ տեղափոխելու համար 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
!

Մենք ստեղծում ենք խմբային քաղաքականություն և թունելային խմբեր և դրանց օժանդակ բաղադրիչներ.

Թունելի խումբ DefaultWEBVPNG խումբ կօգտագործվի հիմնականում AnyConnect VPN հաճախորդը ներբեռնելու և օգտվողի վկայական տալու համար՝ օգտագործելով ASA-ի SCEP-Proxy ֆունկցիան, դրա համար մենք ունենք համապատասխան ընտրանքներ ակտիվացված ինչպես թունելի խմբի, այնպես էլ դրա հետ կապված խմբի քաղաքականության վրա: AC-Ներբեռնում, և բեռնված AnyConnect պրոֆիլում (վկայական տրամադրելու դաշտեր և այլն): Նաև այս խմբի քաղաքականության մեջ մենք նշում ենք ներբեռնման անհրաժեշտությունը ISE կեցվածքի մոդուլ.

Թունելի խումբ SECURE-BANK-VPN Հաճախորդը ավտոմատ կերպով կօգտագործի նախորդ փուլում տրված վկայականով նույնականացնելիս, քանի որ, համաձայն Վկայական քարտեզի, կապը կկատարվի հատուկ այս թունելի խմբի վրա: Ես ձեզ կպատմեմ հետաքրքիր տարբերակների մասին այստեղ.

  • secondary-authentication-server-group DUO # Սահմանեք երկրորդական նույնականացում DUO սերվերի վրա (Radius Proxy)
  • օգտվողի անուն-from-certificateCN # Առաջնային նույնականացման համար մենք օգտագործում ենք վկայագրի CN դաշտը՝ օգտվողի մուտքը ժառանգելու համար
  • երկրորդական-օգտանուն-վկայականից I # DUO սերվերում երկրորդական նույնականացման համար մենք օգտագործում ենք արդյունահանված օգտվողի անունը և վկայագրի սկզբնաղբյուրներ (I) դաշտերը:
  • նախապես լրացնել օգտվողի անունը հաճախորդ # դարձրեք օգտանունը նախապես լրացված նույնականացման պատուհանում՝ առանց փոխելու հնարավորության
  • secondary-pre-fill-username client hide use-common-password push # Մենք թաքցնում ենք մուտքի/գաղտնաբառի մուտքագրման պատուհանը երկրորդական նույնականացման DUO-ի համար և օգտագործում ենք ծանուցման եղանակը (sms/push/հեռախոս)՝ գաղտնաբառի դաշտի փոխարեն նույնականացում պահանջելու համար: այստեղ

!
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 համակարգիչ որտեղից նրան թույլատրվում է մուտք գործել VPN-ի միջոցով: Եթե ​​ես օգտագործեմ տեղական նույնականացում ISE-ում, ես կսահմանափակվեմ միայն մեկ սարքով, քանի որ դաշտերը շատ չեն, բայց երրորդ կողմի նույնականացման տվյալների բազաներում ես նման սահմանափակումներ չեմ ունենա:

Բարձր անվտանգ հեռահար մուտքի հայեցակարգի իրականացում

Եկեք նայենք թույլտվության քաղաքականությանը, այն բաժանված է միացման չորս փուլերի.

  • Քայլ 1 — AnyConnect գործակալը ներբեռնելու և վկայական տրամադրելու քաղաքականություն
  • Քայլ 2 — Նույնականացման առաջնային քաղաքականություն Մուտք (վկայագրից)/Գաղտնաբառ + UDID վավերացմամբ վկայագիր
  • Քայլ 3 — Երկրորդական նույնականացում Cisco DUO-ի (MFA) միջոցով՝ օգտագործելով UDID որպես օգտվողի անուն + վիճակի գնահատում
  • Քայլ 4 — Վերջնական թույլտվությունը գտնվում է պետության մեջ.
    • Համապատասխանող;
    • UDID վավերացում (վկայականից + մուտքի պարտադիր է),
    • Cisco DUO ԱԳՆ;
    • Նույնականացում մուտքի միջոցով;
    • Վկայականի նույնականացում;

Բարձր անվտանգ հեռահար մուտքի հայեցակարգի իրականացում

Դիտարկենք մի հետաքրքիր պայման UUID_VALIDATEDԿարծես թե նույնականացնող օգտատերը իրականում եկել է համակարգչից, որի թույլատրված UDID-ն կապված է դաշտում: Նկարագրություն հաշիվը, պայմաններն այսպիսին են.

Բարձր անվտանգ հեռահար մուտքի հայեցակարգի իրականացում

1,2,3 փուլերում օգտագործվող թույլտվության պրոֆիլը հետևյալն է.

Բարձր անվտանգ հեռահար մուտքի հայեցակարգի իրականացում

Դուք կարող եք ճշգրիտ ստուգել, ​​թե ինչպես է AnyConnect հաճախորդի UDID-ը հասնում մեզ՝ դիտելով հաճախորդի նիստի մանրամասները ISE-ում: Մանրամասն մենք կտեսնենք, որ AnyConnect-ը մեխանիզմի միջոցով ACIDEX ուղարկում է ոչ միայն պլատֆորմի մասին տեղեկատվություն, այլև սարքի UDID-ը որպես Cisco-AV-PAIR:

Բարձր անվտանգ հեռահար մուտքի հայեցակարգի իրականացում

Ուշադրություն դարձնենք օգտագործողին տրված վկայականին և դաշտին սկզբնատառեր (I), որն օգտագործվում է Cisco DUO-ում այն ​​որպես մուտք գործելու երկրորդական MFA նույնականացման համար.

Բարձր անվտանգ հեռահար մուտքի հայեցակարգի իրականացում

DUO Radius Proxy-ի կողմից գրանցամատյանում մենք կարող ենք հստակ տեսնել, թե ինչպես է կատարվում նույնականացման հարցումը, այն գալիս է օգտագործելով UDID որպես օգտվողի անուն.

Բարձր անվտանգ հեռահար մուտքի հայեցակարգի իրականացում

DUO պորտալից մենք տեսնում ենք նույնականացման հաջող իրադարձություն.

Բարձր անվտանգ հեռահար մուտքի հայեցակարգի իրականացում

Իսկ օգտվողի հատկություններում ես այն դրել եմ Ծածկանուն, որը ես օգտագործել եմ մուտք գործելու համար, իր հերթին սա ԱՀ-ի UDID-ն է, որը թույլատրվում է մուտք գործելու համար.

Բարձր անվտանգ հեռահար մուտքի հայեցակարգի իրականացում

Արդյունքում ստացանք.

  • Օգտագործողի և սարքի բազմագործոն նույնականացում;
  • Պաշտպանություն օգտագործողի սարքի կեղծումից;
  • Սարքի վիճակի գնահատում;
  • Դոմեյն մեքենայի վկայականի միջոցով վերահսկողության բարձրացման ներուժ և այլն;
  • Համապարփակ հեռավոր աշխատավայրի պաշտպանություն ավտոմատ կերպով տեղակայված անվտանգության մոդուլներով;

Հղումներ Cisco VPN շարքի հոդվածներին.

Source: www.habr.com

Добавить комментарий