آنچه در این مقاله می خوانید:
بررسی مفهوم AAA در امنیت شبکه به همراه پیکربندی
مدیر شبکه می تواند از طریق کنسول به یک روتر یا سوئیچ شبکه یا هر دستگاه دیگری دسترسی داشته باشد اما اگر دور از محل آن دستگاه بنشیند دیگر برقراری ارتباط با کنسول امکان پذیر نیست. بنابراین، در نهایت او باید از راه دور به آن دستگاه دسترسی داشته باشد.
اما از آنجایی که دسترسی از راه دور با استفاده از یک آدرس IP در دسترس خواهد بود، بنابراین، ممکن است یک کاربر غیرمجاز بتواند با استفاده از همان آدرس IP دسترسی پیدا کند، بنابراین برای اقدامات امنیتی، ما باید احراز هویت را قرار دهیم. همچنین بسته های رد و بدل شده بین دستگاه باید رمزگذاری شوند تا هر شخص دیگری نتواند اطلاعات حساس را ضبط کند. بنابراین، چارچوبی به نام AAA برای ارائه سطح امنیت اضافی استفاده می شود.
AAA (Authentication, Authorization, Accounting) چیست؟
فهرست محتوا
پروتکل AAA یک چارچوب مبتنی بر استاندارد است که برای کنترل افرادی که مجاز به استفاده از منابع شبکه (از طریق احراز هویت Authentication) هستند، کارهایی که مجاز به انجام آنها هستند (از طریق مجوز Authorization) و ضبط اقدامات انجام شده در حین دسترسی به شبکه (از طریق Accounting) استفاده می شود.
ـ Authentication:
فرآیندی که طی آن می توان تشخیص داد که کاربری که می خواهد به منابع شبکه دسترسی پیدا کند، با پرسیدن برخی از اعتبارنامه ها (credentials) مانند نام کاربری و رمز عبور معتبر است یا خیر. روشهای رایج عبارتند از قرار دادن احراز هویت در پورت کنسول، پورت AUX یا لاین های vty.
به عنوان مدیر شبکه، اگر شخصی بخواهد به شبکه دسترسی پیدا کند، میتوانیم نحوه احراز هویت کاربر را کنترل کنیم. برخی از این روش ها شامل استفاده از پایگاه داده محلی آن دستگاه (روتر) یا ارسال درخواست های احراز هویت به یک سرور مانند سرور ACS است. برای تعیین روشی که برای احراز هویت استفاده می شود، از فهرست روش های احراز هویت پیش فرض یا سفارشی استفاده می شود.
ـ Authorization:
پس از اینکه کاربر از طریق احراز هویت به منابع شبکه دسترسی پیدا کرد، قابلیت هایی را برای اعمال سیاست ها بر روی منابع شبکه فراهم می کند. پس از موفقیت آمیز بودن احراز هویت، می توان از مجوز برای تعیین اینکه کاربر مجاز به دسترسی به چه منابعی است و عملیاتی که می توان انجام دهد استفاده کرد.
به عنوان مثال، اگر یکی از ادمین های موجود در سازمان (که نباید به همه منابع دسترسی داشته باشد) بخواهد به دستگاه دسترسی داشته باشد، مدیر شبکه می تواند نمایی ایجاد کند که به دستورات خاص اجازه می دهد فقط توسط کاربر اجرا شوند (کامند هایی که در فهرست مجاز هستند). مدیر می تواند از لیست روش مجوز استفاده کند تا مشخص کند کاربر چگونه برای استفاده از منابع شبکه مجاز است، یعنی از طریق پایگاه داده محلی (پیکربندی در حال اجرا دستگاه) یا با استفاده از یک سرور ACS خارجی.
ـ Accounting:
ابزاری برای نظارت و ضبط رویدادهای انجام شده توسط کاربر در حین دسترسی به منابع شبکه فراهم می کند. حتی مدت زمان دسترسی کاربر به شبکه را نیز کنترل می کند. مدیر می تواند یک لیست روش اکانتینگ ایجاد کند تا مشخص کند که چه چیزی باید اکانتینگ شود و سوابق اکانتینگ برای چه کسی ارسال شود.
بیشتر بخوانید: پروتکل اینترنت IP چیست؟
چرا چارچوب AAA در امنیت شبکه مهم است؟
AAA بخش مهمی از امنیت شبکه است زیرا دسترسی افراد به یک سیستم را محدود می کند و فعالیت آنها را پیگیری می کند. به این ترتیب، کابران غیرمجاز را می توان دور نگه داشت، و می توان فعالیت کاربران مجاز را ردیابی کرد، که به مدیران اطلاعات ارزشمندی در مورد فعالیت های آنها می دهد.
دو نوع اصلی پروتکل AAA برای شبکه وجود دارد: دسترسی به شبکه (Network Access) و مدیریت دستگاه (Device Administration).
ـ دسترسی شبکه (Network Access):
دسترسی به شبکه شامل مسدود کردن، اعطا یا محدود کردن دسترسی بر اساس اعتبار یک کاربر است. AAA هویت یک دستگاه یا کاربر را با مقایسه اطلاعات ارائه شده یا وارد شده با پایگاه داده مورد نظرتأیید می کند. اگر اطلاعات مطابقت داشته باشد، اجازه ی دسترسی به شبکه داده می شود.
ـ مدیریت سوئیچ سیسکو (Device Administration):
مدیریت سوئیچ سیسکو شامل کنترل دسترسی به session ها، کنسول های دستگاه شبکه، secure shell (SSH) و موارد دیگر است. این نوع دسترسی با دسترسی به شبکه متفاوت است، زیرا افراد مجاز به ورود به شبکه را محدود نمیکند، بلکه به دستگاههایی که میتوانند به آن دسترسی داشته باشند، محدود میشود.
بیشتر بخوانید: پروتکل SSH چیست و چه کاربردی دارد؟
انواع پروتکل AAA:
چندین پروتکل وجود دارد که عناصر AAA را برای تضمین امنیت هویت ترکیب می کند.
ـ Remote Authentication Dial-In User Service (RADIUS):
RADIUS یک پروتکل شبکه است که توابع AAA را برای کاربران شبکه راه دور با استفاده از مدل کلاینت/سرور انجام می دهد. RADIUS به طور همزمان احراز هویت و مجوز را برای کاربرانی که سعی در دسترسی به شبکه دارند فراهم می کند. RADIUS همچنین تمام بسته های داده AAA را می گیرد و آنها را رمزگذاری می کند و سطح امنیتی بیشتری را ارائه می دهد.
RADIUS در سه مرحله کار می کند:
کاربر درخواستی را به یک سرور دسترسی به شبکه (NAS) ارسال می کند، سپس NAS یک درخواست برای دسترسی به سرور RADIUS ارسال می کند که با پذیرش، رد یا به چالش کشیدن آن درخواست پاسخ می دهد.
بیشتر بخوانید: RADIUS Server چیست و چگونه کار می کند؟
ـ Diameter:
پروتکل Diameter یک پروتکل AAA است که با Long-Term Evolution (LTE) و شبکه های چند رسانه ای کار می کند. Diameter تکامل RADIUS است که از دیرباز برای مخابرات استفاده می شده است. با این حال، Diameter به طور سفارشی برای بهینه سازی اتصالات LTE و انواع دیگر شبکه های تلفن همراه طراحی شده است.
ـ Terminal Access Controller Access-Control System Plus (+TACACS):
مشابه RADIUS، +TACACS از مدل کلاینت/سرور برای اتصال کاربران استفاده می کند. با این حال، +TACACS کنترل بیشتری را در مورد راه هایی که از طریق آن دستورات مجاز می شوند را امکان پذیر می کند. +TACACS با ارائه یک کلید مخفی شناخته شده توسط کلاینت و سیستم +TACACS کار می کند. هنگامی که یک کلید معتبر ارائه می شود، اجازه اتصال داده می شود تا ادامه یابد.
+TACACS فرآیندهای احراز هویت و مجوز را از هم جدا می کند و این قابلیت، آن را از RADIUS که آنها را ترکیب می کند متمایز می کند. همچنین، +TACACS، مانند RADIUS، بسته های AAA خود را رمزگذاری می کند. بنابراین، مدیریت دسترسی را با پروتکل های هویت AAA ساده کنید
در یک zero-trust network access(ZTNA) ، همه کاربران و دستگاهها بهطور پیشفرض مورد بیاعتمادی هستند و نمیتوان اجازه دسترسی به سیستم را تا زمانی که بهاندازه کافی حقوق احراز هویت و مجوز خود را اثبات نکرده باشند، ندارند. این اغلب با استفاده از احراز هویت دو مرحله ای (FA2) انجام می شود.
بیشتر بخوانید: شبکه ZTN یا Zero Trust Network چیست؟
مزایای AAA Framework:
- پروتکل aaa مقیاس پذیری شبکه را بهبود می بخشد. ظرفیت یک سیستم برای مدیریت مقدار فزاینده ای از کار با افزودن منابع به سیستم به عنوان مقیاس پذیری شناخته می شود.
- اجازه می دهد تا شبکه انعطاف پذیرتر و کنترل شود.
- به استانداردسازی پروتکل های شبکه کمک می کند.
- RADIUS به هر کاربر امکان می دهد مجموعه ای از اعتبارنامه (credential) های خود را داشته باشد.
- مدیران IT یک نقطه تماس واحد برای احراز هویت کاربر و سیستم خواهند داشت.
معایب AAA Framework:
اشکالات زیر در پیاده سازی چارچوب AAA وجود دارد:
- پیکربندی اولیه در سرورهای RADIUS می تواند دشوار و زمان بر باشد.
- انتخاب نرم افزار سرور RADIUS و متدولوژی استقرار مناسب برای تجارت شما کار دشواری است.
- تعمیر و نگهداری سخت افزار در محل می تواند پیچیده و زمان بر باشد.
پیکربندی AAA:
در این مثال ما در حال پیکربندی AAA Authentication در روتر هستیم. که شامل مراحل زیر است:
- ابتدا AAA را در روتر فعال کنید.
router1(config)#aaa new-model
AAA با دستور aaa new-model فعال می شود.
- ایجاد لیست احراز هویت پیش فرض
با دستور aaa authentication ورود به سیستم محلی پیش فرض فعال می شود.
در این دستور، پیشفرض به این معنی است که از لیست متدهای پیشفرض استفاده میکنیم و local Means ما از پایگاه داده محلی استفاده خواهیم کرد.
- لیست را روی خطوط vty اعمال کنید.
router1(config)#line vty 0 4
router1(config)#login authentication default
router1(config)#exit
پس از ایجاد لیست متدهای پیشفرض، باید آن را روی خطوط vty اعمال کنیم تا هر زمان که کاربر سعی میکند از طریق SSH یا telnet به روتر دسترسی پیدا کند، کاربر باید اطلاعاتی را ارائه کند که پیکربندی شده است.
- ایجاد کاربر لوکال در روتر
router1(config)#username MRSHABAKE
privilege 15 password 123456
این مهمترین مرحله است زیرا باید یک پایگاه داده محلی ایجاد کنیم که در آن نام کاربری (به عنوان مثال MRSHABAKE)،privilege Level 15 و رمز عبور (به عنوان مثال 123456) را ارائه کنیم.
توجه: لیست متدهای پیشفرض که روی خطوط vty اعمال کردهایم، کاربر (که میخواهد به روتر دسترسی داشته باشد) را مجبور میکند تا زمانی که میخواهد از راه دور از طریق telnet یا SSH دسترسی از راه دور داشته باشد، این اطلاعات را وارد کند.
- Debugging(اشکال زدایی) aaa authentication
ما می توانیم پیام های احراز هویت AAA را از طریق دستور “debug aaa authentication” ببینیم.
router1#debug aaa authentication
حال به روتر 1 (آدرس IP-10.1.1.1/24) از روتر2 (آدرس IP – 10.1.1.2/24) telnet می زنیم ، یوزر و پسورد را وارد می کنیم.
router2# telnet 10_1_1_1
Trying 10_1_1_1 …. Open
User Access Verification
Username: MRSHABAKE
:Password
router1<
به محض اینکه کاربر اطلاعات کاربری را وارد کرد، می توانیم پیام های احراز هویت را مشاهده کنیم. علاوه بر این، اگر بخواهیم قبل از درخواست اعتبار، بنری را اعمال کنیم، می توانیم آن را با استفاده از دستور نشان داده شده اعمال کنیم:
router1(config)#aaa authentication
banner ” welcome to MRSHABAKE network”
اگر بخواهیم اعلان (prompt) نام کاربری و رمز عبور اضافه کنیم، میتوانیم آن را با استفاده از دستور زیر اعمال کنیم:
router1(config)#aaa authentication
username-prompt “enter your username”
router1(config)#aaa authentication
password-prompt “enter your password”
همچنین، اگر بخواهیم زمانی که اطلاعات وارد شده توسط کاربر اشتباه است، پیامی را نشان دهیم، میتوانیم آن را با استفاده از دستور زیر نشان دهیم:
router1(config)#aaa authentication
fail-message “wrong username or password
Please try again…”
همچنین، میتوانیم تعداد تلاشهایی را که کاربر میتواند اطلاعات اشتباه وارد کند، محدود کنیم. پس از سومین تلاش برای وارد کردن اطلاعات، ارتباط به طور خودکار خاتمه می یابد:
router1(config)#aaa authentication
attempts login 3
شما می توانید کلیه تجهیزات شبکه مورد نیاز خود را از فروشگاه اینترنتی مسترشبکه بزرگترین فروشگاه اینترنتی در ایران با بهترین قیمت و کیفیت، همراه با گارانتی معتبر خریداری نمایید. |