درس دویست و چهاردهم: پیاده سازی Radius – بخش سوم

پیاده سازی Radius بخش سوم

معرفی  NPS Policy

این پالیسی ها مشخص میکنند که چه کسانی میتوانند برای دسترسی به شبکه، authenticate و authorize شوند. نیز مجوز برقراری یا عدم برقراری ارتباط برای هر کدام از آنها را مشخص میکند.

با تعریف نتورک پالیسی ها از این پس مکانیزم زیر طی میشود:

  1. اگر اتصالی که سعی در وصل شدن به Access Server را دارد با اولین پالیسی ( پالیسی با بالاترین اولویت یعنی پالیسی که کمترین Priority Value را دارد) match نشد، پالیسی دوم بررسی میشود و الی آخر تا جاییکه یک پالیسی منطبق پیدا شود یا پالیسی ها تمام شوند. اگر هیچ پالیسی ای با اتصال متقاضی match نشد، اتصال فوق reject خواهد شد.
  2. اگر یک Connection با شرط یا شرطهای پالیسی منطبق شد ولی محدودیت های تعریف شده در Constraints را برآورده نکرد، این ارتباط reject خواهد شد.
  3. وقتی یک پالیسی سازگار پیدا شد، سطح دسترسی مشخص شده در access permission بر ارتباط اعمال خواهد شد. یعنی اگر سطح دسترسی پالیسی بصورت grant access باشد، اتصال برقرار خواهد شد ولی چنانچه سطح دسترسی اتصال بصورت Deny Access باشد، اتصال فوق Drop خواهد گردید.

NPS از دو نوع پالیسی پشتیبانی میکند:

  • Network Policy : مدیریت بر اتصالات Radius Client ها
  • Connection Request Policy : تعیین اینکه درخواست های اتصال Radius Client ها توسط Radius Server بصورت local یا Remote پردازش شود.

بررسی تب Dial-in در اکتیودایرکتوری

در اکتیودایرکتوری دامین در پنجره properties هر یوزر و کامپیوتر، تب dial-in وجود دارد.

214-1 dial-in tab

دو گزینه اول که ارتباط را مجاز یا غیرمجاز اعلام میکنند. گزینه control access through NPS Network Policy  تصمیم گیری را بر دوش پرمیشنی که در هنگام ساخت network policy تعیین کرده ایم، میگذارد. بهرحال تصمیم گیری درباره مجاز بودن یا نبودن یک ارتباط توسط این تب و تنظیمات access permission موجود در Network Policy مشخص میشود.

اگر دسترسی کاربری در این بصورت Allow Access تعیین شده باشد، همه اتصال های Remote این کاربر مجاز خواهد بود حتی اگر در Network Policy ها غیر مجاز باشد یا حتی اگر اتصال فوق با هیچ Network Policy ای مطابقت نداشته باشد.

 

مفاهیم و اصطلاحات Network Policy

هر Network Policy شامل چهار گروه خصوصیات است:

  • Overview
  • Conditions
  • Constraints
  • Settings

گروه Overview شامل موارد ذیل است:

214-2 overview group elements

گروه Conditions دربرگیرنده خصوصیات پایه ای اتصال شبکه ای فوق است. میتوان چندین شرط تعریف کرد. برای اینکه پالیسی اعمال شود باید Access client با همه شرطهای پالیسی مطابقت داشته باشد ( match باشد). شرط عبارتند از:

214-3 conditions group elements

Remote Client همان Access Client است.

گروه Constraints شبیه گروه Conditions است. یک Constraint در واقع یک تلاش برای اتصال به Access Server ( مانند VPN Server ) است که دارای خصوصیت خاصی میباشد. میتوان در یک پالیسی چندین Constraint تعریف کرد و در این حالت باید همه constraint ها روی Access Client صدق کنند تا پالیسی روی کلاینت فوق اعمال گردد. Constraint ها عبارتند از:

214-4 constraint group elements

و آخرین گروه هم گروه Settings است. وقتی خصوصیات گروه های Conditions و Constraints با یک remote Client تطبیق یافت و چنانچه نوع دسترسی نیز برای کلاینت فوق بصورت Grant تعریف شده باشد، توسط گروه Settings خصوصیات اتصال مشخص میشود. خصوصیاتی از قبیل:

214-5 Settings group elements

ایجاد پالیسی های مورد نیاز که دارای شرطهای درستی بوده و همچنین به ترتیب مناسب و صحیحی پشت سر یکدیگر اجرا شوند دارای اهمیت بسیار زیادی است. بعنوان مثال فرض کنید قرار است دو پالیسی ایجاد کنید.

پالیسی out-of-office hours: طبق این پالیسی کاربران ( اعضای گروه Domain users ) فقط در ساعات اداری مجاز به Remote Access به شبکه خواهند بود.

پالیسی Strong Encryption: کاربران عضو گروه Domain Admins در هر ساعتی از شبانه روز مجاز به داشتن Remote Access خواهند بود اما بشرطی که Access Client مورد استفاده آنها دارای سیستم رمزنگاری قدرتمندی باشد.

اکنون پالیسی out-of-office hours باید در بالای لیست پالیسی ها قرار گیرد ( یعنی دارای بالاترین اولویت باشد) تا مانع از دسترسی remote کاربران غیر admin در ساعات غیر اداری شود. اما زمانی که یک کاربر عضو گروه Domain Admins در ساعات غیر اداری یا اداری قصد remote Access داشته باشد، این پالیسی با خصوصیات گروه کاربری فوق match نمی شود و لذا پالیسی دوم یعنی Strong Encryption با اتصال مورد نظر مقایسه میگردد. خصوصیات اتصال با شرطهای پالیسی تطابق و همخوانی دارد. لذا باید سطح دسترسی پالیسی بررسی شود. معلوم میگردد که سطح دسترسی از نوع Grnat است. لذا اتصال مجاز بوده و میتواند برقرار شود.

پیاده سازی Network Policy

1- در کنسول NPS و در پنل سمت چپ و درذیل Policies روی Network Policies راست کلیک کرده و در منویی که ظاهر میشود گزینه New را انتخاب میکنیم تا ویزارد مربوطه شروع بکار کند.

214-6 new network policy

2- در صفحه نخست ویزارد باید یک نام بامسما و معنی دار برای پالیسی وارد کرده و در ضمن نوع Access Server را نیز مشخص کنیم ( گزینه های ممکن عبارت است از unspecified و Remote Desktop Gateway و Remote Access Server شامل Dial-in و VPN ) .  اگر Access Server ( یا NAS یا Radius Client ) ما یک Wireless Access Point یا یک سوئیچ 802.1x باشد باید گزینه Unspecified را انتخاب کنیم.

214-7 policy name and net type

ما در این سناریو برای پالیسی نام out-of-office hours و برای نوع Access Server نیز گزینه Remote Access Server را انتخاب کرده و روی دکمه next کلیک می کنیم. در این صفحه حتی میتوان انتخابها را بر اساس vendor ( بعنوان مثال Access Server های ساخته شده توسط شرکت HP ) نیز تعیین کرد.

3- در صفحه Specify Conditions باید شرط ( یا شرطها) را تعریف کنیم. حداقل یک شرط باید حتما تعریف شود. برای تعریف هر شرط باید روی دکمه add کلیک کنیم. پنجره ای مانند ذیل ظاهر میشود که در آن میتوان شرط را ایجاد کرد.

214-8 add condition

همانطور که می بینید پنج دسته condition داریم که فقط نام آنها را ذکر می کنیم و روی هر یک مطالعه کنید زیرا توضیح دسته ها و ویژگی هایشان بسیار طولانی است.

  1. Groups: در این شرط کاربران و کامپیوترها را عضو گروههای مختلف کرده و بر این اساس به آنها سطح دسترسی می دهیم. سه حالت مختلف وجود دارد. اول windows group condition است که در این حالت هم کامپیوتر و هم کاربر باید عضو گروه خاصی باشند. دوم machine groups condition است که باید کامپیوتر عضو گروه خاصی باشد و سوم user groups condition است که کاربر باید عضو گروه خاصی باشد.
  2. Day and time restrictions: تعیین روز و ساعت مجاز برای اتصال کاربران به شبکه
  3. Connection properties : این شرط مشخص میکند که کامپیوتر access client باید دارای نسخه بخصوصی از IP باشد یا اینکه یک رو بخصوصی از روش های احراز هویت را پشتیبانی کند تا این پالیسی رویش اعمال گردد. در غیر این صورت، درخواست Reject شود. یا اینکه یک متد خاص از روش احراز هویت EAP را باید ساپورت کند یا از فریم بندی خاصی استفاده کند یا از سرویس خاصی بهره گیرد یا از تونل مشخصی مثلا L2TP استفاده شود و…. این دسته شامل موارد ذیل است: Access Client IPv4 Address- Access Client IPv6 address- Authentication type- Allowed EAP Type-Framed Protocol- Service Type-Tunnel Type
  4. Radius Client properties : قوانینی از قبیل اینکه درخواست ارتباط حتما از طریق یک NAS با فلان نسخه IP باید به دست Radius server رسیده باشد یا NAS فوق از فلان vendor باشد و…. موارد ذیل در این دسته وجود دارند: Calling Station ID-Client Friendly Name-Client IPv4 Address- Client IPv6 Address- Client Vendor-MS RAS Vendor
  5. Gateway : بر مبنای Gateway تصمیم گیری شود و شامل گزینه های Called Station ID-NAS Identifier-NAS IPv4 Address- NAS IPv6 Address- NAS Port Type

ما در شرط نخست ابتدا گزینه user Groups را انتخاب و روی دکمه add کلیک کرده و گروه Domain Users را انتخاب میکنیم. سپس مجددا در صفحه Specify Conditions روی دکمه add کلیک می کنیم برای تعریف شرط دوم که در آن باید ساعات اداری را مشخص نماییم. حال ابتدا گزینه Day and Time Restrictions را انتخاب و سپس روی دکمه add کلیک میکنیم. پنجره معروف تعیین ساعات و روزهای اداری ظاهر میشود. ساعات مورد نظر را تعیین می نماییم.  سپس روی دکمه OK کلیک کرده و به صفحه Specify Conditions باز میگردیم. این صفحه اکنون باید شبیه شکل ذیل باشد:

214-9 Specify conditions

حال که شرطها را تعریف کرده ایم روی دکمه next کلیک میکنیم.

4- در صفحه Specify Access Permissions باید سطح دسترسی را مشخص کنیم که گزینه های ممکن عبارتند از : Granted ( مجاز)، Denied ( غیر مجاز) و یا دسترسی طبق آن چیزی که در تب Dial-in اکانتهای کاربری فوق تعیین شده است. ما در اینجا گزینه Access Granted را انتخاب کرده و روی دکمه next کلیک میکنیم.

5- صفحه Configure Authentication Methods ظاهر میشود.  باید نوع احراز هویت و اینکه توسط چه پروتکل هایی صورت پذیرد را پیکربندی کنیم. بصورت پیشفرض چکباکس های MS-CHAP و MS-CHAPv2 تیک خورده اند. میتوان از EAP-Types که قوی تر هستند نیز استفاده کرد. برای این کار باید روی دکمه add کلیک کرده و یکی از انواع EAP را انتخاب کنیم. بهرحال پس از پیکربندی روی دکمه next کلیک میکنیم.

6- در صفحه Configure Constraints باید یک یا چند خصوصیت اتصال Remote را تعیین نماییم.

214-10 configure Constratints page

در بخش idle timeout : وقتی یک ارتباط قطع میشود، بیشترین زمانی که radius client میتواند بیکار باشد را بر حسب دقیقه مشخص می کنیم.

در بخش session timeout : بیشترین مدت زمانی که یک کاربر میتواند به شبکه متصل باشد.

دربخش Called station ID باید شماره تلفن یک Dial-up server را وارد کرد تا کاربران فقط از طریق این شماره و این سرور بتوانند به شبکه متصل شوند.

در بخش day and time ساعات و روزهایی که کاربران میتوانند به شبکه متصل شوند را مشخص می کنیم.

در بخش NAS Port type باید نوع زیرساخت اتصال را مشخص کنیم. شکل زیر:         

214-11 NAS Port Type

اکثر این پیکربندی ها را در صفحه Specify Conditions نیز میتوان انجام داد. به یاد داشته باشید که الزامی به پیکربندی Constraint ها وجود ندارد و چنانچه هیچ constraint مفیدی نمی بینید کافیست روی دکمه next کلیک کنید. ما در این سناریو به شرطهایی که تعیین کرده بودیم اکتفا کرده و روی دکمه next کلیک میکنیم.

5- در صفحه Configure Settings باید خصوصیات اتصال متقاضی را تعریف کرد. تنظیمات این صفحه بسیار گسترده و دقیق و ریز میباشد و الزامی هم به پیکربندی وجود ندارد.  این تنظیمات فقط زمانی مورد بررسی قرار خواهند گرفت که خصوصیات اتصال متقاضی با تمام Condition ها و Constraint ها همخوانی داشته و نوع دسترسی نیز Grant باشد. یکی از تنظیمات IP Filter است که روی ترافیک اتصال متقاضی اعمال خواهد شد و بعنوان مثال فقط ترافیک از نوع http را قبول خواهد کرد. بهرحال روی دکمه next کلیک میکنیم.

6- صفحه پایانی یعنی Completing New Network Policy ظاهر میشود که در آن روی دکمه Finish کلیک میکنیم.

اکنون اگر در کنسول NPS روی Network Policies کلیک کنیم با تصویر ذیل روبرو خواهیم شد:

214-12 Network Policies summary

ملاحظه می کنید که سه پالیسی وجود دارد. نخستین آنها همان پالیسی ای است که با نام out-of-office hours ایجاد کردیم. این پالیسی اکنون در وضعیت فعال است و Processing Order آن نیز یک است یعنی در هنگام ورود یک اتصال متقاضی ابتدا این پالیسی برای اتصال فوق بررسی و اعمال میگردد. ستون هایی نیز برای مشاهده نوع دسترسی و نوع اتصالی که توسط پالیسی بررسی خواهد شد وجود دارد.

به محض نصب NPS Role روی یک کامپیوتر دو پالیسی پیشفرض ( که در شکل بالا قابل مشاهده اند) ایجاد میشوند که دسترسی هر دو نوع بصورت Deny است:

  • Connection to Microsoft Routing and Remote Access Server
  • Connections to other access servers

معرفی پالیسی های درخواست اتصال

در ابتدای این درس گفتیم که علاوه بر network Policy ها نوع دیگری از پالیسی ها وجود دارند به نام Connection Request Policy یا پالیسی درخواست اتصال. از این نوع پالیسی ها زمانی استفاده میشود که چندین نمونه ( Instance ) از NPS Role در شبکه وجود داشته باشد. این نوع پالیسی ها مشخص میکنند که کدام Radius Server اقدام به اجرای Network Policy ها برای اتصال دریافتی روی یک Radius Server دیگر کند. چنانچه یک پالیسی درخواست اتصال یک Remote Server را برای پردازش توسط Network Policy ها معرفی کند آنگاه Local Server تبدیل به یک Radius Proxy Server خواهد شد و آن Remote Server ( معرفی شده توسط پالیسی درخواست اتصال) بعنوان Radius Server اصلی ایفای نقش خواهد کرد.

در واقع به زبان ساده میتوان گفت که پالیسی درخواست اتصال میتواند بر اساس فاکتورهایی همه/ تعدادی/ هیچکدام از اتصال های متقاضی را به یک Radius Server دیگر فوروارد کند. این فاکتورها عبارتند از:

  • محدودیت های زمانی
  • نوع اتصال متقاضی
  • IP Address مربوط به Radius Client

میتوان چندین پالیسی درخواست اتصال پیکربندی کرد. به محض نصب NPS Role یک پالیسی درخواست اتصال پیشفرض با Processing Order بسیار پایین ایجاد میشود.  میتوان این پالیسی را غیرفعال یا حتی حذف کرد. پالیسی فوق هیچکدام از اتصال ها را فوروارد نکرده و همه را بصورت locally پردازش خواهد کرد. این وضعیت مناسب زمانی است که فقط یک کامپیوتر در شبکه دارای NPS Role باشد یا اینکه پیاده سازی NPS در سطح محدودی انجام شده باشد.

پیکربندی پالیسی درخواست اتصال

1- در کنسول NPS در ذیل Policies روی Connection Request Policy راست کلیک کرده و گزینه New را انتخاب میکنیم. یک ویزارد شروع بکار میکند.

2- صفحه نخست ویزارد دقیقا مانند صفحه نخست ویزارد تعریف Network Policy بوده و باید در آن یک نام و نیز نوع Access Server را تعیین کنیم.

3- سپس صفحه Specify Conditions ظاهر میشود که دقیقا ساختاری مشابه همین صفحه در ایجاد Network Policy دارد ولی گزینه های محدودتری برای تعریف شرط دارد. شرط مورد نظر را تعیین کرده و روی دکمه next کلیک میکنیم.

4- صفحه Specify Connection Request Forwarding ظاهر میشود:

214-13 Specify Connection Request Policy page

در این صفحه در سمت چپ روی Authentication کلیک کرده و باید یکی از سه دکمه رادیویی پنل راست را انتخاب کنیم:

  • Authenticate requests on this server : احراز هویت توسط همین کامپیوتر انجام شود.
  • Forward requests to the forwarding remote Radius Server group for Authentication : عملیات احراز هویت را به یک Radius Server Group دیگر فوروارد میکند ( ارجاع میدهد). توسط دکمه new باید Remote Radius Server Group را تعیین کرد.
  • Accept Users without validating credentials : عملیات احراز هویت را بی خیال شده و درخواستها را بدون انجام عملیات احراز هویت می پذیرد.

پس از انجام تنظیم مورد نظر باید در سمت چپ روی Accounting کلیک کرد تا تنظیمات مورد نیاز حسابرسی نیز انجام شود. برای Accounting تنها یک چکباکس به نام Forward Accounting Requests to this remote Radius Server Group وجود دارد که عملیات حسابرسی را فوروارد میکند. میتوان این چکباکس را تیک نزد تا کامپیوتر locally ( همین کامپیوتری که در حال پیکربندی روی آن هستیم) عهده دار عملیات حسابرسی نیز باشد. بهرحال پس از پیکربندی روی دکمه next کلیک میکنیم.

5- صفحه Specify Authentication Methods با همان ساختار و گزینه هایی که در Network Policy وجود دارد ظاهر میگردد اما با پیکربندی پیشفرض که میتوان این پیکربندی را قبول کرد و یا اینکه با تیک زدن چکباکس Override Network Policy Authentication Settings اقدام به پیکربندی جدید و اختصاصی کرد. بهرحال روی دکمه next کلیک میکنیم.

6- صفحه Configure Settings ظاهر میشود. اگر تنظیمی لازم است آنرا انجام داده و روی دکمه next کلیک میکنیم.

7- صفحه پایانی ویزارد به همراه خلاصه ای از تنظیمات و پیکربندی ظاهر میشود. اگر مشکلی وجود نداشت روی دکمه finish کلیک میکنیم تا پالیسی درخواست اتصال ایجاد شود. به همین صورت میتوان پالیسی های درخواست اتصال دیگری را نیز ایجاد کرد.

 

اجرای اتصال

حال کاربر قصد دارد که از روی access client خود به شبکه وصل شود. باید دقت کنیم که در کانکشن موجود در سمت Access client ، تنظیمات با آنچه که در radius server تعیین کرده ایم، همخوانی داشته باشد. یعنی بعنوان مثال در پنجره properties کانکشن VPN کاربر ( شکل زیر) از نظر تنظیمات با تنظیمات radius server همخوانی وجود داشته باشد وگرنه radius server مانع برقراری ارتباط میشود.

214-14 Remote Client Properties

مشاهده همه افزودن یک یادداشت
شما
دیدگاه خود را وارد کنید
رفتن به نوار ابزار