دریا نیوز







RADIUS و TACACS براي احراز هويت كاربران

، 21:43   /   کد خبر: 1000   /   تعداد بازدید: 709


ترجمه:آرش مدني علمداري
ماهنامه شبکه - اسفند ۱۳۸۴ شماره 63

اشاره :

شبكه‌ها نه تنها از لحاظ وسعت و گستردگي توسعه يافته‌اند، از حيث پيچيدگي نيز گسترش داشته‌اند. در طي سال‌ها، سرويس‌هاي جديدي براي رفع نياز به برنامه‌هاي آسان و قابل استفاده براي همه، ايجاد و اجرا شده‌اند. اين نياز به كسب رضايت مشتريان براي تمام ابداعات به‌طور قابل توجهي افزايش يافته است. يكي از اين ابداعات قابل توجه براي كاركنان، قابليت انجام دادن كار از خانه است. روش‌هاي ارتباط از راه‌دور، به نفع كاركنان تغييراتي پيدا كرده‌ و در بهبود روحيه آنان تأثيرات فراواني داشته است. مشكل آنجاست كه اين كاركنان بايد به‌طور همزمان قابليت ارتباط از راه‌دور و امنيت را دارا باشند. خوشبختانه، تمام اين مشكلا‌ت به وسيله راه‌حل‌هاي مختلفي كه به خوبي عمل مي‌كنند، مرتفع شده است.


RADIUS؛ فراتر از محاسبات جبري
يكي از راه‌حل‌هايي كه براي تشخيص هويت كاربران راه‌دور ايجاد شده، RADIUS است. سرويس احراز هويت كاربر از راه‌دور يا همان RADIUS، سرويسي است كه كاربر هنگام ارتباط از راه‌دور، مثلا‌ً خانه، احرازهويت مي‌شود. برمبناي  مدل لا‌يه‌اي OSI ،RADIUS در لا‌يه برنامه‌هاي كاربردي يا همان Application جاي مي‌گيرد.

اين پروتكل مدل كلا‌ينت /سرور را نيز رعايت‌مي‌كند. يك كلا‌ينت براي استفاده از سرويس‌ها به سرور متصل مي‌شود و اعتبارات لا‌زم براي استفاده از آن را فراهم مي‌كند.

RADIUS از پروتكل انتقالي UDP به منظور ايجاد معبري براي داده‌هاي خود استفاده مي‌كند. RADIUS نيز همانند بسياري از پروتكل‌هاي معروف، پورت‌هاي معروفي براي برقراري ارتباط دارد. پورت‌هاي 1812 و 1813 براي اين منظور اختصاص يافته‌اند. اين پورت‌ها با قوانين RFC سازگاري دارند. يعني آن را به گونه‌اي طراحي كرده‌اند كه از پورت‌هاي 1812و 1813 براي ارتباط خود استفاده كنند. انواع توجهاتي كه هنگام طراحي در نظر گرفته مي‌شوند، به‌طور يكپارچه RFC ناميده مي‌شوند و پس از گذشت زماني، اينRFC ها پذيرفته و پس از آن سازگار با RFC خوانده مي‌شوند.

جزئيات بيشتر
هميشه بهتر است براي كسب جزئيات به منابع مطمئن و موثق مراجعه كنيد. در اين مورد بهتر است به منبع
 RFC 2138  كه در مورد RADIUS و جزئيات آن است، مراجعه كنيد. اگر مانند بسياري از مردم تمايلي به خواندن RFCها و اطلا‌عات جامع آن‌ها نداريد، در اينجا خلا‌صه‌اي از آن شرح داده مي‌شود. يكي از مهم‌ترين نكاتي كه در مورد RADIUS بايد بدانيد، آن است كه اين پروتكل از روش‌هاي احرازهويت گوناگوني پشتيباني مي‌كند. از اين روش‌ها مي‌توان PPP ،PAP و CHAP را نام برد. اگر با محصولا‌ت سيسكو آشنايي داشته باشيد يا پشتيباني از مسيرياب‌ها و سوييچ‌هاي آن به عهده شما باشد، بي‌شك با روش‌هاي مختلفي كه RADIUS ارائه مي‌كند، آشنايي داريد.

مثلا‌ً هنگامي كه يك كاربر، تركيب نام كاربري و رمز عبور خود را وارد مي‌كند و سرور RADIUS آن را دريافت مي‌نمايد، سرور RADIUS اعتباراتي را كه كاربر ارائه داده است با اطلا‌عات موجود در پايگاه داده خود مقايسه مي‌كند و براساس آن، اجازه يا عدم اجازه استفاده از منابع را صادر مي‌نمايد. علا‌وه بر تركيب نام كاربري و رمز عبور، اعتبار پورت ارتباطي را نيز مشخص مي‌كند.

مي‌توان گفت كه سرور RADIUS به اين صورت كار مي‌كند:
Access-Request: در اين مرحله سرور يك challenge مي‌فرستد و كاربر بايد به آن پاسخ دهد.
براساس كنترل دسترسي ذكر شده بالا‌، اعتبار لا‌زم به كار داده مي‌شود و يا اجازه دسترسي به او داده نمي‌شود.
همان‌طور كه گفته شد، RADIUS از UDP به عنوان پروتكل انتقال خود استفاده مي‌كند. اين امكان هنگام طراحي پروتكل براي آن در نظر گرفته شده است. UDP فوايد خاص خود را دارد. اصلي‌ترين اين فوايد پيچيدگي كمتر و سرعت بالا‌است. به اين دليل، UDP نسبت به TCP به عنوان پروتكل مناسب‌تر براي RADIUS انتخاب شده است.

در آخر، بايد اين مطلب را اضافه ‌كنيم كه RADIUS نيز مانند ساير پروتكل‌هاي لا‌يه Application، كدهايي دارد كه درون عملكرد هسته آن، نوشته شده است. اين كدها مربوط به دسترسي، حسابرسي و وضعيت RADIUS با توجه به سرور و كلا‌ينت بودن آن است. براي كسب اطلا‌عات بيشتر مطالعه RFC 2138 پيشنهاد مي‌شود.

+TACACS و TACACS 
كنترل‌كننده دسترسي ترمينال و سيستم كنترل دسترسي TACACS، مشابه RADIUS است و براي كنترل دسترسي در شبكه به كار مي‌رود. فرق اساسي TACACS و RADIUS  آن است كه TACACS برخلا‌ف RADIUS ازTCP به عنوان پروتكل انتقال استفاده مي‌كند. همچنين سه نسخه از TACACS موجود است كه +TACACS آخرين نسخه آن است.
 
قابل توجه است كه +TACACS با ساير نسخه‌هاي قديمي‌تر TACACS سازگار نيست. اين پروتكل يك پروتكل لا‌يهApplication است و مدل كلا‌ينت/ سرور را رعايت مي‌كند. TACACS+ يك پروتكل معروف است و پورت معروفي نيز براي آن در نظر گرفته شده است؛ پورت 49 از پروتكل انتقال TCP.
 
تفاوت قابل توجه ديگر آن است كه RADIUS فقط اسم كاربر را در پكت ارسالي به سرور رمزگذاري مي‌كند.
 اما +TACACS تمام پكت ارسالي را رمزگذاري مي‌كند. ولي هدر TACACS+ را دست نخورده باقي‌گذارد.
+TACACS ضعف‌هايي نيز دارد كه موجب مي‌شود هكرها به راحتي آن را هدف قرار دهند. اين پروتكل نسبت به حمله‌اي موسوم به حمله روز تولد (Birthday attack) آسيب‌پذير است.

نتيجه
در اين نوشتار كوتاه دو ابزار مهم احراز هويت معرفي شد بايد گفت كه اين‌ها تنها ابزار احراز هويت نيستند. هر شبكه تغييرات و معماري خاصي دارد. با توجه به اين نكته، بايد تمام جزئيات شبكه خود را براي استفاده از ابزار احراز هويت مناسب، در نظر داشته باشيد. برخي از اين روش‌ها را مي‌توان به جاي ديگري مورداستفاده قرار داد. براي مثال +TACACS و Kerberos را مي‌توان به جاي يكديگر استفاده كرد. از آن‌جايي كه هرگاه از لا‌يه ديگري در شبكه خود استفاده مي‌نماييد و برنامه‌هاي مختلفي را اجرا مي‌كنيد، روزنه‌هاي ديگري را براي حمله به شبكه خود گشوده‌ايد. توصيه مي‌شود براي احرازهويت در شبكه خود از فناوري مقبول و عمومي استفاده كنيد. به علا‌وه، بهتر است قبل از خريد هر وسيله‌اي، از نحوه يكپارچه‌سازي آن محصول با شبكه خود آگاه شويد. نوشتار حاضر توضيح كوتاهي در مورد برخي از اين روش‌ها ارائه داد. اما مطالب دقيق‌تر و بيشتري در اينترنت موجود است. پس مي‌توانيد براي به دست آوردن بهترين نتيجه در اين زمينه به تحقيق و كاوش بپردازيد.