پیکربندی وی.پی.ان Cisco AnyConnect در روتر سیسکو
در این مطلب قصد داریم در رابطه با نحوه پیکربندی Cisco AnyConnect در روتر سیسکو صحبت کنیم. از آنجایی که در سال جدید بیشتر افراد برای پیکربندی VPN به من مراجعه کردند، مجبور شدم برای چندین بار VPNهای Cisco AnyConnect را بر روی فایروالهای ASA برای مشتریان پیکربندی کنم. متاسفانه در این بین متوجه شدم که سازمانهای زیادی این کار را اشتباه انجام میدهند. با همه این ها فرایند پیکربندی بسیار ساده است و تصمیم گرفتم در این مقاله این مراحل را در 5 گام با شما مرور کنم. پس تا پایان مطلب با ما همراه باشید:
1-پیکربندی احراز هویت AAA
اولین چیزی که باید پیکربندی شود احراز هویت AAA است. ترجیح من برای مجوز و احراز هویت استفاده از RADIUS است، با این حال گزینه های دیگری مانند LDAP نیز وجود دارد. در هر دو صورت پیکربندی مشابه خواهد بود:
!
aaa-server MYRADIUS protocol radius
aaa-server MYRADIUS (INSIDE) host 10.10.1.1
key ****
!
این قسمت از پیکربندی میخواهد بگوید که من در شبکه خود یک سرور RADIUS با آدرس IP 10.10.1.1 دارم که با تگ MYRADIUS (که در پیکربندی ASA به آن اشاره خواهم کرد) از طریق رابط ASA که من قبلا در پیکربندی رابط آن را INSIDE نامیده ام قابل دسترس است.
2-پروتکلهای VPN را تعریف کنید
زمانی که کاربران VPN خود را متصل میکنند، به یک آدرس IP برای VPN session نیاز دارند. این آدرسی است که در داخل شبکه شرکتی برای این کاربر ظاهر میشود. این موضوع ربطی به آدرس IP عمومی کاربر یا هر آدرسی که ممکن است در شبکه خانگی خود داشته باشد ندارد. این آدرس تنها پس از عبور ترافیک کاربر راه دور از ASA در داخل شبکه استفاده میشود.
!
ip local pool ANYCONNECT_POOL1 10.99.1.1-10.99.1.254 mask 255.255.255.0
ip local pool ANYCONNECT_POOL2 10.99.2.1-10.99.2.254 mask 255.255.255.0
!
من در اینجا دو استخر تعریف کردم زیرا قصد دارم بعداً چندین گروه تونل داشته باشم.
3-پیکربندی tunnel groups
در این مرحله من قصد دارم گروههای تونل خود را پیکربندی کنم. در اینجا قصد دارم دو گروه ایجاد کنم.
!
tunnel-group ANYCONN_1 type remote-access
tunnel-group ANYCONN_1 type general-attributes
address-pool ANYCONNECT_POOL1
authentication-server-group MYRADIUS
default-group-policy NOACCESS
tunnel-group ANYCONN_1 webvpn-attributes
group-alias EMPLOYEES enable
!
tunnel-group ANYCONN_2 type remote-access
tunnel-group ANYCONN_2 type general-attributes
address-pool ANYCONNECT_POOL2
authentication-server-group MYRADIUS
default-group-policy NOACCESS
tunnel-group ANYCONN_2 webvpn-attributes
group-alias VENDORS enable
!
با انجام کار بالا دو گروه تونل با نام های ANYCONN_1 و ANYCONN_2 ایجاد میشود. در این جا من pool اول را به گروه اول و Pool دوم را به گروه دوم اختصاص دادم. حالا از دستور “group-alias” استفاده میکنم که در رایانه شخصی کاربر یک کادر کشویی روی کلاینت Cisco AnyConnect ایجاد میکند. در این قسمت شما میتوانید کارمندان یا فروشندگان را به عنوان گزینه انتخاب کنید. در پیکربندی که قرار است ایجاد کنیم به افراد گروه اول اجازه میدهد فقط به گروه تونل اول و کاربران گروه دوم فقط به گروه تونل دوم متصل شوند.
توجه داشته باشید که دستور “authentication-server-group” میتواند در این دو گروه تونل متفاوت باشد. بنابراین میتوانم کارمندانم را به یک سرور RADIUS بفرستم (شاید سروری که با LDAP من ادغام شده باشد یا به طور معمول میتوانم از LDAP به صورت بومی در فایروال استفاده کنم) و فروشندگان را به سرور دیگری بفرستم.
4-تنظیم group policies
در این مرحله ما با به سه مورد سیاست گروهی نیاز داریم. یک خط و مش گروهی برای کارمندان و یک خط و مش گروهی برای فروشندگان. سیاست سوم هم برای افرادی است که دارای اعتبارنامه معتبر برای ورود به سیستم هستند اما مجاز به استفاده از VPN نیستند.[
یکی از دلایلی که ممکن است منجر به این اتفاق شده باشد این است که آنها نمایه اشتباه را انتخاب کرده باشند. اما این امکان وجود دارد که من افرادی را داشته باشم که به سادگی مجاز به استفاده از VPN نیستند، حتی اگر دارای اعتبار قانونی باشند. از آنجایی که یک سیستم احراز هویت یکسان برای بیشتر موارد استفاده میشود این اتفاق ممکن است رخ دهد.
!
group-policy STAFF_VPN_GROUP internal
group-policy STAFF_VPN_GROUP attributes
vpn-tunnel-protocol ssl-client
vpn-filter value STAFF_VPN_ACL
!
group-policy VENDOR_VPN_GROUP internal
group-policy VENDOR_VPN_GROUP attributes
vpn-tunnel-protocol ssl-client
vpn-filter value VENDOR_VPN_ACL
!
group-policy NOACCESS internal
group-policy NOACCESS attributes
vpn-tunnel-protocol ssl-client
vpn-simultaneous-logins 0
!
حالا سوال پیش میآید که این اسامی از کجا آمده اند؟ اینجاست که همه چیز کمی گیج کننده به نظر میرسد. در واقع نامهای سیاستهای گروهی مانند STAFF_VPN_GROUP و VENDOR_VPN_GROUP مقادیری هستند که توسط سرور RADIUS یا LDAP ارائه میشوند. سرور باید به گونه ای پیکربندی شود که پس از احراز هویت موفقیت آمیز، این مقادیر را در قسمت IETF نوع 25 خود که کلاس نیز نامیده میشود بازگرداند. و حتما باید مانند نمونه آورده شده مانند زیر در قالب خاصی قرار بگیرد.
;OU=STAFF_VPN_GROUP
یکی دیگر از تنظیمات کوچک و مهمی که میخواهم به آن اشاره کنم دستور “VPN-filter” است. این یک ACL ویژه را برای این کاربران اعمال میکند و به ما اجازه میدهد تا آنچه را که میتوانند و یا نمیتوانند به آن دسترسی داشته باشند محدود کنیم. برای مثال اگر میخواستم به گروه کارمندان اجازه هر چیزی به شبکه شرکتی را بدهم، اما فروشندگان را محدود به دسترسی به یک زیر شبکه خاص کنم، میتوانم این کار را انجام دهم:
!
access-list STAFF_VPN_ACL extended permit ip any any
access-list VENDOR_VPN_ACL extended permit ip any 10.99.99.0 255.255.255.0
!
5-اعمال تنظیمات انجام شده
در آخر باید پیکربندی را در رابط OUTSIDE فایروال اعمال کنیم:
!
webvpn
enable OUTSIDE
anyconnect enable
tunnel-group-list enable
!
احراز هویت logic flow
بیایید جریان منطقی را در این مثال پیکربندی مرور کنیم:
ابتدا کاربر Cisco AnyConnect کلاینت خود را باز میکند. آنها به نام میزبان یا آدرس IP به رابط خارجی ASA ما متصل میشوند. به محض اتصال، یک ورود به سیستم دریافت میکنند که در آن میتوانند کارمندان یا فروشنده ها را از منوی کشویی انتخاب کنند. آنها شناسه کاربری و اعتبار ورود خود را وارد میکنند. تا اینجا ما فقط در بخش tunnel group پیکربندی هستیم.
قدم اول
سپس اطلاعات ورود به سیستم به گروه سرور احراز هویت که برای این گروه تونل پیکربندی شده است ارسال میشود. در این مرحله اگر احراز هویت موفقیت آمیز باشد، سرور RADIUS مقداری به نام RADIUS IETF-25 را بر میگرداند. این مقدار شامل نام سیاست های گروهی است که این کاربر باید در آن قرار بگیرد.
قدم دوم
در این مرحله، میتوانیم چندین سیاست گروهی متفاوت برای گروههای مختلف کاربران داشته باشیم که همه آنها با استفاده از یک منوی کشویی به هم متصل میشوند. ما میتوانیم ACL متفاوتی را به هر یک از آنها اختصاص دهیم تا بسته به گروهشان، دسترسی به آنها را محدود کنیم. این مکانیسم فقط میتواند یک خط مشی گروه را انتخاب کند. اگر میخواهید کاربر در چندین گروه باشد، باید در گروههای تونل خود خلاقیت به خرج دهید.
قدم سوم
در پیکربندی گروه تونل، یک سیاست پیشفرض گروه catchall تعریف کردهایم که NOACCESS نام دارد. حالا اگر سرور RADIUS چیزی را ارسال کند که ASA متوجه آن نیست یا اگر هیچ چیزی ارسال نکند. کاربر شما به این سیاست گروهی اختصاص داده میشود. حالا برای حفظ امنیت، ما میخواهیم در این موارد دسترسی را رد کنیم. ما با ایجاد سیاست گروهی NOACCESS اجازه ورود همزمان برای هر شناسه کاربری را انجام میدهیم:
vpn-simultaneous-logins 0
قدم چهارم
برای آن دسته از کاربرانی که با موفقیت دسترسی پیدا کردند، میتوانیم ACL را با استفاده از دستور “vpn-filter” اعمال کنیم. این یک ACL است که بر روی خود دیوار آتش برای اتصالات به مقصد اعمال میشود. بنابراین ما آدرسهای مجاز یا رد شده را در قسمت «مقصد» ACL قرار میدهیم:
access-list extended permit ip any 10.99.99.0 255.255.255.0
VENDOR_VPN_ACL
بزرگترین اشتباهی که در تنظیمات AnyConnect دیدهام، تنظیم پیش فرض group policy در tunnel group است تا اجازه دسترسی را بدهد. همیشه باید بهطور پیشفرض آن را رد کنید. در آخر باید بگویم این 5 مرحله ساده را دنبال کنید زیرا برای پیکربندی Cisco AnyConnect VPN باید از یک فرایند ساده و سازگار پیروی کنید.
امیدواریم مقاله پیکربندی Cisco AnyConnect در 5 مرحله برای شما مفید بوده باشد. برای خواندن مقالات بیشتر در رابطه با پیکربندی سیسکو شبکه دیده بان را دنبال کنید.