شنبه, ۲۳ تیر, ۱۴۰۳ / 13 July, 2024
مجله ویستا

آشنایی با AAA Server


آشنایی با AAA Server

افزایش تعداد سرورهای شبكه در پی راه اندازی سرویس های مختلف, Data Base های مختلف كاربران و سیاست های متنوع, دسترسی افراد را به منابع مختلف ایجاد خواهد كرد

افزایش تعداد سرورهای شبكه در پی راه اندازی سرویس های مختلف، Data Base های مختلف كاربران و سیاست های متنوع، دسترسی افراد را به منابع مختلف ایجاد خواهد كرد بطوریكه پس از مدتی جهت اضافه كردن كاربر جدید به سیستم، نیاز به تعریف آن در چندین سرور وجود خواهد داشت. این پراكندگی و لزوم اعمال سیاست های متمركز ،مدیران شبكه را ناچار به اتخاذ تدابیری مؤثرتر می كند لذا تعریف و پیاده سازی AAA Server یكی از این تدبیرهاست كه بر دسترسی كاربران به منابع شبكه ، مدیریت مستقیم و متمركز نظارت خواهد داشت.

AAA Server یك برنامه نرم افزاری سرور است كه امكان دسترسی كاربران را با منابع كامپیوتری شبكه برقرار می كند. این برنامه برای شبكه های Enterprise سرویس های Authentication ، Authorization و Accounting را فراهم می آورد. در واقع AAA Server با دسترسی شبكه ، سرورهای Gateway ، Database ها و جدول های اطلاعاتی كاربران در تعامل است . پروتكل استانداردی كه اجازه ارتباط دستگاه ها و نرم افزارهای مختلف را با AAA Server می دهد RADIUS می باشد ( Remote Authentication Dial-In User Service (.

RADIUS یك پروتكل ارتباطی با ساختار Client-Server است همچنین آن را می توان سرویسی نرم افزاری نامید كه ارتباط سرورهای دسترسی از راه دور را با سرور مركزی جهت authentication كاربران تلفنی و authorize دسترسی آن ها به سیستم یا سرویسی خاص فراهم می آورد. RADIUS امكان گرد آوری اطلاعات كاربران شبكه را با Database مركزی فراهم می آورد و این Database بین سرورهای دسترسی راه دور به اشتراك گذارده شده است و این خاصیت ، امنیت بهتر و سیاست گذاری دامین را در پی خواهد داشت. امروزه RADIUS بطور گسترده در مدیریت دسترسی به سرویس های شبكه كاربرد یافته است لذا استانداردی را در جهت تبادل اطلاعات بین سرورهای دسترسی شبكه و AAA Server فراهم آورده است.

Authentication ، Authorization و Accounting اصطلاحاتی در یك چهارچوب هستند كه در كنترل هوشمند دسترسی كاربران نقش ایفا می كنند و پیشبرد سیاست گذاری ، اصلاح كاربرد و تهیه اطلاعات مورد نیاز جهت راه اندازی سرویس ها از فایده های دیگر آن است. این پردازش های تركیبی برای مدیریت شبكه و امنیت آن كاملا ضروری هستند.

● RADIUS یا TACACS+

این دو از پروتكل های رایج احراز هویت هستند كه بطور عمده در شبكه های كامپیوتری مورد استفاده قرار می گیرند. پردازش های توضیح داده شده در این نوشتار مبتنی بر RADIUSخواهد بود اما در جهت آشنایی خوانندگان، گریزی بر TACACS+ و مقایسه آن با RADIUS خواهم زد.

TACACS بیشتر در تنظیمات روترهای شبكه با مكانیزم های متنوع Authentication نظیر DES(Data Encryption STANDARD) و OTP (One Time password) مورد استفاده قرار می گیرد همچنین قادر است تا ۱۶ مرحله دسترسی را پشتیبانی كند نیز می تواند اجازه دسترسی به سرویس های مختلف شبكه را نظیر PPP ، Shell ، Standard Login و . . .فراهم آورد. AAA Server ای كه از TACACS+ جهت Authentication استفاده می كند بیشتر به عنوان یك Proxy Server برای روترهای Cisco و NAS ها عمل می كند. TACACS+ از پاكت های TCP كه Connection oriented می باشد استفاده می كند.

RADIUS توسط شركت Livingston به عنوان استاندارد Authentication ایجاد شد و بیشتر جهت ISP های بزرگ كاربرد دارد. در قیاس با TACACS+ ، RADIUS CPU و RAM كمتری را اشغال می كند. RADIUS از پاكت های اطلاعاتی UDP كه Connection less می باشد استفاده می كند.

● RADIUS

▪ از UDP استفاده می كند

▪ رمزنگاری را فقط هنگامی درخواست دسترسی انجام می دهد

▪ Authentication و Authorization را با هم انجام می دهد

▪ استانداردی صنعتی است كه توسط شركت livingston ایجاد شده است

▪ برخی از پروتكل ها نظیر ARA ، NASI و X.۲۵ PAD را پشتیبانی نمی كند.

▪ نحوه اجرای دستورات را روی روترها سنجش نمی كند

● TACACS+

▪ از TCP استفاده می كند

▪ رمزنگاری را در درون Packet انجام می دهد و امنیت بالاتری دارد

▪ عملیات Authentication ، Authorizationو Accounting را بطور مجزا انجام می دهد

▪ از سرویس های ایجاد شده Cisco است

▪ كلیه پروتكل ها را پشتیبانی می كند

▪ دستورات روترها را از دو طریق كنترل می كند Per User و Per group

● عملیات پردازش AAA Server :

به عنوان اولین پردازش ، Authentication راهی را جهت تشخیص هویت كاربران فراهم می آورد كه بطور معمول اینكار با وارد كردن كلمه كاربری و كلمه عبور صحیح قبل از برقراری دسترسی خاص صورت می گیرد.

AAA Server مشخصات كاربر را با Data Base مركزی خود مقایسه كرده و درصورتیكه تطبیق داشته باشد دسترسی داده می شود و درغیر اینصورت دسترسی denied خواهد شد. در شبكه های خصوصی یا عمومی نظیر اینترنت Authentication با استفاده ازpassword logon صورت می گیرد. دانستن كلمه عبور درواقع دسترسی كاربر را به منابع مورد نیازش گارانتی می كند. از نقص های این سیستم می توان به دزدیده شدن كلمه عبور ، اتفاقی لو رفتن و فراموش كردن آن اشاره كرد به همین دلیل كسب و كار اینترنتی و معاملات بانكی و سایر فعالیت های مهم روی اینترنت و شبكه نیاز به پردازش هایی دیگر (به غیر از Authentication) خواهند داشت. استفاده از Digital Certification كه توسط Certificate Authority یا CA مورد سنجش قرار می گیرد بخشی از ساختار كلید عمومی است كه امروزه تبدیل به استاندارد Authentication روی اینترنت شده است.

پیرو Authentication صورت گرفته شده Authorization جهت انجام وظیفه های خاص پس از Login به سیستم صورت می گیرد. به عنوان مثال كاربر تصمیم به اجرای دستوراتی روی سیستم دارد. پردازش Authorization مشخص می كند كه آیا كاربر اجازه اجرای آن دستورات خاص را دارد یا خیر. به بیان ساده تر Authorization پردازشی است برای كاربر كه سیاست هایی خاص را در رابطه با نوع فعالیت ، كیفیت ، منابع و سرویس ها برقرار می كند. معمولا Authorization همراه با Authentication صورت می گیرد. درواقع

Authorization پردازشی است كه به كاربر اجازه انجام دادن كاری و یا داشتن چیزی را می دهد. در سیستم های كامپیوتری چند كاربره ، سرپرست سیستم برای سیستم مشخص می كند كه چه كاربرانی اجازه دسترسی به سیستم را دارند و حدود دسترسی آن ها چقدر است. به عنوان مثال به چه دایركتوری دسترسی دارند، زمان دسترسی او چقدر است و یا حجم رسانه قابل ذخیره سازی او چه مقدار است و ...

وقتی كاربر به سیستم عامل یا برنامه كاربردی Login می كند، سیستم یا نرم افزار باید مشخص كند كه چه منابعی باید به آن كاربر طی یك Session تخصیص داده شود.

قسمت آخر چهارچوب AAA ، Accounting می باشد كه میزان استفاده كاربر را در طول دسترسی مشخص می كند. Accounting مشخص می كند كه كاربر مجوز استفاده از چه مدت و به چه مقدار اطلاعات در طول برقراری یك Session را دارد.

AAA Server درخواست ایستگاه كاری را مبنی بر استفاده از منابع شبكه دریافت می كند و سعی در Authenticate كاربر می نماید سپس حدود دسترسی كاربر را به ایستگاه كاری ارسال می نماید. AAA Server ممكن است بصورت محلی Authentication را انجام دهد و یا اینكه مانند یك Proxy عمل كرده و درخواست را به AAA Server دیگری انتقال دهد. پس از Forward كردن درخواست این سرور انتقال اطلاعات را بین سرور دسترسی شبكه و AAA Server ادامه می دهد. در انتها میزان دسترسی كاربر با توجه به تنظیمات قبلی لحاظ می شود.

● مفهوم دسترسی

دسترسی یا Access یعنی دستیابی ساده به آنچه كه مورد نیازمان است. Data Access یعنی توانایی دستیابی به اطلاعات ویژه مورد نیازمان (كه معمولا با اجازه دادن سیستم صورت می گیرد). دسترسی Web یعنی اینكه بتوانیم به شبكه جهانی وب از طریق یك ایجاد كننده دسترسی به اینترنت یا ISP وصل شده و از آن استفاده كنیم. دسترسی به اطلاعات معمولا در دو قالب فقط خواندنی و خواندنی/نوشتنی انجام می پذیرد.

● روش های Authentication :

درزیر به برخی از روش های مرسوم Authentication اشاره شده است :

۱) Password Authentication Protocol (PAP)

روش Authentication ساده ای برای برقراری یك ارتباط است. كلمه عبور بصورت Clear Tex بین كاربر و ایستگاه كاری مبادله می شود و هنگامیكه برای Authentication با RADIUS استفاده شود پیغام بین سرور وایستگاه كاری جهت برقراری یك ارتباط PPP مبادله می شود.

۲) Challenge Handshake Authentication Protocol (CHAP)

روش قوی تری است كه جهت Authentication بین ایستگاه كاری و سرور استفاده می شود. در این روش قبل از ارسال درخواست دسترسی ، اطلاعات اولیه كاربر میان ایستگاه كاری و سرور NAS یا Network Access Server رد و بدل شده و بعد از تصدیق هویت ، درخواست به AAA Server منتقل می شود.

۳) Microsoft Challenge Handshake Authentication Protocol (MS-CHAP)

پروتكلی است كه شركت میكروسافت با توجه به روش CHAP برای ایجاد ارتباط امن ایستگاه های كاری دور خود ایجاد كرده است. درحالت كلی MSCHAP مشابه CHAPاست. تفاوت این پروتكل را می توان در دو مورد خلاصه كرد. این پروتكل برپایه Encryption و الگوریتم hash كه توسط شبكه های ویندوزی ایجاد می شود عمل می نماید و همچنین پاسخ اولیه كه توسط MS-CHAP برای Authentication ایجاد می شود كاملا منطبق بر سیستم عامل ویندوز است.

۴) Extensible Authentication Protocol (EAP)

روش بسیار امن برای Authentication با انعطاف پذیری بیشتر است و قادر است با الگوریتم های مختلفی نظیر MD۵ كار كند. همچنین EAP می تواند در قالب پروتكل های دیگر، Encapsulate شود لذا كاربرد آن وسیعتر از CHAP و PAP خواهد شد.

● نتیجه سخن :

استفاده از راهكارهای جدید مدیریت شبكه و آسان نمودن پردازش های تكراری از اهداف استفاده از AAA Server است كه هدف از آن مدیریت دسترسی متمركز افراد به منابع شبكه است لذا در این راستا از سرویس های RADIUS و TACACS+ استفاده می شود.

Authentication ، Authorization و Accounting پردازش هایی هستند كه جهت احراز هویت كاربر شبكه و میزان و وضعیت دسترسی او به منابع مختلف انجام می شوند.

نویسنده : كیانوش مرادیان