Kerberos چیست و چگونه امنیت احراز هویت را تضمین میکند؟

جرایم سایبری، واقعیت ناخوشایندی است که نه تنها امیدی به کمتر شدن آن نیست بلکه روزبهروز بدتر خواهد شد. طبق تحقیقات انجام شده خسارات ناشی از جرایم سایبری تا سال ۲۰۲۵ برای جهان ۲۵ تریلیون دلار هزینه خواهد داشت؛ در نتیجه دنیای دیجیتال همواره در تلاش است راهبردهای جدیدی برای تقویت امنیت سایبری پیدا کند و به کار گیرد. یکی از این راهکارها استفاده از پروتکل احراز هویت Kerberos است.
در این محتوا فالنیک میخوانیم که Kerberos چیست و درباره اینکه احراز هویت Kerberos از دید کاربر چگونه به نظر میرسد، چگونه کار میکند، چه اهمیت و کاربردی دارد و مزایا و معایب پروتکل Kerberos را بررسی میکنیم؛ پس در ادامه با ما همراه باشید. در فالنیک خدمات امنیت شبکه شامل مجموعهای از راهکارها و فناوریها برای محافظت از دادهها، کاربران و زیرساختهای ارتباطی در برابر تهدیدات سایبری ارائه میشود. برای دریافت این خدمات روی لینک زیر بزنید یا با شماره 0218363 تماس بگیرید.
فهرست محتوا
Kerberos چیست؟
Kerberos پروتکل احراز هویت امنیت شبکه کامپیوتری بدون گذرواژه است. امروزه بسیاری از سازمانها از Kerberos برای ورود تکمرحلهای SSO استفاده میکنند. این پروتکل دادههای هویت کاربران را بهطور امن به برنامهها منتقل میکند و دارای دو عملکرد مهم احراز هویت و امنیت است.
به جای استفاده از گذرواژههای سنتی، کربروس از رمزنگاری کلید مخفی قوی با مدت زمان محدود، چندین کلید مخفی و یک سرویس شخص ثالث برای احراز هویت برنامههای کلاینت-سرور و هویت کاربران استفاده میکند. در طراحی کربروس، توسعهدهندگان پروتکل Kerberos قصد داشتند از هر دو فرآیند احراز هویت و مجوز دسترسی پشتیبانی کنند تا کاربران پس از آنکه یک بار احراز هویت شدند، مجاز نیز باشند.
کربروس در بخش Backend فرآیند پیچیدهای دارد اما در ظاهر، تجربهای تقریبا بدون اصطکاک برای کاربر ارائه میدهد. در پشت صحنه، تمامی دستگاهها و سامانهها یکدیگر را بهطور خودکار و از طریق پروتکل کربروس، با تبادل چندین کلید خصوصی رمزگذاریشده، احراز هویت میکنند.
در طول فرآیند، کلیدهای رمزگذاریشده هرگز بین مشتری و سرویس مبادله نمیشوند و این پروتکل را به روشی بسیار امن تبدیل میکنند. درخواستهای بعدی بهسرعت پردازش میشوند چون توکن در حافظه پنهان مرورگر یا حافظه دستگاه ذخیره میشود و کربروس فرآیند ورود قبلی را تکرار میکند.
تاریخچهای کوتاه از پروتکل Kerberos
در اسطورهها، کربروس (که به نام سربروس نیز شناخته میشود) یک سگ بزرگ سهسر است که دروازههای دنیای زیرین را نگهبانی میکند تا از فرار ارواح جلوگیری کند. لوگوی کربروس نشان از همین اسطوره دارد. در دنیای ما، کربروس، پروتکل احراز هویت شبکه کامپیوتری است که در دهه ۱۹۸۰ توسط دانشمندان موسسه فناوری ماساچوست (MIT) توسعه یافت. ایده پشت کربروس این است که کاربران را احراز هویت کند در حالی که از ارسال گذرواژهها در اینترنت جلوگیری میکند.

کربروس همزمان با سامانه نام دامنه (DNS) در سال ۱۹۸۳ پدید آمد، بنابراین مدتی طولانی است که وجود دارد. در ابتدا برای پروژه آموزشی موسسه ماساچوست به نام «پروژه آتنا» طراحی شد؛ اما امروزه از طیف گستردهای از عملکردها، از جمله پیادهسازیهای ورود تکمرحلهای (SSO) پشتیبانی میکند و بهعنوان پروتکل احراز هویت اصلی برای وبسایتها به کار میرود. بسیاری از سیستمعاملهای محبوب، از جمله ویندوز، کربروس را بهصورت داخلی دارند. کربروس سرویس پرکاربردی است که مانند DNS، اکثر کاربران حتی نمیدانند از آن استفاده میکنند.
پروتکل احراز هویت Kerberos چگونه کار میکند؟
توکن زماندار مورد استفاده در کربروس مانند یک بلیت سینما است. هنگامی که فردی بلیت سینما میخرد آن را برای یک فیلم خاص، در یک زمان مشخص، در یک روز مشخص تهیه میکند. همین اصل برای توکن احراز هویت نیز صادق است: تنها میتوانید از آن برای یک منبع خاص، در یک بازه زمانی مشخص، در یک روز معین استفاده کنید. هنگامی که توکن اولیه منقضی میشود توکن جدیدی جایگزین آن میشود تا ورود تکمرحلهای (SSO) حفظ شود.
در مقاله « آشنایی کامل با Single Sign-On (SSO)» با راهکار امنیتی SSO و نحوه عملکرد آن به طور کامل آشنا میشوید.
کاربرد احراز هویت Kerberos چیست؟
کاربران و کارمندان امروزی از چندین دستگاه (لپتاپ، گوشیهای هوشمند، تبلتها) استفاده میکنند و نیاز دارند در هر زمان و هر مکان به سامانههای سازمانی و برنامههای شخص ثالث دسترسی داشته باشند. از آنجا که هر یک از این منابع و سامانهها نیاز به تایید هویت آنها دارند، اگر کارکنان مجبور باشند برای هر یک جداگانه لاگین کنند و وارد شوند، این فرآیند بسیار زمانبر میشود.
با استفاده از کربروس، کارکنان بهطور خودکار احراز هویت شده و میتوانند به تمامی منابع شبکه و بسیاری از سامانههای شخص ثالث با ورود تکمرحلهای (SSO) دسترسی پیدا کنند. بنابراین پس از ورود به یک دستگاه، میتوانند بدون نیاز به احراز هویت مجدد از همان دستگاه به چندین منبع دسترسی داشته باشند، مگر اینکه موقعیت مکانی یا عامل دیگری تغییر کند.

مثال کاربردی درباره کاربرد پروتکل احراز هویت Kerberos
بیایید با هم مثال کاربردی را بررسی کنیم تا احراز هویت Kerberos را بهتر درک کنیم.
علی ساعت ۹ صبح پشت میز خود مینشیند. او نگران دیر رسیدن به تماس زوم ساعت ۹ صبح است بنابراین سریع به کامپیوتر خود لاگین میکند.
شرکتی که علی کار میکند از پروتکل Kerberos استفاده میکند بنابراین لازم نیست به زوم نیز لاگین کند. او فقط روی لینک زوم کلیک میکند و بهطور خودکار احراز هویت شده و میتواند وارد جلسه شود.
در طول جلسه، علی نیاز دارد که به نرمافزار مدیریت پروژه خود دسترسی پیدا کند تا اطلاعاتی را ارائه دهد. او روی برنامه کلیک میکند و بلافاصله باز میشود، بدون اینکه حاضرین جلسه منتظر لاگین او بمانند.
پس از جلسه، علی باید به اطلاعات حساس در یک پایگاه داده امنیتی دسترسی پیدا کند. هنگامی که روی لینک ورود کلیک میکند بلافاصله از طریق کربروس احراز هویت شده و نیازی به وارد کردن اطلاعات کاربری جداگانه ندارد.
تجربه علی با کربروس شبیه به روشن کردن کلید چراغ است: او میداند که این کار نور را روشن میکند اما نیازی نیست بداند چگونه کار میکند یا چه اتفاقاتی در پشت صحنه رخ میدهد؛ فقط باید مطمئن باشد که هویت او بهطور امن در میان سیستمهای مختلف شبکهاش به اشتراک گذاشته شده است.
مهمترین مزیت برای او صرفهجویی در زمانش است که نیازی به لاگین کردنهای زیاد ندارد.
اجزای اصلی پروتکل Kerberos
پروتکل Kerberos دارای سه جز اصلی است:
- کاربر / کلاینت – User/client
- مرکز توزیع کلید – Key distribution center (KDC)
- سرور احراز هویت – Authentication server (AS)
- سرور ارایه بلیت – Ticket-granting server (TGS)
- برنامه / سرویس – Service/application

مراحل احراز هویت در Kerberos چیست
مراحل احراز هویت در Kerberos به ترتیب زیر است:
پرسش و پاسخ بین کاربر و سرور احراز هویت
ابتدا درخواست و پاسخ بین کاربر و سرور احراز هویت اتفاق میافتد که در تصویر بالا با دو فلش بالایی و دایرههای قرمز روی آن نمایش داده شده است:
درخواست: ابتدا یک درخواست دسترسی از طریق یک کلید مخفی از کاربر به سرور احراز هویت (AS) ارسال میشود.
پاسخ: سرور احراز هویت از کلید مخفی برای احراز هویت کاربر استفاده میکند. این کار با مقایسه اطلاعات کاربری در پایگاه داده انجام میشود. پس از احراز هویت، AS کلید مخفی خود را همراه با یک بلیت زماندار به کاربر ارسال میکند. کاربر کلید و بلیت زماندار را ازAS دریافت و قبول میکند. به این بلیت و کلید، TGT گفته میشود که مخفف Ticket Granting Ticket است.
پرسش و پاسخ بین کاربر و سرور ارایه بلیت
در مرحله بعد، درخواست و پاسخ بین کاربر و سرور ارایه بلیت اتفاق میافتد که در تصویر بالا با دو فلش پایینی و دایرههای قرمز روی آن نمایش داده شده است:
درخواست: کاربر کلید و بلیت زماندار دریافتشده از سرور احراز هویت را همراه با درخواست دسترسی به برنامه، به سرور ارایه بلیت ارسال میکند. (TGT + بلیت برنامه –> TGS)
پاسخ: هنگامی که سرور TGS درخواست را دریافت میکند آن را با کلید مخفی که با سرور احراز هویت به اشتراک گذاشته شده است رمزگشایی میکند و یک بلیت برنامه برای کاربر صادر میکند که با یک کلید مخفی دیگر رمزگذاری شده است.

پرسش و پاسخ بین کاربر و برنامه
در مرحله بعد، درخواست و پاسخ بین کاربر و برنامه / سرویس اتفاق میافتد که در تصویر بالا با دو فلش مورب و دایرههای قرمز روی آن نمایش داده شده است:
درخواست: کاربر، بلیتی را که از سرور TGS دریافت کرده است همراه با یک کلید مخفی به برنامهای که قصد دسترسی به آن را دارد، ارسال میکند. توجه: پس از اینکه کاربر بلیت را از TGS دریافت کرد، سایر سرویسها میتوانند مطمئن باشند که کاربر احراز هویت شده است.
پاسخ: هنگامی که برنامه درخواست را دریافت میکند، بلیت را با یک کلید مخفی، رمزگذاری کرده و آن را به کاربر و سرور TGS بازمیفرستد.
و در نهایت دسترسی به کاربر اعطا میشود (سرور برنامه، بلیت را اعتبار سنجی، هویت کاربر را تایید و اجازه دسترسی را صادرمیکند). برنامه به کاربر اجازه دسترسی را برای مدت زمان مشخصی مطابق با محدودیتهای بلیت میدهد.
مزایای استفاده از Kerberos در شبکه
پروتکل Kerberos مزایای بسیاری دارد. در ادامه با مزایای Kerberos بیشتر آشنا میشویم:
- کنترل دسترسی: پروتکل احراز هویت کربروس امکان کنترل دسترسی موثر را فراهم میکند. کاربران از یک نقطه واحد برای مدیریت همه ورودها (لاگینها) و اجرای سیاستهای امنیتی بهرهمند میشوند.
- احراز هویت متقابل: احراز هویت کربروس به سامانههای خدماتی و کاربران امکان میدهد یکدیگر را احراز هویت کنند. در تمامی مراحل فرآیند، کاربر و سرور مطمئن خواهند بود که طرف مقابلشان معتبر است و از هک و حمله مرد میانی man-in-the-middle جلوگیری میشود.
- طول عمر محدود بلیت: هر بلیت در کربروس دارای نشانهای زمانی و دادههای مدت اعتبار است و مدت احراز هویت توسط ادمینها کنترل میشود.
- احراز هویت قابل استفاده مجدد با SSO: احراز هویت کربروس پایدار و قابل استفاده مجدد است. هر کاربر فقط یک بار توسط سامانه تایید میشود ولی در طول مدت اعتبار بلیت، کاربر میتواند بدون نیاز به وارد کردن مجدد اطلاعات شخصی، احراز هویت شود و از منابع مختلف شبکه استفاده کند.
- امنیت: کلیدهای مخفی متعدد، احراز هویت توسط شخص ثالث و رمزنگاری، کربروس را به یک پروتکل تایید هویت امن تبدیل میکنند. گذرواژهها در شبکهها ارسال نمیشوند و کلیدهای مخفی، رمزگذاری شدهاند که جعل هویت کاربران یا سرویسها را برای مهاجمان دشوار میکند.

معایب استفاده از Kerberos در شبکه
پروتکل Kerberos روش موثری برای مدیریت تهدیدات امنیتی است اما چالشهایی نیز وجود دارد. در ادامه با این معایب بیشتر آشنا میشویم:
- نقطه شکست واحد – Single point of failure: اگر سرور احراز هویت اصلی دچار مشکلی شود، کل سامانه دچار اختلال میشود.
- هر سرویس شبکه به مجموعهای از کلیدهای کربروس نیاز دارد: سرویسهای شبکهای که به نامهای میزبان (Hostname) مختلف نیاز دارند، باید مجموعه کلیدهای کربروس اختصاصی خود را داشته باشند که میتواند در خوشهبندی و میزبانی مجازی چالشهایی ایجاد کند.
- نیازهای زمانی سختگیرانه: پیکربندی تاریخ و زمان میزبانها باید با محدودههای از پیش تعریفشده همگامسازی شود. در غیر این صورت، احراز هویت به دلیل محدودیتهای زمانی بلیتها با شکست مواجه خواهد شد.
احراز هویت kerberos در سیستمعامل ویندوز
سیستمعامل ویندوز سرور از پروتکل احراز هویت kerberos نسخه ۵ و همچنین افزونههایی برای احراز هویت با کلید عمومی، انتقال دادههای مجوز دسترسی و تفویض اختیار استفاده میکند.
احراز هویت اولیه کاربر با معماری ورود تکمرحلهای ویندوز لوگون – Winlogon single sign-on ادغام شده است.
مرکز توزیع کلید (KDC) در Kerberos با سایر خدمات امنیتی ویندوز سرور که روی دامین کنترلر اجرا میشود، یکپارچه شده است. KDC از پایگاه داده Active Directory Domain Services (AD DS) بهعنوان پایگاه داده حسابهای امنیتی استفاده میکند.
برای اینکه بتوانید امنیت را در شبکه و ویندوز سرور خود تامین کنید باید برنامه منظمی در نگهداری و پشتیبانی از سیستمهای خود داشته باشید. در «چک لیست امنیتی ویندوز سرور» آنچه برای تامین امنیت شبکه و ویندوز سرور باید انجام دهید را در اختیارتان قرار میدهد.
سوالات متداول درباره Kerberos
Kerberos چیست؟
کربروس، پروتکل احراز هویت شبکه است که برای تایید هویت کاربران و سرویسها در یک محیط امن طراحی شده است. این پروتکل از رمزنگاری کلید متقارن برای محافظت از اطلاعات استفاده میکند.
چگونه کربروس کار میکند؟
کربروس از یک سیستم بلیتدهی (Ticketing System) استفاده میکند. کاربران ابتدا ازKey Distribution Center (KDC) یک بلیت دریافت میکنند که برای دسترسی به سرویسهای شبکه استفاده میشود. این بلیتها هویت کاربر را تایید میکنند.
مزایای استفاده از کربروس چیست؟
کربروس امنیت بالایی دارد زیرا از رمزنگاری قوی استفاده میکند و اطلاعات حساس مانند رمز عبور را در شبکه ارسال نمیکند. همچنین امکان احراز هویت متقابل بین کاربران و سرویسها را فراهم میکند.
کربروس در کجا استفاده میشود؟
کربروس در شبکههای سازمانی، سیستمهای ویندوز سرور و اکتیو دایرکتوری برای مدیریت احراز هویت کاربران و سرویسها استفاده میشود.
آیا کربروس نقاط ضعفی دارد؟
بله، کربروس به همگامسازی دقیق زمان بین کلاینت و سرور وابسته است. همچنین اگرKDC مورد حمله قرار گیرد، کل سیستم احراز هویت ممکن است آسیبپذیر شود.
آنچه درباره درباره Kerberos در این مقاله خواندیم
در این محتوا با مفهوم kerberos چیست، مزایا، معایب، کاربردها و نحوه کار این پروتکل آشنا شدیم. این پروتکل برای دسترسی ایمن و مطمئن شبانه روزی به منابع شرکت از هر دستگاهی تولید شده است. راهاندازی کربوس را جزیی از خدمات اکتیو شبکه است. این خدمات شامل مجموعهای از تجهیزات و پروتکلهای مدیریتی است که به فعالسازی، کنترل و بهینهسازی جریان دادهها در شبکه کمک میکند و هدف اصلی آن تضمین ارتباط پایدار، بهینهسازی سرعت انتقال دادهها، تأمین امنیت و دسترسی به منابع شبکه است. در شرکت فالنیک تمامی خدمات اکتیو و پسیو شبکه توسط کارشناسان متخصصین این حوزه با کمترین هزینه انجام میشود. برای دریافت این خدمات میتوانید روی لینک زیر بزنید یا با شماره 0218363 تماس بگیرید.
خلاصه این مقاله
جرایم سایبری امروزه برای سازمانها مسئلهای همیشگی است. پروتکل احراز هویت Kerberos یکی از راهکارهایی است که برای مقابله با این مشکل ارائه شده است. این پروتکل، که در دهه 1980 توسط موسسه فناوری ماساچوست توسعه یافت، اطلاعات هویت کاربران را به طور امن به برنامهها منتقل میکند. Kerberos به جای استفاده از رمزهای سنتی، از یک روش رمزنگاری کلید مخفی قوی استفاده میکند و از یک سرویس شخص ثالث برای احراز هویت برنامهها و کاربران بهره میبرد. این پروتکل همچنین امکان احراز هویت متقابل را فراهم میکند که این موضوع باعث میشود تا کاربر و سرویس مطمئن باشند که طرف مقاب