IBNS چیست و چگونه کار میکند؟همانطور که گفته شد، کنترل نودهای شبکههای بزرگ بسیار مشکل است و اگر شبکه بیسیم باشد، مشکلتر هم خواهد شد. حتما این مورد را مشاهده کردهاید که یک کاربر، کابلی را که به کامپیوتر متصل است، از آن جدا کند و نوتبوک شخصی خود را با همان کابل به شبکه متصل سازد و علیرغم اینکه آن نوتبوک عضو شبکه نیست، با این وجود از طریق استفاده از نام کاربری و رمز عبور شبکه، اطلاعاتی را که به آن دسترسی دارد از شبکه روی نوتبوک کپی کند. حال اگر شبکه بیسیم داشته باشیم، این کار سادهتر انجام میشود و افرادی که انگیزه بیشتری برای دسترسی به شبکه دارند، به راحتی میتوانند به آن نفوذ کنند. از طرفی در اینگونه شبکهها تنوع کاربران هم وجود دارد و ما موظفیم از طرق ممکن سرویسهای مورد نظر آنها را فعال کنیم. هر سرویس جدید نیز آسیبپذیریهای خاص خود را دارد و سرویسهای خاص نیز مشکلات امنیتی فراوانی ایجاد میکنند. تهدیدات هم روز به روز تغییر میکنند و افزایش مییابند. حالا با توجه به این موارد، به نظر شما چه باید کرد؟ به طور کلی نحوه کارکرد IBNS در سه قسمت اصلی خلاصه میشود: برای سادهسازی و درک روش کار IBNS مراحل کار را با سوالات زیر شبیهسازی کردهایم: با استفاده از IBNS میتوان اطلاعات اتصالات را ثبت کرد. به عنوان مثال کدام کاربر یا کامپیوتر در چه ساعتی و با چه اسم یا آیپیآدرسی به شبکه متصل شده است و در کدام VLAN قرار گرفته است. بنابراین به راحتی میتوان قوانین بازرسی در شبکه را پیادهسازی و دستگاهها را مانیتور کرد. درک پروتکل IEEE 802.1xپروتکل IEEE 802.1X پروتکل استانداردی است که دسترسی به سرویسهای شبکه را با احراز هویت به صورت کلاینت ـ سرور کنترل میکند. سروری که مسئولیت احراز هویت را بر عهده دارد، دستگاهی را که به پورت سوئیچ متصل میشود، قبل از اجازه اتصال به شبکه کنترل میکند و بر اساس نوع مجوزهای کاربر، دسترسی آن را برقرار مینماید. با توجه به اینکه قبل از تکمیل مراحل اعتبارسنجی، هنوز اتصال کاربر با شبکه برقرار نشده است، تا آن زمان فقط ترافیک خاصی از روی شبکه عبور خواهد کرد که به اختصار(EAPOL (Extensible Authentication Protocol Over LAN نامیده میشود و پس از اینکه شناسایی کامل شد، اگر دسترسی وجود داشته باشد ترافیک معمولی از آن پورت عبور خواهد کرد و در غیر این صورت اتصال قطع شده و هیچ ترافیکی عبور نخواهد کرد. با این راهکار میتوانیم خط مشی سازمان برای دسترسی کاربران به شبکه را بر اساس انواع کاربران، سرویس گیرندگان یا منابع شبکه پیادهسازی کنیم. در نتیجه به عنوان مثال بر اساس سیاست سازمان برای کاربران مهمان، ایشان پس از ورود به شبکه در VLAN خاصی قرار میگیرند که دسترسیهای خاص خود را دارند و به همین صورت سیاستهای امنیتی و سرویسدهی پیادهسازی میشود. قسمت اول: کلاینت یا Supplicant دستگاهی است که درخواست اتصال به شبکه را برای سوئیچ (رابط میان درخواست کننده و سرور احراز هویت) ارسال میکند و همچنین پاسخ درخواستهای سوئیچ را برای احراز هویت میدهد. سیستم عامل کلاینت باید پروتکل IEEE 802.1X را پشتیبانی کند. به عنوان مثال سیستم عامل ویندوز XP با سرویسپک یک و بالاتر این پروتکل را پشتیبانی میکند. قسمت دوم: Authenticator یا Network Access Devicesاین دستگاه میتواند اکسسپوینت شبکههای بیسیم و یا سوئیچ در شبکههای کابلی باشد و البته RADIUS Client نیز نامیده میشود. این قسمت مانند پروکسی عمل کرده و دسترسی فیزیکی به شبکه را بسته به پاسخ سرور اعتبارسنجی تنظیم میکند و اطلاعات لازم برای احراز هویت را از کلاینت درخواست میکند و اطلاعاتی را که از سرور اعتبارسنجی دریافت میشود، تائید میکند و پاسخ سرور را به کلاینت Relay (بازپخش) میکند. در واقع وظیفه اصلی این قسمت Encapsulate (تلفیق) و Decapsulate کردن فریمهای EAP است. وقتی که سوئیچ فریمهای EAPOL را دریافت میکند، سرستون آن را جدا ساخته و بقیه فریم را به فرمت RADIUS مجددا تلفیق میکند که در این حالتها فریم EAP تغییری نخواهد کرد. قسمت سوم: Authentication Server یا AAA RADIUS Server دستگاهی که عمل احراز هویت را انجام میدهد و به سوئیچ اعلام میکند که کلاینت مجاز برای دسترسی به سرویسهای شبکه هست یا نه؟ در این حالت سوئیچ به عنوان پروکسی عمل کرده، IAS که احراز هویت EAP را پشتیبانی میکند به عنوان پشتیبان سرور DC خواهد بود. میتوان به جای سرویس مایکروسافتی IAS از Cisco Secure ACS هم به عنوان یک سرویس RADIUS استفاده کرد. IAS مخفف Internet Authentication Service سرویس مایکروسافتی که عمل اعتبارسنجی را به صورت محلی و یا با هماهنگی با Active Directory Service انجام میدهد. این قسمتها در شکل 1 نمایش داده شدهاند. مراحل درخواست اعتبارسنجی تا زمان برقراری ارتباط توجه: دقت کنید 802.1x به صورت پیشفرض روی تجهیزات شبکه فعال نیست و ما باید آن را فعال کنیم. اگر802.1X روی سوئیچ فعال نشود یا تجهیزات شبکه آن را پشتیبانی نکنند (مثلا IOS سوئیچ آن را پشتیبانی نکند) درخواستهای EAPOL کلاینت که برای سوئیچ ارسال میشود، حذف میشوند. چنانچه کلاینت سه بار پیغام Start را برای سوئیچ ارسال کند و پاسخی دریافت نکند، فریمها را مشابه حالتی که پورت سوئیچ در حالت مجاز است، ارسال میکند. حالت مجاز سوئیچ یعنی حالتی که کلاینت شناسایی شده و امکان تبادل فریمهای شبکه وجود دارد. حالتهای مختلف پورتهای سوئیچحالت پورت سوئیچ (Authorized/Unauthorized) مشخص میسازد که کلاینت به شبکه متصل شود یا خیر. وقتی کابل به پورت سوئیچ متصل میشود، پورت سوئیچ از حالت Unauthorized آغاز میکند. این حالتی است که اتصال با شبکه برقرار نمیشود و پورت به فریمهای غیر 802.1x اجازه داخل و خارج شدن نمیدهد. هنگامی که کلاینت شناسایی شد و ارتباط با شبکه به صورت نرمال برقرار گردید، زمانی است که پورت به حالت Authorized تغییر حالت داده است. توجه: هرگاه کلاینت Logoff کند، یک پیغام EAPOL-Logoff برای سوئیچ ارسال میکند و پورت مجددا به حالت Unauthorized تغییر وضعیت میدهد تا در مراحل ورود به شبکه بعدی مجددا کلاینت شناسایی شود. کجا میتوان این راهکار را پیاده کرد؟این راهکار قابل پیادهسازی در دو توپولوژی مختلف است: توپولوژی point-to-pointدر توپولوژی پوینت تو پوینت، فقط یک کلاینت میتواند به پورت سوئیچی که 802.1x روی آن فعال شده است، متصل شود. وقتی کلاینت متصل میشود، پورت سوئیچ مشخصات آن را میشناسد و چنانچه کلاینت تغییر داده شود و دستگاه دیگری به پورت سوئیچ متصل گردد، وضعیت پورت سوئیچ به حالت Unauthorized تغییر کرده و اصطلاحا پورت Down میشود. در این حالت اگر مجددا کلاینت قبلی را به همان پورت متصل کنید، به شبکه متصل نخواهد شد، زیرا پورت سوئیچ که به دلایل امنیتی به وضعیت Unauthorized تغییر کرده است، باید توسط مسئول شبکه Up شود تا بتواند مجددا فریمهای EAPOL را برای احراز هویت به سرور اعتبارسنجی ارسال و دریافت کند. در این شرایط باید با دستور Shutdown و no shutdown پورت مذکور را Down و سپس Up کنید. توپولوژی Wireless LANدر این توپولوژی که یک اکسس پوینت رابط میان کلاینتها و پورت ترانک شده سوئیچ است، هرگاه دستگاهی به اکسس پوینت متصل شود و در واقع عملیات احراز هویت تکمیل و پورت در حالت Authorized قرار گیرد، دیگر دستگاهها هم میتوانند متصل شوند و چنانچه یک دستگاه Logoff کند و پیغام EAPOL-Logoff را ارسال کند، پورت سوئیچ به حالت Unauthorized میرود و بقیه دستگاهها نیز Disconnect میشوند. بنابراین در این توپولوژی، اکسس پوینت است که عمل احراز هویت را به کمک IAS انجام میدهد. نیازمندیهای راهاندازی IBNS این راهکار به تجهیز یا محصول خاصی وابسته نیست، اما سناریویی که اینجا در نظر گرفته شده است با در نظر گرفتن پیشنیازهای ذیل قابل اجراست: خلاصهدر نتیجه آنچه گفته شد، با پیادهسازی IBNS و فناوریهای تکمیلی، به نتایج با ارزش زیر دست خواهیم یافت: و به عنوان نمونه عملی مطالب فوق؛ کاربرانی که از نوتبوک شخصی خود در اداره یا شرکت استفاده میکنند، بدون هیچ ملاحظهای در قسمتی از شبکه محبوس میکنیم.
راههای مختلفی برای هر یک از موارد فوق پیشنهاد میشود که از میان آنها به نظر ما، بهترین راهکار Identity Base Networking Services یا IBNS است که نه تنها مختص محصولات شرکت خاصی نیست، بلکه با توجه به اینکه در کشورمان اغلب سیستم عامل مایکروسافت و تجهیزات سیسکو راهاندازی میشود، به راحتی در این محیط قابل پیادهسازی است. در این روش کاربران قبل از هرگونه استفاده از منابع شبکه، اعتبارسنجی (Authenticate) میشوند و سپس با توجه به مشخصات خود وارد شبکه مجازی مشخصی میشوند که اصطلاحا
(VLAN (Virtual Local Area Network نامیده میشود. این VLAN با توجه به اینکه بسته به مشخصات کاربر تغییر میکند و پویاست، به Dynamic VLAN معروف شده است. در این مقاله به تشریح اجزا و مکانیسم پیادهسازی IBNS میپردازیم:
«» براساس خط مشی سازمان، سیاستهای کلی را پیادهسازی میکند.
«» کنترل پورتها و دسترسی به شبکه را انجام میدهد.
«» فعالیت کاربران در شبکه را مانیتور و پیگیری میکند.
احراز هویت یا اعتبارسنجی (Authentication) که مشخص میکند "که هستی؟"IBNS از پروتکل IEEE802.1x و یک بانک اطلاعاتی (Radius Server) برای احراز هویت کاربران استفاده میکند. فاکتورهایی مانند نام کاربری، اثر انگشت، گواهی دیجیتالی و آدرس ایمیل مشخص میکند چه فرد یا ابزاری قصد اتصال به سیستم را دارد و آنها را از هم تفکیک میکند.
به کدام گروه از شبکه تعلق داری؟بسته به نتیجه احراز هویت، کاربر در شبکه مجازی خاصی قرار داده میشود.
چه سطحی از سرویسها را دریافت میکنی؟نوع و سطح دسترسی کاربران به قسمتهای مختلف شبکه با روشهای کنترلی خاص (مانند استفاده از Access Control List) و کیفیت بهرهوری ایشان از شبکه با اولویتبندیهایی که در تنظیمات QoS در شبکه انجام میشود، مشخص میگردد.
چه فعالیتهایی در شبکه انجام میشود؟با توجه به فاکتورهای شناسایی و محل قرارگیری کاربر، مانیتورینگ و بازرسی فعالیتهای کاربر بهتر انجام میشود.
سناریوی IEEE 802.1X به سه بخش عمده تقسیم میشود و در هر یک از قسمتها هر دستگاه نقش خاص خود را دارد:
شکل 1: عملکرد کلی پروتکل IEEE802.1x
سوئیچ به عنوان RADIUS Client یا Supplicant از طرف کاربر درخواست اعتبارسنجی را ایجاد میکند. هنگامی که روی یک پورت سوئیچ، اعتبارسنجی را فعال میکنیم (از طریق اجرای دستور dot1x port-control auto)، درخواست اعتبارسنجی توسط سوئیچ ارسال میشود و سوئیچ بر اساس تصمیم نهایی Up یا Down میشود. در این حالت سوئیچ برای کلاینت فریم EAP-request / identity را ارسال میکند و از کلاینت میخواهد تا هویت خود را اعلام کند و کلاینت فریم EAP-response / identity را برای سوئیچ ارسال میکند و پاسخ میدهد. حالا اگر کلاینت هنگام روشن شدن فریم درخواست را از سوئیچ دریافت نکند، خودش با ارسال فریم EAPOL-start مراحل احراز هویت را آغاز میکند و از سوئیچ میخواهد تا فریم EAP-request/identity را ارسال و درخواست اعتبارسنجی کند.
وقتی کلاینت هویت خود را اعلام میکند، سوئیچ نقش میانجیگری خود را آغاز میکند و فریمهایی که سرور و کلاینت برای تصمیمگیری در مورد احراز هویت تبادل میکنند (فریمهای EAP) را انتقال میدهد. نوع فریمهایی که تبادل میشوند، بستگی به روش اعتبارسنجی دارد.
توجه: دقت کنید در حالتی که 802.1x روی سوئیچ فعال شده است، اگر کلاینت 802.1x را پشتیبانی نکند (مثلا سیستم عامل XP بدون سرویس پک باشد) کلاینت فریمهایی را که سوئیچ برای احراز هویت ارسال میکند، نمیفهمد. بنابراین پاسخی نمیدهد و سوئیچ به حالت Authorized نخواهد رفت و در نهایت اتصال برقرار نمیشود. به همین ترتیب، اگر 802.1x روی سوئیچ فعال نشده باشد اما تنظیمات کلاینت انجام شده باشد، سوئیچ فریمهای کلاینت را پاسخ نمیدهد و کلاینت پس از مدت زمان مشخص ترافیک نرمال را ارسال میکند و بنابراین اتصال برقرار میشود.
برای اینکه وضعیت پورت سوئیچ را کنترل کنید، از دستور dot1x port-control در مود تنظیمات اینترفیس استفاده کنید که حالتهای مختلف زیر را در پی خواهد داشت:
Force-authorized ؛ حالتی است که 802.1x غیرفعال میشود و هیچ تبادل اطلاعاتی برای احراز هویت انجام نمیشود و در هر شرایطی پورت در حالت Authorized قرار دارد و اتصال همواره برقرار میشود.
Force-unauthorized ؛ حالتی است که پورت همواره در حالت Unauthorized قرار دارد و اگرچه هیچ تبادل اطلاعاتی برای احراز هویت انجام نمیشود، اما اجازه اتصال به شبکه نیز داده نمیشود.
Auto ؛ حالتی است که 802.1x فعال شده و فرآیند احراز هویت انجام میشود تا در صورت مجاز بودن کاربر یا کلاینت، پس از طی مراحلی که قبلا گفته شد، پورت از حالت Unauthorized به حالت Authorized تغییر وضعیت دهد.
شکل2
• در شبکه کابلی یا بیسیم، وجود سوئیچی که 802.1x را پشتیبانی کند.
• در شبکه بدون سیم، وجود Access Pointای که 802.1x را پشتیبانی کند.
• سرور Radius که میتواند Cisco Secure ACS یا سرویس Microsoft IAS باشد.
• سرور دامین کنترلر یا DC که برای عمل احراز هویت به IAS سرویس دهد.
• سرویسدهنده DHCP که محدوده آیپیها را برای VLANها مشخص کند.
• کلاینتها با سیستم عاملی که 802.1x را پشتیبانی کند، مانند ویندوز XP SP2 و بالاتر.
• در صورتی که شناسایی کاربر با گواهی دیجیتالی انجام میشود، سروری که گواهی دیجیتالی صادر کند که این سرور میتواند Certificate Authority مایکروسافتی باشد.
ـ از اینکه افراد مجاز از دسترسیهای مجاز بهرهبرداری میکنند، اطمینان مییابیم.
ـ بدون قربانی کردن ملاحظات امنیتی، میتوانیم تعداد و انواع بیشتری از کاربران را پوشش دهیم.
ـ بدون قربانی کردن بازدهی و کارآیی شبکه و کاربران، دسترسی به منابع را محدود به بایدها و نیازهای کاری میکنیم.
ـ دسترسی کاربران را براساس لایههای مختلف و به صورت خودکار تنظیم میکنیم.
ـ مانیتورینگ و بازرسی دقیقتری بر دسترسی کاربران به شبکه خواهیم داشت.