پروتکل Dot1X ( دات وان ایکس ) چیست؟
در محیط شبکه های امروزی و بخصوص شبکه های بزرگ در محیط خود VLAN ، WLAN ، DHCP و سایر پروتکل های داینامیک را پیاده سازی کرده اند تا امکان دسترسی انعطاف پذیر را به کاربران متحرک و ... را فراهم کنند. هرچند این ویژگی ها باعث می شود که به نظر کاربر شبکه دسترس پذیرتر و راحت تر شده است اما از سوی دیگر شبکه سازمان را در برابر دسترسی های غیر مجاز آسیب پذیر می کند. برای یک هکر کار کردن در یک محیط نا امن برای ایجاد حملاتی مانند denial of service (DoS)، hijack و ... بسیار راحت تر از یک محیط ایمن شده است.
اگر در یادگیری سیسکو مشکل دارید ، به شما پیشنهاد می کنیم از طریق دوره های آموزش سیسکو حرفه ای سایت توسینسو و با دوره آموزش CCNA روتینگ و سویچینگ شروع کنید ، فراموش نکنید که پیشنیاز همه این دوره های آموزش شبکه ، دوره آموزش نتورک پلاس است ، فراموش نکنید توسینسو اولین و بهترین انتخاب شما در حوزه آموزش فناوری اطلاعات فارسی است.
(Cisco Identity-Based Networking Services (IBNS تکنولوژی است که بر پایه 802.1x عمل می کند و باعث افزایش امنیت شبکه با استفاده از authentication کاربران براساس مشخصاتی مانند یوزر و پسورد و برای دستگاه ها از MAC Address و IP Address استفاده می کند. IBNS کنترل می کند که چه کسی و چه چیزی در شبکه وجود دارد ، کاربران خارجی را از طریق Authentication و Authorization بررسی می کند و با استفاده از Accounting عملکرد کاربرانی که وارد شبکه شده اند را نظاره می کند و به طور کلی نظارت بر شبکه افزایش پیدا می کند. IBNS همچنین یک فریم ورک تعیین کرده است که در سه حالت زیر برای بخش های مختلف قابل اجرا است :
- Monitor Mode : دسترسی به شبکه را قابل مشاهده می کند و محدودیتی برای دسترسی به شبکه وجود ندارد.
- Low-Impact Mode : در این حالت در صورت عدم تایید هویت و یا عدم پاسخگویی توسط پروتکل در زمان تعیین شده امکان دسترسی محدود فراهم می شود که برای آن از (downloadable access control lists (dACL استفاده می شود.
- High-Security Mode : بالاترین سطح امنیت برای دسترسی به شبکه را فراهم می کند به صورتی که تنها در صورت تایید هویت ، امکان دسترسی به شبکه وجود دارد.
معرفی ویژگی های جدید پروتکل 802.1x توسط IBNS
چندین ویژگی و بهبود توسط IBNS برای پروتکل 802.1x استاندارد ارائه شده است که به شرح زیر هستند :
- VLAN assignments : در 802.1x استاندارد کاربری که هویت او تایید شود در vlan که از قبل برای آن پورت در نظر گرفته شده است قرار می گیرد. اما در IBNS اختصاص VLAN براساس کاربر یا دستگاه انجام می گیرد و وابسته به پورت نیست. که اینکار با استفاده از تنظیمات از قبل انجام شده در Radius Server انجام می گیرد. زمانی که تایید هویت کاربر به درستی انجام گرفت Radius Server اطلاعات مربوط به VLAN را برای سوئیچ ارسال می کند و سوئیچ براساس اطلاعات دریافتی پورت را به صورت دینامیک به VLAN مورد نظر اختصاص می دهد.
- 802.1x guest VLAN : یکی از نکته های مهم در محیط شبکه این است که برخی از کلاینت ها از پروتکل 802.1x پشتیبانی نمی کنند و باید بتوان از این کلاینت ها در کنار سایر دستگاه استفاده کرد. با استفاده از این ویژگی این امکان فراهم می شود که کاربران یا دستگاه هایی که از پروتکل 802.1x پشتیبانی نمی کنند توسط guest VLAN به منابع شبکه دسترسی پیدا کنند. یک guest VLAN به طور معمول یک دسترسی محدود به منابع عمومی شبکه ایجاد می کند به طور مثال دسترسی به اینترنت توسط آن فراهم می شود.
- Restricted VLAN : این ویژگی این امکان را برای کلاینت هایی که از پروتکل 802.1x پشتیبانی می کنند فراهم می کند که حتی در صورت تایید نشدن هویت آنها یک دسترسی محدود داشته باشند. در صورتی که یک کلاینت سه بار هویت آن تایید نشوند بدون اینکه هویت آن تایید شود به صورت خودکار در Restricted VLAN قرار می گیرد و پورت مربوطه به عنوان Restricted VLAN شناخته می شود. بعد از اینکه کلاینت در Restricted VLAN قرار گرفت یک پیام جعلی مبنی بر اینکه تایید هویت آن به درستی انجام شده است به کلاینت ارسال می شود تا دست از تلاش برای تایید هویت بر دارد. سطح دسترسی که به این کاربر یا دستگاه داده می شود بستگی به سیاست های سازمان دارد و توسط آنها تنظیم می شود و احتمالا اینکه سطح دسترسی برای guest VLAN و Restricted VLAN یکسان در نظر گرفته شود وجود دارد.
- Port security : در 802.1x امکان فعال کردن port security را در پورت های سوئیچ فراهم می کند. در صورت فعال شدن این قابلیت باعث می شود تنها MAC Address های خاص اجازه دسترسی به شبکه را داشته باشند.این قابلیت جهت جلوگیری از اتصال دستگاه های غیر مجاز و همچنین امکان مشخص کردن تعداد دستگاه قابل اتصال به پورت مفید است.
- Voice VLAN ID : این قابلیت این امکان را به مدیر شبکه می دهد که برای (Voice over Internet Protocol (VoIP یک شماره VLAN در نظر بگیرد.
- Access control list (ACL) assignment :توسط 802.1x این امکان وجود دارد که اختصاص ACL به صورت دینامیک انجام شود. این ویژگی به مدیر این توانایی را می دهد که دسترسی کاربر را به منابع خاص شبکه محدود کند. می تواند اینکار را بدون در نظر گرفتن موقعیت استقرار کاربر انجام دهد و این ویژگی برای کاربرانی که در حال حرکت هستند بسیار مفید است.
- Inaccessible Authentication Bypass : این ویژگی این امکان را می دهد که دستگاه هایی که از حساسیت خاصی در شبکه برخوردار هستند حتی در صورتی که RADIUS Server از سرویس دهی خارج شده باشد اجازه عبور ترافیک خود را داشته باشند و زمانی که RADIUS Server به سرویس دهی بازگشت به صورت خودکار تایید هویت را انجام دهد.
- (MAC Authentication Bypass (MAB : اگر از این ویژگی استفاده شود می توانید دستگاه هایی را که از 802.1x پشتیبانی نمی کنند را تایید هویت کنید. اینکار با استفاده از MAC Address و تطبیق آن با اطلاعات RADIUS Server انجام می گیرد. این ویژگی بعد از اینکه از سمت کلاینت برای 802.1x درخواستی ارسال نشود انجام می گیرد.
- Network Admission Control Layer 2 Validation : این ویژگی امکان بررسی وضعیت کلاینت را قبل از اینکه به آن اجازه دسترسی به شبکه را بدهد فراهم می کند. از این ویژگی برای بررسی آیتم هایی مانند فایروال ، آنتی ویروس و ... می توان بهره برد.
- (Web Authentication (WebAuth : این ویژگی این امکان را فراهم میکند که کاربر بتواند از طریق مرورگر احراز هویت شود. این ویژگی برای دستگاه هایی که از 802.1x پشتیبانی نمی کنند مناسب است.
- (Flexible Authentication Sequencing (FlexAuth : این امکان را فراهم می آورد که چند روش برای تایید هویت در نظر بگیریم که در مرحله اول احراز هویت توسط 802.1x انجام می شود و در صورتی که تایید هویت انجام نشد روش بعدی یعنی MAB انجام می گیرد و در صورتی که این روش انجام نشد WebAuth فعال می گردد. امکان تغییر این ترتیب وجود دارد.
- Open Access : این ویژگی باعث می شود حتی در صورت Fail شدن احراز هویت ، امکان دسترسی نرمال داده شود و معمولا در زمان پیاده سازی پروتکل 802.1x و خطایابی مورد استفاده قرار می گیرد.
- Multi-Domain Authentication : زمانی که از این پورت در حالت Host استفاده شود به دستگاه اجازه می دهد که برای هر دو Domain یعنی Data و Voice عمل احراز هویت را انجام دهد.
- (Multiple Authentications (MultiAuth : زمانی که پورت را در این حالت استفاده کنیم به پورت اجازه می دهیم که تمام دستگاه های متصل به این پورت را به صورت جداگانه تایید هویت کند به صورت پیش فرض اولین کاربر عمل احراز هویت را انجام می دهد و دیگران نیاز به احراز هویت برای استفاده از آن پورت را ندارند.
- Remote Site IEEE 802.1x Local Authentication Service : زمانی که ما یک Remote Site داریم و امکان قطع شدن ارتباط آن و در نتیجه عدم دسترسی به RADIUS Server وجود دارد. این قابلیت این امکان را فراهم می کند که یک دستگاه به عنوان local RADIUS Server مشخص شود که در صورت قطع شدن ارتباط این دستگاه به عنوان Backup عمل می کند و مشکلی بابت سرویس دهی به وجود نمی آید.
معرفی اجزای تشکیل دهنده 802.1x
IEEE در مکانیزم کاری 802.1x سه جزء را مشخص کرده است. که این سه جزء به شرح زیر هستند :
- Supplicant : نقطه آغاز درخواست دسترسی به شبکه می باشد که می تواند یک کاربر ، دستگاه ، IP Phone و ... باشد.
- Authenticator : دستگاهی که بین Supplicant و Authentication server قرار دارد و درخواست تایید هویت کاربر را به سمت RADIUS Server ارسال می کند و براساس پاسخ RADIUS Server به کاربر یا دستگاه اجازه یا عدم اجازه دسترسی به شبکه را می دهد. به طور معمول کلاینت ها به صورت مستقیم به Authenticator متصل می شوند. دستگاه هایی مانند Switch و Access Point به عنوان Authenticator نقش ایفا می کنند.
- Authentication server : سروری که تایید هویت Supplicant را انجام دهد نحوی ایجاد دسترسی یا عدم دسترسی Supplicant را به Authenticator می دهد. به طور مثال یک RADIUS Server مانند ACS می تواند به عنوان Authentication server سرویس دهی کند.
در تصویر زیر اجزای مختلف 802.1x را می بینید :
نکته : قبل از اینکه Supplicant تایید هویت شود روی آن پورت تنها ترافیک (EAPOL ، Cisco Discovery Protocol (CDP و (Spanning Tree Protocol (STP اجازه عبور دارند. اما بعد ازاینکه تایید هویت به درستی انجام شد ترافیک به صورت نرمال روی پورت جریان پیدا می کند.
پروتکل (Extensible Authentication Protocol (EAP چیست؟
EAP یک مکانیزم انتقال است که در 802.1x برای تایید هویت بین supplicants و Authenticator مورد استفاده قرار می گیرد. در 802.1x امکان تایید هویت توسط پروتکل های دیگر مانند (Password Authentication Protocol (PAP یا (Challenge Handshake Authentication Protocol (CHAP وجود ندارد. تصویر زیر فرمت بسته EAP نمایش داده شده است.
توضیح این فیلدها به شرح زیر است :
- Code : این فیلد یک بایتی نشان دهنده نوع بسته می باشد که انواع آن در جدول زیر نمایش داده شده است :
- Identifier : یک فیلد یک بایتی می باشد و به تطبیق پاسخ و درخواست کمک می کند.
- Length : این فیلد دو بایتی طول بسته را مشخص می کند.
- Data : این فیلد می تواند صفر یا چند بایت باشد و به وسیله فیلد Code فرمت آن مشخص می شود.
پروتکل (EAP over LAN (EAPOL چیست؟
در بستر LAN ارتباط بین supplicant و authenticator توسط EAPoL انجام می گیرد. EAPoL از رسانای انتقال مختلفی از جمله Ethernet ، Token Ring ، FDDI و WLANs پشتیبانی می کند. EAPoL این قابلیت را فراهم می کند که بسته های EAP توسط ماکنیزم MAC در LAN اداره شوند.فریم EAPoL نسبتا ساده است که در تصویر زیر نمایش داده شده است. EAP درون یک فریم کپسوله شده است.
MAC Address مبدا و مقصد هر دو یک فیلد 6 بایتی هستند و مشابه همه بسته های نرمال Ethernet مورد استفاده قرار می گیرند. MAC Address مقصد همیشه مقدار 01:80:C2:00:00:03 که مربوط به (Port Access Entity (PAE می باشد را به خود می گیرد.فیلد PAE Ethernet دو بایتی است و همیشه مقدار 88:8E را دارد.فیلد Packet Type یک بایتی است و مقدار آن نشان دهنده نوع بسته می باشد که در جدول زیر این مقادیر نمایش داده شده است.
فیلد Packet Body Length یک فیلد دو بایتی است و طول بسته را مشخص می کند. زمانی که نوع بسته یکی از انواع EAP-Packet ، EAPOL-Key و EAPOL-Encapsulated-ASP-Alert باشد این فیلد مورد استفاده قرار می گیرد.
EAP Message Exchange چیست؟
تبادل پیام ها و بسته های EAP می تواند برای فهم سخت باشد در تصویر زیر یک نمونه آن نمایش داده شده است. این نکته را همیشه در نظر بگیرد که بسته های EAP به صورت EAPoL کپسوله می شوند و بین supplicant و authenticator تبادل می شوند. بین authenticator و authentication server نحوی کپسوله کردن بسته ها به Radius Server بستگی دارد.
مراحل زیر را دنبال کنید تا متوجه شوید در هر مرحله چه اتفاقی می افتد:
- مرحله 1 : در اولین مرحله supplicant یک فریم EAPoL-Start به authenticator ارسال می کند تا به آن اعلام کند که آماده تایید هویت است. اگر authenticator شروع کننده این ارتباط باشد هیچ بسته ای تحت عنوان EAPoL-Start ارسال نخواهد شد.
- مرحله 2 : در اینجا authenticator به محض اینکه تشخیص دهد که لینک فعال شده است یک بسته EAP-Request/Identity به supplicant ارسال می کند. (به طور مثال کلاینت به یک پورت سوئیچ متصل شود)
- مرحله 3 : در این مرحله supplicant یک بسته EAP-Response/Identity به authenticator ارسال می کند. Authenticator بسته دریافتی را به authentication server ارسال می کند. نحوی انتقال درخواست از supplicant به authentication server به پروتکل مورد استفاده Radius Server بستگی دارد.
- مرحله 4 : در اینجا authentication server یک challenge مانند token password system به authenticator ارسال می کند. Authenticator آنرا از بسته IP خارج کرده و درون EAPoL کسپوله می کند و آنرا به سمت supplicant ارسال می کند. با توجه به نوع Authentication این پیام ها و تعداد آنها می تواند متفاوت باشد. EAP می تواند از دو حالت Authentication پشتیبانی کند در حالت اول فقط کلاینت توسط authentication server تایید هویت می شود ولی در حالت دوم authentication server کلاینت را تایید هویت می کند و همچنین کلاینت authentication server را تایید هویت می کند. بهتر است که حالت دوم در محیط های وایرلس مورد استفاده قرار گیرد.
- مرحله 5 : سپس supplicant به challenge پاسخ می دهد که این پاسخ از طریق authenticator به authentication server ارسال می شود.
- مرحله 6 : اگر هویت supplicant تایید شود authentication server یک پیام تصدیق هویت ارسال می کند که بعد از دریافت توسط authenticator این پیام به supplicant ارسال می شود و از این لحظه authenticator اجازه دسترسی به شبکه را می دهد اما این دسترسی می تواند براساس اطلاعات ارسالی توسط authentication server محدود شود. به طور مثال authenticator باید برای supplicant یک VLAN بسازد و یا برای آن یک ACL در نظر بگیرد.
Port State چیست؟
زمانی که از 802.1x استفاده می کنید پورت می تواند در یکی از سه وضعیت زیر قرار بگیرد :
- Auto : در این حالت ، در ابتدا پورت در حالت unauthorized (غیر مجاز) قرار می گیرد و تنها ترافیک EAPOL ، CDP و STP را اجازه عبور می دهد. بعد از اینکه تایید هویت supplicant انجام شد. پورت در حالت authorized (مجاز) قرار می گیرد و اجازه عبور ترافیک را به صورت نرمال می دهد.
- Forced-Authorized : در این حالت ، 802.1x روی پورت غیر فعال می شود و ترافیک به صورت نرمال و بدون هیچ محدودیتی جریان پیدا می کند. زمانی که 802.1x به صورت globally فعال نشده باشد این حالت پیش فرض می باشد.
- Forced-Unauthorized : در این حالت ، پورت هیچ ترافیکی را عبور نمی دهد حتی ترافیک مرتبط با تایید هویت را قبول نمی کند.
اگر 802.1x در یک پورت سوئیچ فعال شود پورت در حالت Auto قرار می گیرد. زمانی که پورت در وضعیت Auto قرار گیرد در ابتدا پورت در حالت unauthorized قرار می گیرد و supplicant نیاز به تایید هویت دارد. بعد از اینکه تایید هویت supplicant انجام شد پورت در وضعیت authorized قرار می گیرد و اجازه عبور ترافیک را از کلاینت به منابع شبکه را می دهد. اگر کلاینت از 802.1x پشتیبانی نکند سوئیچ نمی تواند آنرا تایید هویت کند مگر اینکه امکان استفاده از MAB فراهم شده باشد یا guest VLAN تعریف شده باشد.
Port Authentication Host Modes چیست؟
802.1x برای port authentication از چند host mode مختلف پشتیبانی می کند که این mode ها به شرح زیر است :
- Single-Host Only : در این حالت برای هر پورت تنها یک host می تواند تایید هویت شود و اگر بیشتر از یک host برای تایید هویت تلاش کند یک پیغام خطا تولید می شود.
- Multi-Host : در این حالت یک میزبان تایید هویت می شود و سایر میزبان ها بدون نیاز به تایید هویت می توانند از پورت استفاده کنند. اگر میزبانی که تایید هویت شده ارتباط خود را قطع کند پورت در وضعیت unauthorized قرار می گیرد و سایر میزبان ها نمی توانند دیگر از پورت استفاده کنند مگر اینکه یکی از آنها اقدام به تایید هویت کند.
- Multi-Domain : این امکان را فراهم می کند تایید هویت برای دو دامین data و voice انجام گیرد. این حالت زمانی استفاده می شود که به یک پورت یک IP Phone و یک Computer متصل باشد.
- Multi-Auth : در این حالت کامپیوترهایی که به یک پورت متصل هستند هر کدام به صورت مستقل تایید هویت می شوند. در این حالت همه کامپیوترهای متصل به این پورت در یک زمان واحد در یک VLAN قرار می گیرند و VLAN براساس اولین کامپیوتری که به پورت متصل شود تعیین می گردد. برای در نظر گرفتن مسائل امنیتی در این حالت بهترین راه استفاده از ACL می باشد.
- Open : در این حالت هیچ محدودیتی برای دسترسی به شبکه وجود ندارد.
EAP Type Selection به چه معناست؟
چندین روش مختلف برای تایید هویت به وسیله EAP برای شبکه های سیمی و بیسیم وجود دارد. که پرکاربرد ترین روش های آن به شرح زیر است :
- EAP-MD5
- PEAPv0-MSCHAPv2
- LEAP
- EAP-TLS
- EAP-TTLS
- EAP-FAST
در ادامه این روش های را مورد بررسی قرار می دهیم.
EAP–Message Digest Algorithm 5 چیست؟
EAP-MD5 براساس (message digest algorithm 5 (MD5 تایید هویت را انجام می دهد. در این روش هویت کلاینت به صورت hash شده روی شبکه ارسال می شود. در این روش سرور یک رشته به صورت تصادفی تولید می کند و آنرا به کلاینت ارسال می کند کلاینت رشته دریافتی را با استفاده از پسورد خود که به عنوان کلید در نظر گرفته می شود hash کرده و به سرور ارسال می کند.
سرور نیز رشته ای که تولید کرده را با پسورد مربوط به کلاینت که از قبل در دیتابیس خود داشته hash می کند سپس hash خود را با hash ارسالی توسط کلاینت مقایسه می کند.این روش به خوبی پشتیبانی می شود و یک مکانیزم تایید هویت ساده را با استفاده از یوزر و پسورد فراهم می کند. همچنین این روش بار پردازشی زیادی به سرور یا کلاینت تحمیل نمی کند چون پردازش آن ساده و راحت است.نقطه ضعف این روش به عملکرد MD5 برمی گردد که باید پسورد تمام کاربران را به صورت clear-text در authentication server ذخیره گردد.
- نکته : این روش یک مکانیزم استاندارد است و در ویندوز XP این مکانیزم را داریم اما در ویندوز 7 و بعد از آن این روش حذف شده است.
- نکته : در این روش احراز هویت به صورت یکطرفه انجام می گیرد و فقط authentication server امکان احراز هویت کلاینت را دارد و کلاینت نمی تواند authentication server را احراز هویت کند.
در تصویر زیر نمونه آن نمایش داده شده است :
Protected EAP w/MS-CHAPv2 چیست؟
(Protected EAP (PEAP به صورت مشترک توسط Cisco Systems ، Microsoft و RSA Security ارائه شده است و از روش های مختلف کپسوله کردن EAP به همراه تانل (Transport Layer Security (TLS پشتیبانی می کند. PEAP از مجموعه از روش های تایید هویت کاربران پشتیبانی می کند. در سمت سرور از Certificate برای تایید هویت استفاده می شود که بر پایه (public-key infrastructure (PKI می باشد. PEAP میتواند برای تایید هویت از یوزر و پسورد های ویندوزی استفاده کند که این یوزر و پسوردها می توانند دامینی یا به صورت local باشد.
PEAP برای عملکرد خود از دو فاز استفاده می کند :
- فاز 1 : در این فاز یک تانل امن توسط سرور ایجاد می گردد. که این تانل برای حمل بسته های تایید هویت EAP بین کاربر و Radius Server مورد استفاده قرار می گیرد.
- فاز 2 : Radius Server کلاینت را به وسیله MS-CHAP version 2 از طریق تانل امنی که ایجاد شده تایید هویت می کند.
نکته : در این روش احراز هویت به صورت دو طرفه انجام می گیرد که کلاینت با استفاده از Cetificate سرور را تایید هویت می کند. در ابتدا کلاینت سرور را تایید هویت می کند.
نکته : در این روش Radius Server ما نیاز به Certificate دارد. نرم افزار ACS سیسکو قابلیت ایجاد Certificate به صورت Self-sign را دارد.
در تصویر زیر نمونه آن نمایش داده می شود :
Cisco Lightweight EAP چیست؟
(Cisco Lightweight EAP (LEAP توسط سیسکو ارائه شده است و مکانیزم آن شبیه EAP-MD5 است با این تفاوت که کلاینت و سرور هر دو یکدیگر را تایید هویت می کند. کلاینت برای تایید هویت از shared secret استفاده می کند و سرور از پسورد کاربر برای این کار بهره می گیرد. در اینجا سرور یک رشته تولید و برای کلاینت ارسال می کند و این رشته به وسیله پسورد کاربر توسط کلاینت hash می شود و به سرور ارسال می شود سرور رشته را با پسورد مربوط به کاربر که در دیتابیس خود دارد hash می کند و این دو hash را با یکدیگر مقایسه می کند.
بعد از اینکه تایید هویت کاربر توسط سرور انجام شد اینبار کلاینت هویت سرور مورد بررسی قرار می دهد به اینصورت که یک رشته تولید می کند و برای سرور ارسال می کند و سرور رشته را با shared secret خود hash می کند و برای کلاینت ارسال می کند. کلاینت نیز رشته ای که تولید کرده را به وسیله shared secret که از قبل برای آن مشخص کرده اند hash می کند و دو hash را با هم مقایسه می کند و به اینصورت سرور توسط کلاینت تایید هویت می شود.
EAP–Transport Layer Security چیست؟
EAP-TLS یک استاندارد است که توسط مایکروسافت توسعه یافت و توسط (Internet Engineering Task Force (IETF پذیرفته شد. این پروتکل بر پایه پروتکل (Transport Layer Security (TLS می باشد. همانند متد Cisco LEAP در EAP-TLS نیز هر دو کلاینت و سرور یکدیگر را تایید هویت می کنند. هرچند که در این روش پسورد مورد استفاده قرار نمی گیرد و بجای آن از RSA استفاده می شود. EAP-TLS از Certificate برای تایید هویت کلاینت و سرور استفاده می کند.
در فاز اول Radius Server برای کلاینت Certificate خود را ارسال میکند و کلاینت برای بررسی صحت Certificate ارسالی توسط Radius server محتوای Certificate را با صادر کننده آن یعنی (certificate authority (CA چک می کند. بعد از اینکه این مرحله با موفقیت انجام شد. در فاز دو کلاینت Certificate خود را برای Radius Server ارسال می کند Radius Server نیز محتوای Certificate دریافتی را با صادر کننده آن بررسی می کند.
بعد از اینکه این مرحله نیز با موفقیت به اتمام رسید یک پیام EAP-Success به کلاینت ارسال می کند.مزیت EAP-TLS امنیت بالای آن بخاطر استفاده از یکی از قویترین روش های تایید هویت حال حاضر است. مشکل آن پیچیده گی زیاد آن در راه اندازی است چون نیاز به اجزای بیشتری مانند (certificate authority (CA دارد و همچنین نیاز به پردازش بالاتری نسبت به سایر روش ها در هر دو سمت سرور و کلاینت دارد.در تصویر زیر یک نمونه آن نمایش داده شده است :
EAP–Tunneled Transport Layer Security چیست؟
EAP-TTLS یک توسعه برای EAP-TLS می باشد و به لحاظ عملکرد شبیه PEAP می باشد و دارای دو فاز است. EAP-TTLS همانند EAP-TLS از TLS برای ایجاد یک تانل بین authentication server و supplicant مورد استفاده قرار می گیرد که فاز یک را تشکیل می دهد.
EAP-TTLS همانند PEAP از تانل TLS برای کپسوله کردن استفاده می کند اما تفاوت آن با PEAP پشتیبانی از روش هایی غیر از متدهای EAP مانند (PPP Authentication Protocol (PAP و (PPP Challenge Handshake Authentication Protocol (CHAP می باشد. EAP-TTLS بر خلاف EAP-TLS نیاز به تایید هویت هر دو سمت یعنی کلاینت و سرور ندارد که باعث می شود تنظیمات ساده تر شود.در تصویر زیر نمونه آنرا می بینید :
EAP–Flexible Authentication via Secure Tunneling چیست؟
(EAP–Flexible Authentication via Secure Tunneling (EAP-FAST توسط سیسکو ارائه شده است. سیسکو EAP-FAST را برای پشتیبانی از مشتریان که نیاز به سیاست های قوی در زمینه پسورد دارند و نیاز به راه اندازی Certificate ندارند ارائه کرده است. EAP-FAST حفاظت در برابر حملات مختلف را برای ما به ارمغان می آورد شامل حملاتی مانند man-in-themiddle و replay و dictionary attacks فاز 1 یک تانل امن ایجاد می کند که کلاینت و سرور با استفاده (Protected Access Credential (PAC یکدیگر را تایید هویت کرده و این تانل امن را برقرار می کنند. فاز 2 تایید هویت کلاینت را در تانل ایجاد شده انجام می دهد کلاینت یوزر و پسورد خود را برای تایید هویت ارسال می کند. در EAP-FAST برقراری تانل متکی به PAC و توسط authentication server مدیریت می گردد. در تصویر زیر نمونه آنرا می بینید :
دوستان مفاهیم و مباحث تئوری به اتمام رسیده و از قسمت بعد وارد مباحث پیاده سازی 802.1x خواهیم شد.
آموزش راه اندازی 802.1x در سیسکو
802.1x توسط IEEE به عنوان یک استاندارد ارائه شده است که به وسیله آن می توانیم دستگاه های متصل به شبکه را تایید هویت کنیم و دسترسی آنها را کنترل کنیم و همچنین از دسترسی دستگاه هایی که هویت آنها تایید نشود جلوگیری کنیم. برای تایید هویت و کنترل دسترسی ما نیاز به Supplicant (کلاینت) ، یک authenticator (مانند روتر و سوئیچ) و یک authentication server داریم. در این بخش نحوی طراحی و پیاده سازی 802.1x را مورد بررسی قرار خواهیم داد.در تصویر زیر اجزای مورد نیاز برای پیاده سازی 802.1x نمایش داده شده است :
این تایید هویت و کنترل دسترسی باعث می شود قبل از دریافت هرگونه سرویسی روی پورت هر کلاینت باید تایید هویت شود. قبل از اینکه پورت در وضعیت authorized قرار گیرد 802.1x تنها اجازه عبور ترافیک (Extensible Authentication Protocol over LAN (EAPOL) ، Cisco Discovery Protocol (CDP و (Spanning Tree Protocol (STP را روی پورت می دهد.فعال کردن 802.1x روی پورت های لایه 2 از نوع Access و همچنین پورت های لایه 3 امکان پذیر است اما امکان فعال کردن 802.1x روی پورت های dynamic یا trunk و همچنین روی پورت های که در حالت (Switched Port Analyzer (SPAN یا (Remote SPAN (RSPAN قرار دارند وجود ندارد.
پیشنیازهای راه اندازی 802.1x در سیسکو چیست؟
در این بخش پیاده سازی 802.1x را به صورت ساده بررسی می کنیم. نحوی تایید هویت کاربر جهت دسترسی به شبکه را مورد بررسی قرار می دهیم. تایید هویت Supplicant براساس کاربر انجام خواهد گرفت. تایید هویت براساس کامپیوتر را در بخش های بعدی پیاده سازی خواهیم کرد. در این بخش نحوی انتخاب بین گزینه موجود در بخش های مختلف را مورد بررسی قرار می دهیم . در این بررسی به ابزار های زیر نیاز خواهیم داشت :
- یک Authenticator مانند یک سوئیچ Catalyst
- یک Authentication Server مانند Cisco Secure ACS
- یک Supplicant مانند (Cisco Secure Services Client (CSSC
با توجه به اینکه پیاده سازی 802.1x نیاز دارد که چند بخش و تکنولوژی در کنار یکدیگر کار کنند. قبل از پیاده سازی جمع آوری اطلاعات مهم در این زمینه به پیاده سازی درست و موفقیت آمیز آن کمک زیادی می کند. برخی از این اطلاعات به شرح زیر هستند :
- مشخص کردن اینکه روی کدام سوئیچ ها می خواهیم 802.1x را پیدا سازی کنیم.
- مشخص کردن اینکه از چه دیتابیسی برای تایید هویت کاربران استفاده شود مانند Windows Active Directory ، ACS و ...
- مشخص کردن اینکه چه نوع کلاینت هایی ( پلتفرم و سیستم عامل) می خواهند از شبکه استفاده کنند.
- مشخص کردن اینکه مسیر ارتباطی بین Suppliant و Authentication Server یک مسیر امن و مطمئن است یا خیر؟
انتخاب بین گزینه های موجود :
براساس اطلاعات جمع آوری شده در پیاده سازی 802.1x شما می توانید انتخاب هایی داشته باشید. برخی از این انتخاب ها به شرح زیر هستند :
- انتخاب روش EAP : چندین روش EAP برای انتخاب وجود دارد. که براساس نیاز شما و ویژگی های این روش ها که قبلا توضیح داده شد می توانید یک روش که مناسب شرایط و نیاز های شما است را انتخاب کنید. به طور مثال اگه می خواهید از پسورد های ساده استفاده کنید می توانید روش EAP-FAST را انتخاب کنید یا اگر بخواهید از نرم افزارهای جانبی استفاده نکنید و از امکانات سیستم عامل استفاده کنید می توانید از PEAP استفاده کنید که توسط سیستم عامل ویندوز 7 پشتیبانی می شود استفاده کنید و یا اینکه اگر بخواهید هر دو کلاینت و سرور یکدیگر را تایید هویت کند می توانید از روش هایی مانند LEAP یا PEAP استفاده کرد. همانطور که دیدید براساس شرایط و نیازهای ما می توان از بین روش های EAP یک روش را برای شبکه خود در نظر گرفت.
- انتخاب Supplicant : شما می توانید از supplicant هایی که توسط سیستم عامل یا به وسیله نرم افزار های جانبی فراهم شده اند استفاده کنید. به طور مثال PEAP توسط ویندوز 7 ارائه می شود و یا نرم افزار (Cisco Secure Services Client (CSSC به عنوان یک نرم افزار Supplicant ارائه شده است.
مراحل کلی راه اندازی 802Dot1X چیست؟
پیاده سازی 802.1x شامل مراحل زیر است :
- مرحله اول : در این مرحله دستگاه هایی مانند سوئیچ یا Access Point به عنوان authenticator تنظیم می شود.
- مرحله دوم : تعریف guest VLAN و restricated VLAN (این مرحله اختیاری می باشد)
- مرحله سوم : فعال کردن روش EAP مانند EAP-FAST در Authentication Server مانند Cisco Secure ACS و همچنین تعریف کاربران در آن
- مرحله چهارم : تنظیم 802.1x در Supplicant مانند (Cisco Secure Services Client (CSSC در کلاینت
تنظیم Authenticator در پروتکل 802.1x چگونه انجام می شود؟
برای اینکه یک سوئیچ یا دستگاه دیگر به عنوان Authenticator عمل کند باید چندین عمل روی آن انجام داد که به شرح زیر است :
- تنظیم Radius Server و AAA Server در سوئیچ
- تنظیم سوئیچ جهت استفاده از AAA و Radius برای تایید هویت
- فعال کردن 802.1x به صورت Globally در سوئیچ
- تنظیم پورت های Access در سوئیچ که باید تایید هویت کاربران را انجام دهد
- (اختیاری) تنظیم periodic reauthentication
- (اختیاری) تنظیم timers and thresholds
- (اختیاری) تنظیم guest policy در صورت نیاز در سوئیچ
برخی از این عملیات ها اختیاری است که به شرح آنها می پردازیم :
periodic reauthentication : در بعضی مواقع 802.1x جهت تایید هویت در سوئیچی که کلاینت به آن متصل است تنظیم نشده است و تایید هویت توسط سوئیچ بالا دست انجام می شود. تنظیم periodic reauthentication در آن سوئیچ باعث می شود که در بازه های مشخص اقدام به تایید هویت مجدد نماید و از متصل بودن کلاینت اطمینان حاصل کند و پورت را در وضعیت Authorized نگه دارد.
- timers and thresholds : تایمر پیش فرض برای تایید هویت در IOS سیسکو بسیار محافظه کارانه تنظیم شده است اگر پروسه تایید هویت شما به دلایل مختلف زمانبر است می توانید این تایمر را براساس نیاز خود تنظیم کنید.
- guest policy : ایجاد guest network اختیاری است و برای کلاینت هایی که از 802.1x پشتیبانی نمی کنند یا هویت آنها تایید نشده است مورد استفاده قرار می گیرد. با استفاده از guest network یک دسترسی محدود به کاربر مانند دسترسی به فقط اینترنت داده می شود.
تشریح سناریوی راه اندازی 802.1x به زبان ساده
سناریوی که قرار است باهم پیاده سازی کنیم در تصویر زیر مشاهده می کنیم. این سناریوی شامل بخش های زیر است :
- کاربران داخلی سازمان برای اتصال از 802.1x استفاده می کنند و همچنین کاربرانی guest وجود دارد.
- سوئیچ به عنوان authenticator عمل می کند.
- VLAN 100 برای quest network مورد استفاده قرار می گیرد و تنها دسترسی به اینترنت را فراهم می کند.
- از Cisco Secure ACS 4.2 به عنوان AAA Server استفاده می کنیم که در windows server اجرا می شود و برای 802.1x به عنوان Radius عمل می کند.
تنظیم RADIUS Server برای راه اندازی 802.1x
اولین عمل برای فعال کردن Authenticator تنظیم RADIUS server است :
- مرحله 1 : دستور radius-server host به همراه آدرس IP سرور Radius را استفاده می کنیم. سوئیچ برای تایید هویت با این سرور ارتباط برقرار می کند. همچنین با استفاده از کلمه key می توانیم از این ارتباط حفاظت کنیم.
- مرحله 2 : (اختیاری) شما می توانید پورت های پیش فرض authentication و accounting را تغییر دهید.
نکته : می توانید دو RADIUS server تعریف کنید که برای AAA Server افزونگی (Redundant) فراهم می کند. استفاده از کلید پیچیده و همچنین کلید های متفاوت برای هر سوئیچ برای افزایش امنیت پیشنهاد می شود.
نکته : قبل از استفاده از این دستور باید AAA فعال شده باشد.
در دستورات زیر Radius server با آدرس 10.1.1.1 و پورت های استاندارد UDP 1812 , 1813 و کلید rad123 تنظیم شده است :
SW(config)#radius-server host 10.1.1.1 auth-port 1812 acct-port 1813 key rad123
آموزش فعال کردن AAA و استفاده از RADIUS برای Authentication
در این مرحله AAA فعال می شود و برای Authentication استفاده از RADIUS تعیین می شود.
- مرحله 1 : AAA را به صورت globally با استفاده از دستور aaa new-model فعال می کنیم.
- مرحله 2 : در اینجا مشخص می کنیم که aaa authentication برای تایید هویت از RADIUS Server استفاده کند.
در دستورات زیر فعال کردن AAA و همچنین تعیین RADIUS Server برای AAA Authentication برای تایید هویت کلاینت ها نشان داده شده است :
SW(config)#aaa new-model
SW(config)#aaa authentication dot1x default group radius none
آموزش فعال کردن 802.1X به صورت Globally و در User Ports
در این مرحله 802.1x به صورت globally فعال می شود و سپس 802.1x در پورت های access سوئیچ فعال می گردد.
- مرحله 1 : 802.1x با استفاده از دستور system-auth-control به صورت globally فعال می شود.
- مرحله 2 : در پورت هایی که باید 802.1x authentication در آنها فعال گردد مطمئن شوید که پورت در حالت access قرار دارد برای اینکه پورت را در حالت access قرار دهیم از دستور switchport mode access در اینترفیس مربوطه استفاده می کنیم.
- مرحله 3 : اینترفیس را در vlan مناسب قرار دهید که با استفاده از دستور switchport access vlan vlan-id انجام می شود.
- مرحله 4 : 802.1x را در اینترفیس مورد نظر با استفاده از دستور authentication port-control فعال می کنیم.
در دستورات زیر فعال کردن 802.1x به صورت globally و همچنین قرار دادن اینترفیس در حالت access و تعیین vlan و در نهایت فعال کردن 802.1x در اینترفیس نمایش داده شده است.
SW(config)#dot1x system-auth-control
SW(config)#interface fastethernet 0/1
SW(config-if)#switchport mode access
SW(config-if)#switchport access vlan 90
SW(config-if)#authentication port-control auto
آموزش تنظیم Periodic Reauthentication در دات وان ایکس
تنظیم این مرحله اختیاری می باشد و می توانید آنرا روی یک یا چند اینترفیس تنظیم کنید. به صورت پیش reauthentication فعال نیست و این می تواند در برخی از شبکه ها که روی همه سوئیچ 802.1x فعال نیست باعث بروز مشکل شود. به طور مثال اگر 802.1x در لایه distribution فعال باشد این سوئیچ ها از قطع شدن ارتباط کلاینت باخبر نمی شود. Periodic reauthentication در بازه های زمانی مشخص اقدام به تایید هویت مجدد کلاینت ها می کند که باعث می شود این مشکل از بین برود. جهت فعال کردن این ویژگی مراحل زیر را باید طی کنیم :
- مرحله 1 : با استفاده از دستور authentication periodic در اینترفیس مورد نظر این قابلیت فعال می شود.
- مرحله 2 : با استفاده از دستور authentication timer reauthenticate می توانیم بازه زمانی برای تایید هویت مجدد را مشخص کنیم. به صورت پیش فرض مقدار آن برابر 3600 ثانیه یعنی هر یک ساعت یکبار می باشد. کم کردن این زمان به لحاظ امنیتی مفید است اما از سوی دیگر می تواند بار بیشتری متوجه RADIUS Server کند. در نتیجه مقدار آنرا طوری باید انتخاب کرد که هر دو بحث امنیت و بار تحمیلی به سرور در آن در نظر گرفته شود.
در دستورات زیر فعال کردن periodic reauthentication نمایش داده شده است :
SW(config)#interface fastethernet 0/1
SW(config-if)#authentication periodic
SW(config-if)#authentication timer reauthenticate 600
آموزش تنظیم Timers and Thresholds در دات وان ایکس
تنظیم این مرحله اختیاری است شما می توانید با تنظیم تایمر EAPOL عملیات تایید هویت 802.1x و تبادل بین supplicant و authenticatorرا بهینه کنید. در تصویر زیر بسته هایی که بین supplicant و authenticator و authentication server تبادل می شود نمایش داده شده است.
نکته : EAPOL بین supplicant و authenticatorمورد استفاده قرار می گیرد و بین authenticator و authentication server از RADIUS استفاده می شود.
Authenticator انتظار دریافت فریم EAP-Response-Identity را در پاسخ به فریم EAP-Request-Identity دارد. اگر در زمان تعیین شده فریمی دریافت نکند مجدد اقدام به ارسال فریم EAP-Request-Identity می کند. زمان پیش فرض 30 ثانیه می باشد. شما می توانید این زمان را برای پاسخگویی بهتر تغییر دهید که پروسه تایید هویت سریع تر انجام شود. برای تغییر این زمان از دستور dot1x timeout txperiod در اینترفیس مورد نظر می توانید استفاده کنید.
اگر تایید هویت کلاینت به دلایلی مانند اشتباه وارد کردن پسورد با شکست مواجه شود Authenticator یک بازه زمانی صبر می کند سپس برای تایید هویت اقدام می کند که این بازه زمانی به صورت پیش فرض 60 ثانیه می باشد. شما می توانید با کم کردن این زمان پروسه تایید هویت را سریع انجام دهید. برای تغییر این بازه زمانی می توانید از دستور dot1x timeout quiet-period در اینترفیس مورد نظر استفاده کنید.در دستورات زیر تنظیم این زمان ها نمایش داده شده است :
SW(config-if)#interface fastethernet 0/1
SW(config-if)#dot1x timeout tx-period 10
SW(config-if)#dot1x timeout quiet-period 10
آموزش تنظیم guest policy برای دات وان ایکس
این مرحله نیز اختیاری است در این مرحله یک VLAN برای کلاینت هایی که تایید هویت آنها با شکست مواجه شده است یا از 802.1x پشتیبانی نمی کنند در نظر گرفته می شود. به این معنی که کلاینت هایی که تایید هویت نمی شوند در این VLAN قرار می گیرند. این VLAN باید از قبل در سوئیچ وجود داشته باشد.
در حالتی که تایید هویت با شکست مواجه شود شما باید مشخص کنید بعد از چند بار که تایید هویت با شکست مواجه شد کلاینت را در این VLAN قرار دهد. از دستور authentication event fail retry number action authorize vlan در حالت تایید نشدن هویت استفاده می شود و برای حالت عدم پشتیبانی از 802.1x از دستور authentication event no-response action authorize VLAN استفاده می شود.در دستورات زیر تعیین Guest VLAN نمایش داده شده است :
SW(config-if)#interface fastethernet 0/1
SW(config-if)#authentication event fail retry 2 action authorize vlan 100
SW(config-if)#authentication event no-response action authorize vlan 100
روش بررسی و خطایابی در Authenticator
در صورت بروز مشکل در Authenticator برای تایید هویت می تواند عملکرد شبکه را تحت تاثیر خود قرار دهد و باعث شود بخشی از شبکه از دسترس خارج شود. دستور show dot1x وضعیت 802.1x را به نمایش می دهد همانند تصویر زیر :
دستور show dot1x all summary که در تصویر زیر می بینید وضعیت هر پورت که را که در آن 802.1x فعال شده باشد را به ما نشان می دهد:
در قسمت بعد نحوی تنظیم ACS را فرا خواهیم گرفت
آموزش تنظیم RADIUS Server برای راه اندازی Dot1X
در این سناریو از EAP-FAST برای پیاده سازی 802.1x استفاده می شود.EAP-FAST به عنوان یک معماری امنیتی برای حفاظت از مذاکرات EAP به وسیله تانل Transport Layer Security (TLS) می باشد. این تانل به وسیله shared secrect ایجاد می شود و به آن Protected Access Credentials (PAC) گفته می شود.تنظیم RADIUS Server برای 802.1x شامل چندین مرحله است که به شرح زیر است :
- تنظیم Authenticator در سرور AAA
- تنظیم EAP-FAST در سرور AAA
- مشخص کردن دیتابیس کاربران در سرور AAA
- (اختیاری) تولید فایل PAC
- (اختیاری) تنظیم Network Access Restrictions (NAR) برای کاربران 802.1x
- فعال کردن logging
انتخاب بین گزینه های موجود :
قبل از اجرا ، در چند بخش باید انتخاب هایی انجام شود که به شرح زیر است :
- نیاز به استفاده از Network Access Restrictions (NAR) وجود دارد یا خیر؟ از NAR می توان برای اعمال محدودیت هایی اضافی برای کاربران قبل از اینکه کاربر هویت آن تایید شود استفاده کرد. به طور مثال ، شما می توانید دسترسی به یک محدوده خاص از شبکه را برای کاربران مشخص کنید. زمانی که از NAR استفاده می کنید گزینه های مختلفی برای استفاده وجود دارد.
- انتخاب نحوی تهیه فایل Protected Access Credential (PAC) از اهمیت ویژه ای برخوردار است. اگر شبکه بین سرور AAA و سوئیچ یک مسیر کاملا امن است می توانید فایل PAC را به صورت خودکار ایجاد کنید. اگر مسیر امن نیست باید فایل PAC به صورت دستی ایجاد گردد.
- یکی دیگر از انتخاب های مهم محل قرار گیری اطلاعات کاربران می باشد. می توان از دیتابیس داخلی Cisco Secure ACS یا یک دیتابیس خارجی استفاده کرد که ACS برای تایید هویت به آن مراجعه خواهد کرد. استفاده از دیتابیس خارجی مانند اکتیو دایرکتوری باعث سهولت در مدیریت می شود و همچنین ویژگی single sign-on برای کاربر فعال می شود.
آموزش تنظیم Cisco Secure ACS برای دات وان ایکس
کلاینت هایی که پورت های سوئیچ متصل هستند نیاز به تایید هویت دارند. یوزر و پسورد با استفاده EAP-MSCHAPv2 توسط تانل EAP-FAST با سرور AAA تایید هویت انجام می شود. Authenticator که IOS سیسکو را اجرا کرده است و IP آدرس 192.168.1.1 به عنوان Management IP برای آ« مشخص شده است. VLAN 100 برای guest network استفاده می شود و تنها دسترسی به شبکه اینترنت در آن فراهم شده است. از Cisco Secure ACS 4.2 به عنوان RADIUS Server استفاده می شود که روی Windows Server با IP آدرس 10.1.1.1 اجرا شده است.
آموزش تنظیم Authenticator در ACS
برای اینکه Cisco Secure ACS کلاینت های را تایید هویت کند باید Authenticator به عنوان یک AAA Client در ACS تعریف شود. مراحل زیر را برای تعریف یک Authenticator به عنوان AAA Client در ACS دنبال کنید :
- مرحله 1 : از پنل سمت چپ ACS روی گزینه Network Configuration کلیک کنید.
- مرحله 2 : روی کلید Add Entry زیر جدول AAA Client کلیک کنید.
- مرحله 3 : یک نام در کادر AAA Client Hostname برای سوئیچ وارد کنید.
- مرحله 4 : IP آدرس سوئیچ را در کادر AAA Client IP Address وارد نمایید.
- مرحله 5 : مقدار کادر Key را برابر مقداری که در سوئیچ به عنوان key برای RADIUS Server در نظر گرفته اید قرار دهید.
- مرحله 6 : از لیست Authenticate Using گزینه RADIUS (Cisco IOS/PIX) را انتخاب کنید.
- مرحله 7 : روی کلید Submit + Restart کلیک کنید.
در تصویر زیر یک AAA Client با نام AP و IP آدرس 10.0.0.106 با کلید sharedsecret به Cisco Secure ACS اضافه شده است. نوع ارتباط بین Cisco Secure ACS و سوئیچ را RADIUS (Cisco IOS/PIX) تعیین شده است.
نکته : اگر Authenticator را به عنوان AAA Client در Cisco Secure ACS اضافه نکنید درخواست های تایید هویت که توسط Authenticator به Cisco Secure ACS ارسال شوند پاسخ داده نخواهند شد.
آموزش تنظیم EAP-FAST در Cisco Secure ACS
بخش دوم تنظیمات Cisco Secure ACS به فعال کردن EAP-FAST اختصاص دارد. مراحل زیر را برای فعال کردن EAP-FAST در ACS دنبال کنید :
- مرحله 1 : از پنل سمت چپ ACS گزینه System Configuration را انتخاب کنید.
- مرحله 2 : روی گزینه Global Authentication Setup کلید کنید.
- مرحله 3 : روی گزینه EAP-FAST Configuration کلیک کنید و در صفحه باز شده چک باکس Allow EAP-FAST را انتخاب کنید تا EAP-FAST فعال شود.
- مرحله 4 : در کادر Authority ID Info یک نام منحصربه فرد وارد کنید. در اینجا نام Cisco برای آن در نظر گرفته شده است.
- مرحله 5 : اگر مسیر برای انتقال فایل PAC امن است چک باکس Allow Anonymous In-band PAC Provisioning را انتخاب کنید در غیر اینصورت این گزینه را انتخاب نکنید و به صورت دستی انتقال فایل PAC را انجام دهید.
- مرحله 6 : در قسمت Allowed inner methods گزینه EAP-MSCHAPv2 را انتخاب کنید.
- مرحله 7 : روی کلید Submit + Restart کلیک کنید.
آموزش تعریف کاربران در Cisco Secure ACS
مراحل زیر را دنبال کنید که در دیتابیس داخلی Cisco Secure ACS کاربر تعریف کنید.
- روی گزینه User Setup در منوی سمت چپ کلیک کنید تا پنجره مربوطه باز شود.
- یک نام منحصر به فرد در کادر User وارد کنید سپس کلید Add/Edit را بزنید تا پنجره مربوط به تنظیمات کاربر ظاهر شود.
- در این قسمت یک پسورد برای کاربر در نظر بگیرد و همچنین آنرا عضو یک گروه کنید.
- کلید Submit را بزنید.
در تصویر زیر بخش تنظیمات کاربر نمایش داده شده است :
آموزش تولید فایل PAC برای راه اندازی 802.1x
این مرحله اختیاری است. اگر مسیر بین Supplicant و سرور AAA یک مسیر کاملا امن نیست پیشنهاد می شود عمل توزیع فایل PAC به صورت دستی انجام گیرد. برای اینکه اینکار به صورت دستی انجام گیرد باید در ابتدا فایل PAC باید تولید شود. در این مرحله نحوی تولید فایل PAC توضیح داده شده است به همین منظور مراحل زیر را دنبال کنید :
- Command Prompt را در مسیر نصب Cisco Secure ACS با دسترسی Administrator باز کنید. همانند تصویر زیر :
- دستور CSUtil را با سوئیچ های –a و –t اجرا کنید تا فایل PAC تولید شود.
- فایل تولید شده را روی تمام Supplicant ها کپی کنید.
نکته : اگر PAC فایل به صورت خودکار به Supplicant ها ارسال می شود این کار در طی اولین تایید هویت EAP-FAST انجام می گیرد.
آموزش تنظیم (Network Access Restrictions (NAR برای کاربران 802.1x
این مرحله اختیاری است. اگر بخواهیم کاربر را برای تایید هویت تنها به یک RADIUS Clients محدود کنیم می توانیم از (Network Access Restrictions (NAR استفاده کنیم. در این مرحله نحوی تنظیم NAR نمایش داده شده است. برای اینکار مراحل زیر را دنبال کنید :
- روی گزینه Group Setup از منوی سمت چپ کلیک کنید تا پنجره مربوطه باز شود.
- گروهی که حاوی کاربر 802.1x است که می خواهیم آنرا محدود کنیم را انتخاب کنید سپس کلید Edit Settings را بزنید تا پنجره مربوطه باز شود.
- در پنجره تنظیمات گروه به بخش Network Access Restrictions و چک باکس Define CLI/DNIS-based Access Restrictions را انتخاب کنید. در کادر AAA Client نام دستگاهی که می خواهید تایید هویت را انجام دهد را انتخاب کنید و مقدار کادر های Port ، CLI و DNIS را برابر * قرار دهید سپس کلید enter را کلیک کنید تا به لیست اضافه گردد.
- کلید Submit + Restart را کلیک کنید.
در تصویر زیر این بخش نمایش داده شده است :
آموزش فعال کردن logging در 802.1x
Cisco Secure ACS می تواند تایید هویت های موفق را نیز همانند تایید هویت های ناموفق برای کاربر را log گیری کند. Log گیری برای تایید هویت های موفق به صورت پیش فرض غیرفعال است. برای فعال کردن آن مراحل زیر را طی کنید:
- روی کلید Network Configuration از منوی سمت چپ کلید کنید.
- گزینه logging را انتخاب کنید تا صفحه مربوط به تنظیمات logging نمایش داده شود.
- در جدول ACS Report روی گزینه Configure از ستون CSV و ردیف Passed Authentication کلیک کنید.
- در این صفحه چک باکس Log to CSV Passed Authentication Report را انتخاب کنید و کلید Submit را بزنید.
در تصویر زیر این بخش نمایش داده شده است :
تنظیم Cisco Secure ACS به اتمام رسیده است و در مرحله بعدی باید Supplicant تنظیم شود.
آموزش تنظیم Cisco Secure Service Client به عنوان Supplicant
برای اینکه کلاینت برای تایید هویت از EAP-FAST استفاده کند باید (Cisco Secure Services Client (CSSC روی کلاینت نصب و تنظیم گردد. این به طور کلی شامل مراحل زیر است :
- ساخت پروفایل CSSC Configuration با استفاده از CSSC Management Utility
- ساخت پروفایل و Policy برای تایید هویت
- تنظیم تایمرهای 802.1x
- انتخاب متد تایید هویت (یوزر ، دستگاه یا هردو)
- انتخاب متد EAP
- ساخت پکیچ نصب CSSC حاوی Configuration Profile
- نصب پکیچ CSSC در کلاینت
ساخت پروفایل CSSC Configuration با استفاده از CSSC Management Utility
اولین مرحله ساخت پروفایل با استفاده از CSSC Management Utility است. خروجی CSSC Management Utility یک فایل XML است که شامل تنظیمات لازم برای Supplicant است. مراحل زیر را برای تنظیم پروفایل دنبال کنید :
- CSSC Management Utility را دانلود کنید و از حالت فشرده خارج کنید سپس فایل sscManagementUtility را اجرا کنید که صفحه اصلی ظاهر شود.
- گزینه Create New Configuration Profile را در صفحه اصلی انتخاب کنید.
- نسخه CSSC که می خواهید استفاده کنید را انتخاب کنید. که در اینجا ما از نسخه 5.1 استفاده می کنیم.
آموزش ساخت پروفایل و Policy برای تایید هویت در 802.1x
در مرحله بعد یک پروفایل مربوط به شبکه کابلی در پروفایل CSSC Configuration ایجاد می کنیم. مراحل زیر را دنبال کنید :
- اگر فقط گزینه Allow Wired انتخاب شود نیاز به لایسنس ندارد اما اگر بخواهید هر دو شبکه کابلی و وایرلس را استفاده کنید باید لایسنس را در کادر provide license وارد کنید.
- گزینه Attempt Connection After User Login را در بخش Connection Setting انتخاب کنید.
- گزینه Allow Wired Media را انتخاب کنید سپس کلید Next را بزنید.
- در صفحه Authentication Policy گزینه EAP FAST را در قسمت Allowed Authentication Modes انتخاب کنید و کلید Next را بزنید.
- در صفجه Network کلید Add Network را بزنید.
- تنظیمات مربوط به صفحه Network Media را بدون تغییر Next بزنید.
- یک نام برای پروفایل جدید در صفحه Wired Network Settings در نظر بگیرید. در بخش Security Level گزینه authenticating network را انتخاب کنید سپس کلید Next را بزنید.
ادامه تنظیمات را در بخش بعدی شرح خواهیم داد.
آموزش تنظیم تایمرهای 802.1x
تنظیم تایمرها اختیاری است. در این بخش تایمرها را در حالت پیش فرض استفاده می کنیم.
- صفحه Connection Setting دارای چهار گزینه برای تنظیم پارامترهای EAPOL در 802.1x می باشد که این پارامترها به شرح زیر هستند.
- AuthPeriod : این زمان که براساس ثانیه می باشد زمانی است که Supplicant در وضعیت Authenticating قرار می گیرد و منتظر دریافت پاسخ از Authenticator می ماند.
- HelpPeriod : این زمان براساس ثانیه می باشد. Supplicant بعد از اینکه تایید هویتش با خطا مواجه شد زمانی را صبر می کند سپس مجدد اقدام به تایید هویت می کند.
- StartPeriod : زمانی که Supplicant در وضعیت Connecting منتظر دریافت پاسخ EAP از Authenticator می ماند. این زمان براساس ثانیه می باشد.
- تعداد دفعاتی که Supplicant اقدام به تایید هویت می کند.
- روی کلید Next کلیک کنید تا صفحه بعدی باز شود.
آموزش انتخاب متد تایید هویت در 802.1x
در صفحه Network Connection Type گزینه User Connection را انتخاب کنید که اینکار باعث می شود تایید هویت فقط از طریق کاربر انجام شود.
آموزش انتخاب متد EAP برای 802.1x
تنظیم مد EAP برای هر دو تایید هویت داخلی و خارجی مورد استفاده قرار می گیرد در این مثال از EAS-MSCHAPv2 در داخل EAP-FAST استفاده می شود.
- گزینه EAP-FAST را به عنوان مد خارجی EAP در صفحه User Authentication انتخاب کنید. سپس روی کلید Configure کلیک کنید تا پنجره EAP-FAST Settings باز شود.
- چک باکس Validate Server Identity را در پنجره EAP-FAST Setting انتخاب کنید تا Supplicant سرور AAA را تایید هویت کند. در قسمت Credentials گزینه Authenticate Using a Password را انتخاب و سپس گزینه EAP-MSCHAPv2 را به عنوان مد داخلی EAP تعیین می کنیم.
- این بخش زمانی استفاده می شود که فایل PAC به صورت دستی مورد استفاده قرار گیرد. گزینه Use PACs را انتخاب کنید سپس با استفاده از کلید Add PAC File فایل PAC که در مراحل قبلی ایجاد کرده ایم را انتخاب می کنیم.
- کلید OK را بزنید.
- کلید Next را بزنید تا به مرحله بعد برویم.
نکات تعیین اعتبار برای تایید هویت در 802.1x
در این مرحله تنظیمات مربوط به تعیین اعتبار کاربر برای تایید هویت توسط سرور AAA انجام می گیرد. مراحل زیر را دنبال کنیم :
- در صفحه اول User Server Validation کلید Next را بزنید چون در این صفحه نیاز به هیچ تغییری نیست.
- در صفحه دوم نیز کلید next را می زنیم.
- در صفحه User Credentials مشخص کنید که CSSC چگونه یوزر و پسورد را برای تایید هویت دریافت کند. در کادر Protected Identity Pattern یوزر را وارد کنید.
- در این صفحه گزینه Prompt for Credentials را انتخاب کنید و سپس گزینه Remember While the User is Logged On را انتخاب کنید.
- کلید Finish را بزنید تا ایجاد پروفایل CSSC کامل شود.
آموزش ساخت پکیچ نصب CSSC حاوی Configuration Profile
در این مرحله یک پکیج Custom برای نصب CSSC با استفاده از پروفایلی که در مراحل قبل ایجاد کرده ایم ساخته می شود. مراحل زیر را دنبال کنید:
- sscManagementUtility را اجرا کنید تا صفحه اصلی CSSC Management Utility باز شود.
- گزینه Create Pre-Configured Client Component را انتخاب کنید.
- در کادر Client Source Package File مسیر فایل اصلی نصب CSSC را مشخص می کنیم.
- در کادر Processed and Signed Configuration File مسیر فایل پروفایلی که در مراحل قبل ایجاد کرده ایم را وارد می کنیم. پسوند فایل XML می باشد.
- در کادر Client Destination Package File یک مسیر را مشخص می کنیم که در آن فایل نصب Custome ذخیره خواهد شد. روی کلید Finish کلیک کنید تا ایجاد پکیج کامل شود.
آموزش نصب پکیچ CSSC در کلاینت
در اینجا باید فایل ایجاد شده را نصب کنیم تا بتوانیم برای Login به شبکه با استفاده از پروتکل 802.1x از آن استفاده کنیم.
آموزش Login کردن به شبکه با 802.1x
اگر همه چیز به درستی تنظیم شده باشد ، دفعه بعد که برای اتصال به شبکه با استفاده از پروتکل 802.1x تلاش شود ، توسط CSSC Supplicant یک پنجره ظاهر می شود و از شما می خواهد که پسورد را وارد نمایید. پسورد را وارد کنید و کلاینت تایید هویت خواهد شد و اجازه دسترسی به شبکه را پیدا خواهد کرد.
بررسی و خطایابی عملیات 802.1x
برای اینکه خطایابی را برای 802.1x به درستی انجام دهید باید این خطایابی را در اجزای مختلف 802.1x انجام دهید. که این اجزا شامل supplicant ، authenticator ، AAA server و همچنین ارتباط بین این اجزا می باشد. تصویر زیر این اجزا را نشان می دهد.
معرفی روشهای رفع اشکال یا Troubleshooting در 802.1x
برای اینکه عملیات 802.1x را خطایابی کنید مراحل زیر را دنبال کنید :
- تنظیمات Supplicant را در کلاینت بررسی کنید. می توانید با استفاده از دستور test eapol-capable روی سوئیچ بررسی کنید که Supplicant به درخواست EAPOL پاسخ می دهد. اگر پاسخی ارسال نشد تنظیمات Supplicant را با استفاده از CSSC GUI یا Management Utility بررسی کنید.
- بررسی کنید که RADIUS و اتصالات آن در Authenticator به درستی انجام شده است. می توانید با استفاده از دستور test aaa در سوئیچ و وارد کردن یوزر و پسورد اتصال بین سوئیچ و سرور AAA را بررسی کنید.
- بخش Log در نرم افزار ACS را مورد بررسی قرار دهید که دلیل عدم تایید هویت را پیدا کنید.
امیدوارم که این سری مطالب مورد توجه شما دوستان عزیز قرار گرفته شده باشد. برای آشنا بیشتر و بهتر یک ویدیو در این رابطه تهیه خواهد شد و در سایت برای شما دوستان عزیز قرار خواهد گرفت. موفق ، پیروز و توسینسو باشید.