2FA ڏانھن وڃو (ASA SSL VPN لاءِ ٻن عنصر جي تصديق)

ڪارپوريٽ ماحول تائين ريموٽ رسائي فراهم ڪرڻ جي ضرورت گهڻو ڪري اڀري رهي آهي، ڪابه پرواهه ناهي ته اهو توهان جا صارف يا ڀائيوار آهن جن کي توهان جي تنظيم ۾ هڪ خاص سرور تائين رسائي جي ضرورت آهي.

انهن مقصدن لاءِ، اڪثر ڪمپنيون استعمال ڪن ٿيون وي پي اين ٽيڪنالاجي، جنهن پاڻ کي ثابت ڪيو آهي ته تنظيم جي مقامي وسيلن تائين پهچ مهيا ڪرڻ جو هڪ قابل اعتماد محفوظ طريقو آهي.

منهنجي ڪمپني ڪا به استثنا نه هئي، ۽ اسان، ٻين ڪيترن ئي وانگر، هن ٽيڪنالاجي کي استعمال ڪندا آهيون. ۽، ٻين ڪيترن ئي وانگر، اسان استعمال ڪندا آهيون Cisco ASA 55xx هڪ ريموٽ رسائي گيٽ وي جي طور تي.

جيئن ته دور دراز استعمال ڪندڙن جو تعداد وڌي ٿو، اتي سند جاري ڪرڻ جي طريقيڪار کي آسان ڪرڻ جي ضرورت آهي. پر ساڳئي وقت، اهو ٿيڻ گهرجي بغير حفاظت جي سمجهوتو ڪرڻ جي.

پاڻ لاءِ، اسان سسڪو SSL VPN ذريعي ڳنڍڻ لاءِ ٻه عنصر جي تصديق استعمال ڪرڻ ۾ هڪ حل ڳوليو، هڪ وقت جا پاسورڊ استعمال ڪندي. ۽ هي پبليڪيشن توهان کي ٻڌائيندو ته اهڙي حل کي ڪيئن منظم ڪجي گهٽ ۾ گهٽ وقت سان ۽ ضروري سافٽ ويئر لاءِ صفر لاڳت سان (بطور ته توهان وٽ اڳ ۾ ئي توهان جي انفراسٽرڪچر ۾ Cisco ASA آهي).

مارڪيٽ هڪ دفعي پاسورڊ ٺاهڻ لاءِ باڪس ٿيل حلن سان ڀريل آهي، جڏهن ته انهن کي حاصل ڪرڻ لاءِ ڪيترائي آپشن پيش ڪري رهيا آهن، پوءِ اهو ايس ايم ايس ذريعي پاسورڊ موڪلڻ يا ٽوڪن استعمال ڪرڻ، ٻئي هارڊويئر ۽ سافٽ ويئر (مثال طور، موبائل فون تي). پر پئسا بچائڻ جي خواهش ۽ منهنجي آجر لاء پئسا بچائڻ جي خواهش، موجوده بحران ۾، مون کي مجبور ڪيو ته هڪ وقت جي پاسورڊ پيدا ڪرڻ لاء هڪ خدمت لاڳو ڪرڻ لاء مفت رستو ڳولڻ لاء. جيڪو، جڏهن ته مفت، تجارتي حلن کان گهڻو گهٽ نه آهي (هتي اسان کي هڪ رزرويشن ڪرڻ گهرجي، ياد رهي ته هن پراڊڪٽ جو هڪ تجارتي نسخو پڻ آهي، پر اسان اتفاق ڪيو ته اسان جي قيمت، رقم ۾، صفر ٿي ويندي).

ان ڪري، اسان کي ضرورت آهي:

- هڪ لينڪس تصوير جنهن ۾ اوزارن جي هڪ ٺهيل سيٽ سان - multiOTP، FreeRADIUS ۽ nginx، ويب ذريعي سرور تائين رسائي حاصل ڪرڻ لاءِ (http://download.multiotp.net/ - مون VMware لاءِ تيار ٿيل تصوير استعمال ڪئي)
- فعال ڊاريڪٽري سرور
- سسکو ASA پاڻ (سھولت لاءِ، مان ASDM استعمال ڪريان ٿو)
- ڪو به سافٽ ويئر ٽوڪن جيڪو TOTP ميڪانيزم کي سپورٽ ڪري ٿو (آء، مثال طور، گوگل تصديق ڪندڙ استعمال ڪريو، پر ساڳيو FreeOTP ڪندو)

مان تفصيل ۾ نه ويندس ته تصوير ڪيئن ظاهر ٿئي ٿي. نتيجي طور، توھان حاصل ڪندا ڊيبين لينڪس سان گڏ ملٽي او ٽي پي ۽ فري RADIUS اڳ ۾ ئي انسٽال ٿيل، گڏجي ڪم ڪرڻ لاءِ ترتيب ڏنل، ۽ OTP انتظاميه لاءِ ھڪ ويب انٽرفيس.

قدم 1. اسان سسٽم کي شروع ڪريون ٿا ۽ ان کي توهان جي نيٽ ورڪ لاءِ ترتيب ڏيون ٿا
ڊفالٽ طور، سسٽم اچي ٿو روٽ روٽ سند سان. مان سمجهان ٿو ته هرڪو اندازو لڳايو ته اهو هڪ سٺو خيال هوندو روٽ يوزر پاسورڊ تبديل ڪرڻ پهرين لاگ ان کان پوءِ. توھان کي پڻ نيٽ ورڪ سيٽنگون تبديل ڪرڻ جي ضرورت آھي (ڊفالٽ طور اھو آھي '192.168.1.44' گيٽ وي سان '192.168.1.1'). ان کان پوء توهان سسٽم کي ريبوٽ ڪري سگهو ٿا.

اچو ته يوزر ٺاھيون Active Directory ۾ otp، پاسورڊ سان MySuperPassword.

قدم 2. ڪنيڪشن سيٽ اپ ڪريو ۽ ايڪٽو ڊاريڪٽري استعمال ڪندڙ درآمد ڪريو
هن کي ڪرڻ لاء، اسان کي ڪنسول تائين رسائي جي ضرورت آهي، ۽ سڌو سنئون فائل ڏانهن multiotp.php، جنهن کي استعمال ڪندي اسان ڪنيڪشن سيٽنگون ترتيب ڏينداسين Active Directory ۾.

ڊاريڪٽري ڏانھن وڃو /usr/local/bin/multiotp/ ۽ ھيٺ ڏنل حڪمن تي عمل ڪريو بدلي ۾:

./multiotp.php -config default-request-prefix-pin=0

اهو طئي ڪري ٿو ته ڇا هڪ اضافي (مستقل) پن جي ضرورت آهي جڏهن هڪ ڀيرو پن داخل ڪيو وڃي (0 يا 1)

./multiotp.php -config default-request-ldap-pwd=0

اهو طئي ڪري ٿو ته ڇا هڪ ڊومين پاسورڊ گهربل آهي جڏهن هڪ ڀيرو پن داخل ڪيو وڃي (0 يا 1)

./multiotp.php -config ldap-server-type=1

LDAP سرور جو قسم ظاهر ڪيو ويو آهي (0 = باقاعده LDAP سرور، اسان جي صورت ۾ 1 = فعال ڊائريڪٽري)

./multiotp.php -config ldap-cn-identifier="sAMAccountName"

اهو فارميٽ بيان ڪري ٿو جنهن ۾ يوزر نالو پيش ڪرڻو آهي (هي قيمت صرف نالو ڏيکاريندو، ڊومين کان سواء)

./multiotp.php -config ldap-group-cn-identifier="sAMAccountName"

ساڳي شيء، صرف هڪ گروپ لاء

./multiotp.php -config ldap-group-attribute="memberOf"

اهو طئي ڪرڻ لاءِ هڪ طريقو بيان ڪري ٿو ته ڇا صارف هڪ گروپ سان تعلق رکي ٿو

./multiotp.php -config ldap-ssl=1

ڇا مون کي LDAP سرور سان محفوظ ڪنيڪشن استعمال ڪرڻ گهرجي (يقيناً، ها!)

./multiotp.php -config ldap-port=636

LDAP سرور سان ڳنڍڻ لاءِ پورٽ

./multiotp.php -config ldap-domain-controllers=adSRV.domain.local

توهان جي Active Directory سرور ايڊريس

./multiotp.php -config ldap-base-dn="CN=Users,DC=domain,DC=local"

اسان اشارو ڪريون ٿا ته ڊومين ۾ استعمال ڪندڙن جي ڳولا ڪٿي شروع ڪجي

./multiotp.php -config ldap-bind-dn="[email protected]"

ھڪڙو استعمال ڪندڙ بيان ڪريو جنھن کي فعال ڊاريڪٽري ۾ ڳولا جا حق آھن

./multiotp.php -config ldap-server-password="MySuperPassword"

Active Directory سان ڳنڍڻ لاءِ يوزر پاسورڊ بيان ڪريو

./multiotp.php -config ldap-network-timeout=10

Active Directory سان ڳنڍڻ جو وقت مقرر ڪرڻ

./multiotp.php -config ldap-time-limit=30

اسان صارف جي درآمد جي عمل لاء وقت جي حد مقرر ڪئي

./multiotp.php -config ldap-activated=1

فعال ڊاريڪٽري ڪنيڪشن جي ٺاھ جوڙ کي چالو ڪرڻ

./multiotp.php -debug -display-log -ldap-users-sync

اسان استعمال ڪندڙ کي فعال ڊاريڪٽري مان درآمد ڪندا آهيون

قدم 3. ٽوڪن لاءِ QR ڪوڊ ٺاھيو
هتي هر شيء بلڪل سادي آهي. برائوزر ۾ OTP سرور جو ويب انٽرفيس کوليو، لاگ ان ٿيو (منتظم لاءِ ڊفالٽ پاسورڊ تبديل ڪرڻ نه وساريو!)، ۽ ”پرنٽ“ بٽڻ تي ڪلڪ ڪريو:

2FA ڏانھن وڃو (ASA SSL VPN لاءِ ٻن عنصر جي تصديق)
ھن عمل جو نتيجو ھڪڙو صفحو ھوندو جنھن ۾ ٻه QR ڪوڊ شامل آھن. اسان جرئت سان انهن مان پهرين کي نظر انداز ڪريون ٿا (جڏهن ته پرڪشش لکت Google Authenticator / Authenticator / 2 Steps Authenticator)، ۽ ٻيهر اسان جرئت سان ٻئي ڪوڊ کي فون تي هڪ سافٽ ويئر ٽوڪن ۾ اسڪين ڪريون ٿا:

2FA ڏانھن وڃو (ASA SSL VPN لاءِ ٻن عنصر جي تصديق)
(ها، مون ڄاڻي واڻي QR ڪوڊ خراب ڪيو ته جيئن ان کي پڙهي نه سگهجي).

انهن عملن کي مڪمل ڪرڻ کان پوءِ، توهان جي ايپليڪيشن ۾ هر ٽيهن سيڪنڊن ۾ هڪ ڇهن عددن جو پاسورڊ پيدا ٿيڻ شروع ٿي ويندو.

پڪ ڪرڻ لاء، توهان ان کي ساڳئي انٽرفيس ۾ چيڪ ڪري سگهو ٿا:

2FA ڏانھن وڃو (ASA SSL VPN لاءِ ٻن عنصر جي تصديق)
توهان جي فون تي ايپليڪيشن مان توهان جو يوزر نالو ۽ هڪ ڀيرو پاسورڊ داخل ڪندي. ڇا توهان هڪ مثبت جواب حاصل ڪيو؟ تنهنڪري اسان اڳتي وڌون ٿا.

مرحلا 4. FreeRADIUS آپريشن جي اضافي تشڪيل ۽ جانچ
جيئن مون مٿي ذڪر ڪيو آهي، multiOTP اڳ ۾ ئي فري RADIUS سان ڪم ڪرڻ لاءِ ترتيب ڏنل آهي، باقي اهو آهي ته ٽيسٽ هلائڻ ۽ اسان جي وي پي اين گيٽ وي بابت معلومات شامل ڪرڻ لاءِ FreeRADIUS ڪنفيگريشن فائل ۾.

اسان واپس سرور ڪنسول ڏانھن، ڊاريڪٽري ڏانھن /usr/local/bin/multiotp/داخل ڪريو:

./multiotp.php -config debug=1
./multiotp.php -config display-log=1

وڌيڪ تفصيلي لاگنگ سميت.

FreeRADIUS ڪلائنٽ ڪنفيگريشن فائل ۾ (/etc/freeradius/clinets.conf) تبصرو ڪريو سڀني لائينن سان لاڳاپيل مقامي هلو ۽ ٻه درجا شامل ڪريو:

client localhost {
        ipaddr = 127.0.0.1
        secret          = testing321
        require_message_authenticator = no
}

- ٽيسٽ لاء

client 192.168.1.254/32 {
        shortname =     CiscoASA
        secret =        ConnectToRADIUSSecret
}

- اسان جي وي پي اين گيٽ وي لاءِ.

FreeRADIUS ٻيهر شروع ڪريو ۽ لاگ ان ٿيڻ جي ڪوشش ڪريو:

radtest username 100110 localhost 1812 testing321

جتي کاتي جو نالو = استعمال ڪندڙ جو نالو، 100110 = فون تي ايپليڪيشن پاران اسان کي ڏنل پاسورڊ، مقامي هلو = RADIUS سرور ايڊريس، 1812 - RADIUS سرور پورٽ، test321 - RADIUS سرور ڪلائنٽ پاسورڊ (جيڪو اسان ترتيب ۾ بيان ڪيو آهي).

هن حڪم جو نتيجو لڳ ڀڳ هن ريت ٿيندو:

Sending Access-Request of id 44 to 127.0.0.1 port 1812
        User-Name = "username"
        User-Password = "100110"
        NAS-IP-Address = 127.0.1.1
        NAS-Port = 1812
        Message-Authenticator = 0x00000000000000000000000000000000
rad_recv: Access-Accept packet from host 127.0.0.1 port 1812, id=44, length=20

هاڻي اسان کي پڪ ڪرڻ جي ضرورت آهي ته صارف ڪاميابي سان تصديق ڪئي وئي آهي. هن کي ڪرڻ لاء، اسان پاڻ کي multiotp جي لاگ تي نظر ڪنداسين:

tail /var/log/multiotp/multiotp.log

۽ جيڪڏهن آخري داخلا آهي ته:

2016-09-01 08:58:17     notice  username  User    OK: User username successfully logged in from 127.0.0.1
2016-09-01 08:58:17     debug           Debug   Debug: 0 OK: Token accepted from 127.0.0.1

پوءِ سڀ ڪجھ ٺيڪ ٿي ويو ۽ اسان مڪمل ڪري سگھون ٿا

قدم 5: Cisco ASA ترتيب ڏيو
اچو ته ان ڳالهه تي متفق ٿي وڃون ته اسان وٽ اڳ ۾ ئي SLL VPN ذريعي رسائي لاءِ ترتيب ڏنل گروپ ۽ پاليسيون آهن، جيڪي ايڪٽو ڊاريڪٽري سان ترتيب ڏنل آهن، ۽ اسان کي هن پروفائيل لاءِ ٻه عنصر جي تصديق شامل ڪرڻ جي ضرورت آهي.

1. نئون AAA سرور گروپ شامل ڪريو:

2FA ڏانھن وڃو (ASA SSL VPN لاءِ ٻن عنصر جي تصديق)
2. گروپ ۾ اسان جي multiOTP سرور شامل ڪريو:

2FA ڏانھن وڃو (ASA SSL VPN لاءِ ٻن عنصر جي تصديق)
3. اسان ترميم ڪريون ٿا ڪنيڪشن پروفائل, فعال ڊاريڪٽري سرور گروپ کي بنيادي تصديق واري سرور جي طور تي ترتيب ڏيڻ:

2FA ڏانھن وڃو (ASA SSL VPN لاءِ ٻن عنصر جي تصديق)
4. ٽيب ۾ ترقي يافته -> تصديق اسان پڻ چونڊيو فعال ڊائريڪٽري سرور گروپ:

2FA ڏانھن وڃو (ASA SSL VPN لاءِ ٻن عنصر جي تصديق)
5. ٽيب ۾ ترقي يافته -> ثانوي تصديق ڪرڻ لاءِ، ٺاھيل سرور گروپ چونڊيو جنھن ۾ multiOTP سرور رجسٽر ٿيل آھي. نوٽ ڪريو ته سيشن يوزرنيم پرائمري AAA سرور گروپ مان ورثي ۾ ملي ٿو:

2FA ڏانھن وڃو (ASA SSL VPN لاءِ ٻن عنصر جي تصديق)
سيٽنگون لاڳو ڪريو ۽

قدم 6، عرف آخري
اچو ته چيڪ ڪريون ته ڇا SLL VPN لاءِ ٻه عنصر جي تصديق ڪم ڪري ٿي:

2FA ڏانھن وڃو (ASA SSL VPN لاءِ ٻن عنصر جي تصديق)
وائيلا! جڏهن Cisco AnyConnect VPN ڪلائنٽ ذريعي ڳنڍيندي، توهان کي هڪ سيڪنڊ، هڪ ڀيرو پاسورڊ لاء پڻ چيو ويندو.

مون کي اميد آهي ته هي آرٽيڪل ڪنهن جي مدد ڪندو، ۽ اهو ڪنهن کي سوچڻ لاء کاڌو ڏيندو ته اهو ڪيئن استعمال ڪجي، مفت OTP سرور، ٻين ڪمن لاءِ. تبصرن ۾ حصيداري ڪريو جيڪڏھن توھان چاھيو.

جو ذريعو: www.habr.com

تبصرو شامل ڪريو