DNSSec (DNS Security) چیست و چه کاربردی دارد ؟
خرداد 23, 1403 1405-07-25 16:25DNSSec (DNS Security) چیست و چه کاربردی دارد ؟
DNSSec (DNS Security) چیست و چه کاربردی دارد؟
DNSSec یا همان DNS Security یک قابلیت است که با استفاده از آن ما میتوانیم مکانیزمی پیاده سازی کنیم که دیتابیسDNS Server ( یا همان zone های ما )، امن شود. به این صورت که یعنی کسی نتواند بر روی دیتابیس DNS ( یا همان zone های DNS ) داده ای را به صورت غیر مجاز اضافه و یا حذف کند. و همچین DNS Client که از DNS Server استفاده میکند و با آن تبادل دیتا دارد، مطمئن باشد اطلاعاتی را که از سمت DNS Server میگیرد یک اطلاعات درست و بدون تغییر است و ساختار آن توسط عوامل خارجی دستکاری نشده است. به زبان دیگر zone، DNSSec ها را امضای دیجیتال میکند.
ساز و کار DNSSec
زمانی که client یک query به سمت DNSSec میفرستد، DNSSec آن query را دریافت کرده و وقتی DNSSec میخواهد جواب client را دهد، علاوه بر پاسخ به query کلاینت، اطلاعاتی را به کلاینت میدهد که client میتواند چک کند ببیند اطلاعات در حین ارسال دستکاری شده است یا خیر.
- زمانی که ما برای یک DNSSec، Zone را فعال میکنیم سه نوع record در zone ما اضافه میشود که به شرح زیر است :
- RRSIG Record : اطلاعاتی است که همراه با جوابی که DNS به Client میدهد، برای Client ارسال میکند. در واقع RRSIG یک الگریتم است که طبق آن داده ارسالی هش میشود و آن الگریتم و هش همراه با queryبرای client توسط ServerDNS ارسال میشود و کامپیوتر مقصد از اطلاعات ارسال شده مجددا هش میگیرد و هش ارسالی را با هش خودش مقایسه میکند و اگر هش ها یکی بود یعنی داده ارسالی توسط عوامل خارجی دستکاری نشده است. این فرایند توسط RRSIG Record انجام میشود.
- DNSKEY Record : یک مدل record است که به client ها اجازه میدهد خود RRSIG را بررسی کنند و مطمئن شوند که RRSIG توسط عوامل خارجی دستکاری نشده است.
- Next Secure Record : یک record ویژه است و وقتی یک سوالی از DNSتوسط Clientپرسیده میشود که DNS آن جواب را ندارد، DNS جواب وجود ندارد را در قالب Next Secure برای clientارسال میکند. ( یعنی در قالب یک جواب امن شده )
آموزش راه اندازی DNS Server در ویندوز سرور – دوره mcse
تعداد Record های DNS قبل از فعال کردن DNSSec :
تعداد Record های DNS بعد از فعال کردن DNSSec :
فعال کردن DNS Security ( DNSSec )
- ابتدا وارد سرویس DNS میشویم.
- بر روی Zone که میخواهیم DNSSec روی آن فعال شود کلیک راست میکنیم.
- گزینه ی DNSSec را انتخاب میکنیم و روی گزینه Sign the zone کلیک میکنیم.
در این حالت ما میتوانیم هم از قسمت Customize به صورت دستی قابلیت ها را برای DNSSec تعیین کنیم و یا میتوانیم به صورت Default این قابلیت را فعال کنیم.
غیر فعال کردن DNSSec
- برای غیر فعال کردن DNSSec کافیست که بر روی Zone که DNSSec را برای آن فعال کردیم کلیک راست کنیم و در قسمت DNSSec، گزینه Unsign the zone را انتخاب کنیم.
DNS Sooket pool
یک قابلیت است برای بحث امنیت در DNS و همانند DNSSec یک موضوع امنیتی است. به صورت نرمال DNS دارد از پورت پنجاه و سه UDP و TCP برای ارسال داده استفاده میکند. مفهوم Sooket به معنای ترکیب پورت و IP است و اگر Sooket و پورت ها وجود نداشت IP فقط با یک سیستم میتواند ارتباط بگیرد. نحوه کار DNS Sooket بدین صورت است که در حالت پیش فرض ما برای DNS دوهزار و پانصد تا پورت تعیین میکنیم و DNS هربار که میخواهد با DNS Server دیگری ارتباط بگیرد به صورت رندوم از این پورت ها استفاده میکند. این کار از اتک های سایبری جلوگیری میکند زیرا برای اتک زدن نمیتوانند پورت مورد نظر را که DNS از آن استفاده میکند را به راحتی پیدا کنند. فعال کردن این قابلیت با دستور زیر صورت میگیرد:
DNScmd /config /socketpoolsize 6000
Configuring DNS cache locking
یک پنل امنیتی دیگر است و مثل پنل های امنیتی بالاست و روش کارش بدین صورت است تا مادامی که اطلاعات در DNS کش شده اند ( یعنی تا مدت 3600 ثانیه )، این قابلیت اجازه تغییر و ویرایش اطلاعات کش شده را نمیدهد. این ویژگی از حمله های هکری که قصد دارند کش DNS را تغییر دهند جلوگیری میکند. این قابلیت توسط دستور زیر اجرا میشود:
Set-DNSServercache-LockingPercent75





نظرات (1)
Alirezajafari
با عرض سلام خدمت دوستان عزیز
و آقا آرین عزیز از مطلب خیلی خوبتون. لازم دانستم که این نکته اضافه کنم ما از DNSSEC زمانی استفاده میکنم که درخواستی از بیرون از شبکه (اینترنت) سمت DNS ما بیاید مثلا ما از یک دومین دیگر که Zone آن در دومین دیگری باشد . در غیر این صورت هیچ نیازی نیست که ما بخواهیم این DNSSEC استفاده کنیم