انتہائی محفوظ ریموٹ رسائی کے تصور کا نفاذ

تنظیم کے موضوع پر مضامین کا سلسلہ جاری ہے۔ ریموٹ رسائی VPN رسائی میں مدد نہیں کر سکتا لیکن اپنے دلچسپ تعیناتی کے تجربے کا اشتراک کر سکتا ہوں۔ انتہائی محفوظ VPN کنفیگریشن. ایک گاہک کی طرف سے ایک غیر معمولی کام پیش کیا گیا تھا (روسی دیہات میں موجد ہیں)، لیکن چیلنج کو قبول کیا گیا اور تخلیقی طور پر لاگو کیا گیا۔ نتیجہ مندرجہ ذیل خصوصیات کے ساتھ ایک دلچسپ تصور ہے:

  1. ٹرمینل ڈیوائس کے متبادل کے خلاف تحفظ کے کئی عوامل (صارف کے لیے سخت پابندی کے ساتھ)؛
    • تصدیقی ڈیٹا بیس میں اجازت یافتہ پی سی کے تفویض کردہ UDID کے ساتھ صارف کے پی سی کی تعمیل کا اندازہ لگانا؛
    • Cisco DUO کے ذریعے ثانوی تصدیق کے لیے سرٹیفکیٹ سے PC UDID کا استعمال کرتے ہوئے MFA کے ساتھ (آپ کسی بھی SAML/Radius سے مطابقت رکھنے والے کو منسلک کر سکتے ہیں);
  2. کثیر عنصر کی توثیق:
    • ان میں سے ایک کے خلاف فیلڈ کی تصدیق اور ثانوی تصدیق کے ساتھ صارف کا سرٹیفکیٹ؛
    • لاگ ان (غیر تبدیل شدہ، سرٹیفکیٹ سے لیا گیا) اور پاس ورڈ؛
  3. منسلک میزبان کی حالت کا اندازہ لگانا (کرنسی)

استعمال شدہ حل کے اجزاء:

  • سسکو ASA (VPN گیٹ وے)؛
  • Cisco ISE (تصدیق / اجازت / اکاؤنٹنگ، ریاستی تشخیص، CA)؛
  • سسکو DUO (ملٹی فیکٹر تصدیق) (آپ کسی بھی SAML/Radius سے مطابقت رکھنے والے کو منسلک کر سکتے ہیں);
  • Cisco AnyConnect (ورک سٹیشنز اور موبائل OS کے لیے کثیر مقصدی ایجنٹ)؛

آئیے گاہک کی ضروریات کے ساتھ شروع کریں:

  1. صارف کو، اپنے لاگ ان/پاس ورڈ کی توثیق کے ذریعے، VPN گیٹ وے سے AnyConnect کلائنٹ کو ڈاؤن لوڈ کرنے کے قابل ہونا چاہیے؛ تمام ضروری AnyConnect ماڈیولز صارف کی پالیسی کے مطابق خود بخود انسٹال ہونے چاہئیں؛
  2. صارف کو خود بخود ایک سرٹیفکیٹ جاری کرنے کے قابل ہونا چاہئے (ایک منظرنامے کے لیے، اہم منظر نامے میں دستی جاری کرنا اور پی سی پر اپ لوڈ کرنا ہے)، لیکن میں نے مظاہرے کے لیے خودکار مسئلہ نافذ کیا (اسے ہٹانے میں کبھی دیر نہیں ہوئی)۔
  3. بنیادی توثیق کئی مراحل میں ہونی چاہیے، پہلے ضروری فیلڈز اور ان کی اقدار کے تجزیہ کے ساتھ سرٹیفکیٹ کی توثیق ہوتی ہے، پھر لاگ ان/پاس ورڈ، صرف اس بار لاگ ان ونڈو میں سرٹیفکیٹ کے خانے میں مخصوص صارف کا نام داخل کیا جانا چاہیے۔ موضوع کا نام (CN) ترمیم کرنے کی صلاحیت کے بغیر۔
  4. آپ کو یہ یقینی بنانا ہوگا کہ جس ڈیوائس سے آپ لاگ ان ہو رہے ہیں وہ کارپوریٹ لیپ ٹاپ ہے جو صارف کو ریموٹ رسائی کے لیے جاری کیا گیا ہے، نہ کہ کچھ اور۔ (اس ضرورت کو پورا کرنے کے لیے کئی آپشنز بنائے گئے ہیں)
  5. کنیکٹنگ ڈیوائس کی حالت (اس مرحلے پر پی سی) کا اندازہ کسٹمر کی ضروریات کی ایک پوری بھاری میز کی جانچ کے ساتھ کیا جانا چاہئے (خلاصہ):
    • فائلیں اور ان کی خصوصیات؛
    • رجسٹری اندراجات؛
    • فراہم کردہ فہرست سے OS پیچ (بعد میں SCCM انضمام)؛
    • ایک مخصوص صنعت کار سے اینٹی وائرس کی دستیابی اور دستخطوں کی مطابقت؛
    • بعض خدمات کی سرگرمی؛
    • بعض نصب شدہ پروگراموں کی دستیابی؛

شروع کرنے کے لیے، میں تجویز کرتا ہوں کہ آپ یقینی طور پر اس کے نتیجے میں عمل درآمد کے ویڈیو مظاہرے کو دیکھیں یوٹیوب (5 منٹ).

اب میں ان نفاذ کی تفصیلات پر غور کرنے کی تجویز کرتا ہوں جو ویڈیو کلپ میں شامل نہیں ہیں۔

آئیے AnyConnect پروفائل تیار کریں:

میں نے پہلے ترتیب پر اپنے مضمون میں پروفائل بنانے کی ایک مثال (ASDM میں مینو آئٹم کے لحاظ سے) دی تھی۔ VPN لوڈ بیلنسنگ کلسٹر. اب میں الگ سے ان اختیارات کو نوٹ کرنا چاہوں گا جن کی ہمیں ضرورت ہوگی:

پروفائل میں، ہم اختتامی کلائنٹ سے جڑنے کے لیے VPN گیٹ وے اور پروفائل نام کی نشاندہی کریں گے:

انتہائی محفوظ ریموٹ رسائی کے تصور کا نفاذ

آئیے پروفائل کی طرف سے ایک سرٹیفکیٹ کے خودکار اجراء کو ترتیب دیتے ہیں، خاص طور پر، سرٹیفکیٹ کے پیرامیٹرز کی نشاندہی کرتے ہیں اور، جو عام ہے، فیلڈ پر توجہ دیں۔ ابتدائیہ (I)، جہاں ایک مخصوص قدر دستی طور پر درج کی جاتی ہے۔ آپ نے کیا ٹیسٹ مشین (منفرد ڈیوائس شناخت کنندہ جو Cisco AnyConnect کلائنٹ کے ذریعہ تیار کیا جاتا ہے)۔

انتہائی محفوظ ریموٹ رسائی کے تصور کا نفاذ

یہاں میں ایک شعری اختلاف کرنا چاہتا ہوں، کیونکہ یہ مضمون اس تصور کو بیان کرتا ہے؛ مظاہرے کے مقاصد کے لیے، سرٹیفکیٹ جاری کرنے کے لیے UDID AnyConnect پروفائل کے ابتدائی فیلڈ میں درج کیا گیا ہے۔ بلاشبہ، حقیقی زندگی میں، اگر آپ ایسا کرتے ہیں، تو تمام کلائنٹس کو اس فیلڈ میں ایک ہی UDID کے ساتھ ایک سرٹیفکیٹ ملے گا اور ان کے لیے کچھ بھی کام نہیں کرے گا، کیونکہ انہیں اپنے مخصوص PC کے UDID کی ضرورت ہے۔ AnyConnect، بدقسمتی سے، ابھی تک UDID فیلڈ کے متبادل کو ماحولیاتی متغیر کے ذریعے سرٹیفکیٹ کی درخواست پروفائل میں لاگو نہیں کرتا ہے، جیسا کہ یہ کرتا ہے، مثال کے طور پر، متغیر کے ساتھ %USER%.

یہ بات قابل غور ہے کہ صارف (اس منظر نامے کا) ابتدائی طور پر ایسے پروٹیکٹڈ پی سی کو دستی موڈ میں دیے گئے UDID کے ساتھ آزادانہ طور پر سرٹیفکیٹ جاری کرنے کا ارادہ رکھتا ہے، جو اس کے لیے کوئی مسئلہ نہیں ہے۔ تاہم، ہم میں سے اکثر کے لیے ہم آٹومیشن چاہتے ہیں (اچھا، میرے لیے یہ سچ ہے =))۔

اور یہ وہی ہے جو میں آٹومیشن کے لحاظ سے پیش کر سکتا ہوں۔ اگر AnyConnect ابھی تک متحرک طور پر UDID کو تبدیل کرکے خود بخود سرٹیفکیٹ جاری کرنے کے قابل نہیں ہے، تو پھر ایک اور طریقہ ہے جس کے لیے تھوڑی تخلیقی سوچ اور ہنر مند ہاتھوں کی ضرورت ہوگی - میں آپ کو تصور بتاؤں گا۔ سب سے پہلے، آئیے دیکھتے ہیں کہ AnyConnect ایجنٹ کے ذریعے مختلف آپریٹنگ سسٹمز پر UDID کیسے تیار کیا جاتا ہے:

  • ونڈوز — DigitalProductID اور مشین SID رجسٹری کلید کے امتزاج کا SHA-256 ہیش
  • او ایس ایکس — SHA-256 ہیش پلیٹ فارم یو یو آئی ڈی
  • لینکس - روٹ پارٹیشن کے UUID کا SHA-256 ہیش۔
  • ایپل iOS — SHA-256 ہیش پلیٹ فارم یو یو آئی ڈی
  • اینڈرائڈ - پر دستاویز دیکھیں لنک

اس کے مطابق، ہم اپنے کارپوریٹ ونڈوز OS کے لیے ایک اسکرپٹ بناتے ہیں، اس اسکرپٹ کے ساتھ ہم مقامی طور پر معلوم ان پٹس کا استعمال کرتے ہوئے UDID کا حساب لگاتے ہیں اور اس UDID کو مطلوبہ فیلڈ میں داخل کرکے سرٹیفکیٹ جاری کرنے کی درخواست کرتے ہیں، ویسے، آپ مشین بھی استعمال کرسکتے ہیں۔ AD کی طرف سے جاری کردہ سرٹیفکیٹ (اسکیم میں سرٹیفکیٹ کا استعمال کرتے ہوئے دوہری تصدیق شامل کرکے ایک سے زیادہ سرٹیفکیٹ).

آئیے سسکو اے ایس اے کی طرف ترتیبات تیار کریں:

آئیے ISE CA سرور کے لیے ایک TrustPoint بنائیں، یہ وہی ہوگا جو کلائنٹس کو سرٹیفکیٹ جاری کرے گا۔ میں Key-chain درآمد کے طریقہ کار پر غور نہیں کروں گا؛ ایک مثال سیٹ اپ پر میرے مضمون میں بیان کی گئی ہے۔ VPN لوڈ بیلنسنگ کلسٹر.

crypto ca trustpoint ISE-CA
 enrollment terminal
 crl configure

ہم سرٹیفکیٹ میں موجود فیلڈز کے مطابق قواعد کی بنیاد پر سرٹیفکیٹ گروپ کے ذریعے تقسیم کو ترتیب دیتے ہیں جو تصدیق کے لیے استعمال ہوتے ہیں۔ ہم نے پچھلے مرحلے پر جو AnyConnect پروفائل بنایا تھا وہ بھی یہاں ترتیب دیا گیا ہے۔ براہ کرم نوٹ کریں کہ میں قدر استعمال کر رہا ہوں۔ SECUREBANK-RA، جاری کردہ سرٹیفکیٹ والے صارفین کو ٹنل گروپ میں منتقل کرنے کے لیے سیکیور-بینک-وی پی اینبراہ کرم نوٹ کریں کہ میرے پاس یہ فیلڈ 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
!

ہم گروپ پالیسیاں اور ٹنل گروپس اور ان کے معاون اجزاء بناتے ہیں:

ٹنل گروپ ڈیفالٹWEBVPNGگروپ بنیادی طور پر AnyConnect VPN کلائنٹ کو ڈاؤن لوڈ کرنے اور ASA کے SCEP-Proxy فنکشن کا استعمال کرتے ہوئے صارف کا سرٹیفکیٹ جاری کرنے کے لیے استعمال کیا جائے گا؛ اس کے لیے ہمارے پاس ٹنل گروپ اور متعلقہ گروپ پالیسی دونوں پر متعلقہ آپشنز کو فعال کیا گیا ہے۔ AC- ڈاؤن لوڈ کریں۔، اور بھری ہوئی AnyConnect پروفائل پر (سرٹیفکیٹ جاری کرنے کے لیے فیلڈز وغیرہ)۔ اس گروپ پالیسی میں بھی ہم ڈاؤن لوڈ کرنے کی ضرورت کی نشاندہی کرتے ہیں۔ ISE پوسچر ماڈیول.

ٹنل گروپ سیکیور-بینک-وی پی این پچھلے مرحلے میں جاری کردہ سرٹیفکیٹ کے ساتھ تصدیق کرتے وقت کلائنٹ کے ذریعہ خود بخود استعمال کیا جائے گا، کیونکہ، سرٹیفکیٹ کے نقشے کے مطابق، کنکشن خاص طور پر اس ٹنل گروپ پر پڑے گا۔ میں یہاں آپ کو دلچسپ اختیارات کے بارے میں بتاؤں گا:

  • سیکنڈری-توثیق-سرور-گروپ DUO # DUO سرور (ریڈیس پراکسی) پر ثانوی توثیق سیٹ کریں
  • صارف نام سے سرٹیفکیٹ سی این # بنیادی توثیق کے لیے، ہم صارف لاگ ان کو وراثت میں حاصل کرنے کے لیے سرٹیفکیٹ کے CN فیلڈ کا استعمال کرتے ہیں۔
  • ثانوی صارف نام سے سرٹیفکیٹ I # DUO سرور پر ثانوی توثیق کے لیے، ہم سرٹیفکیٹ کے نکالے گئے صارف نام اور ابتدائی (I) فیلڈز استعمال کرتے ہیں۔
  • پری فل صارف نام کلائنٹ # صارف نام کو تبدیل کرنے کی صلاحیت کے بغیر تصدیق ونڈو میں پہلے سے بھرا ہوا بنائیں
  • سیکنڈری-پری-فل-یوزر نیم کلائنٹ کو چھپائیں استعمال-عام-پاس ورڈ پش # ہم ثانوی توثیق 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 میں ایک مقامی صارف بنایا اور اسے فیلڈ میں تفویض کیا۔ تفصیل UDID پی سی جس سے اسے VPN کے ذریعے لاگ ان کرنے کی اجازت ہے۔ اگر میں ISE پر مقامی توثیق کا استعمال کرتا ہوں تو میں صرف ایک ڈیوائس تک محدود رہوں گا، کیونکہ وہاں زیادہ فیلڈز نہیں ہیں، لیکن تھرڈ پارٹی تصدیقی ڈیٹا بیس میں مجھ پر ایسی پابندیاں نہیں ہوں گی۔

انتہائی محفوظ ریموٹ رسائی کے تصور کا نفاذ

آئیے اجازت کی پالیسی پر نظر ڈالیں، اسے کنکشن کے چار مراحل میں تقسیم کیا گیا ہے:

  • 1 اسٹیج - AnyConnect ایجنٹ کو ڈاؤن لوڈ کرنے اور سرٹیفکیٹ جاری کرنے کی پالیسی
  • 2 اسٹیج - بنیادی توثیق کی پالیسی لاگ ان (سرٹیفکیٹ سے)/پاس ورڈ + یو ڈی آئی ڈی کی توثیق کے ساتھ سرٹیفکیٹ
  • 3 اسٹیج - ثانوی توثیق بذریعہ Cisco DUO (MFA) UDID بطور صارف نام + ریاستی تشخیص
  • 4 اسٹیج - حتمی اجازت ریاست میں ہے:
    • شکایت؛
    • UDID کی توثیق (سرٹیفکیٹ + لاگ ان بائنڈنگ سے)،
    • سسکو DUO MFA؛
    • لاگ ان کے ذریعے تصدیق؛
    • سرٹیفکیٹ کی تصدیق؛

انتہائی محفوظ ریموٹ رسائی کے تصور کا نفاذ

آئیے ایک دلچسپ حالت دیکھتے ہیں۔ UUID_VALIDATEDایسا لگتا ہے کہ توثیق کرنے والا صارف درحقیقت کسی PC سے آیا ہے جس میں فیلڈ سے منسلک UDID کی اجازت ہے Description اکاؤنٹ، حالات اس طرح نظر آتے ہیں:

انتہائی محفوظ ریموٹ رسائی کے تصور کا نفاذ

1,2,3 مراحل میں استعمال ہونے والی اجازت کا پروفائل درج ذیل ہے:

انتہائی محفوظ ریموٹ رسائی کے تصور کا نفاذ

آپ ISE میں کلائنٹ سیشن کی تفصیلات دیکھ کر بالکل چیک کر سکتے ہیں کہ AnyConnect کلائنٹ سے UDID ہمارے پاس کیسے آتا ہے۔ تفصیل سے ہم دیکھیں گے کہ میکانزم کے ذریعے AnyConnect ACIDEX نہ صرف پلیٹ فارم کے بارے میں معلومات بھیجتا ہے بلکہ ڈیوائس کا UDID بھی بھیجتا ہے۔ Cisco-AV-PAIR:

انتہائی محفوظ ریموٹ رسائی کے تصور کا نفاذ

آئیے صارف اور فیلڈ کو جاری کردہ سرٹیفکیٹ پر توجہ دیں۔ ابتدائیہ (I)، جسے Cisco DUO پر سیکنڈری MFA تصدیق کے لیے لاگ ان کے طور پر لینے کے لیے استعمال کیا جاتا ہے:

انتہائی محفوظ ریموٹ رسائی کے تصور کا نفاذ

لاگ میں DUO Radius Proxy سائیڈ پر ہم واضح طور پر دیکھ سکتے ہیں کہ تصدیق کی درخواست کیسے کی جاتی ہے، یہ UDID کو بطور صارف نام استعمال کرتے ہوئے آتا ہے:

انتہائی محفوظ ریموٹ رسائی کے تصور کا نفاذ

DUO پورٹل سے ہم ایک کامیاب تصدیقی ایونٹ دیکھتے ہیں:

انتہائی محفوظ ریموٹ رسائی کے تصور کا نفاذ

اور صارف کی خصوصیات میں میں نے اسے ترتیب دیا ہے۔ عرف، جسے میں نے لاگ ان کے لیے استعمال کیا، بدلے میں، یہ پی سی کا یو ڈی آئی ڈی ہے جسے لاگ ان کے لیے اجازت دی گئی ہے:

انتہائی محفوظ ریموٹ رسائی کے تصور کا نفاذ

نتیجے کے طور پر ہمیں ملا:

  • کثیر عنصر صارف اور آلہ کی توثیق؛
  • صارف کے آلے کی جعل سازی کے خلاف تحفظ؛
  • ڈیوائس کی حالت کا اندازہ لگانا؛
  • ڈومین مشین سرٹیفکیٹ وغیرہ کے ساتھ کنٹرول میں اضافہ کا امکان؛
  • خود کار طریقے سے تعینات سیکورٹی ماڈیولز کے ساتھ جامع دور دراز کام کی جگہ پر تحفظ؛

سسکو وی پی این سیریز کے مضامین کے لنکس:

ماخذ: www.habr.com

نیا تبصرہ شامل کریں