DNS Recursion یکی از دو روش معمول DNS query می باشد. در این روش چنانچه IP دامنه مورد نظر در DNS داخلی (محلی) یافت نشد DNS Server، خود را متعهد می داند تا نتیجه را از طریق DNS Server های دیگر بدست آورد و نتیجه را به درخواست دهنده اعلام کند. در حالی که چنانچه از روش Iterative requests استفاده شود DNS Server متعهد به اعلام پاسخ نهایی نخواهد بود و پاسخ "I don’t know, but you could try asking this server" ارسال خواهد شد.
استفاده از DNS Recursion باعث چه مشکلی می شود؟
فعال بودن این نوع DNS Query بر روی سرور باعث می شود که سرور در خطر سوء استفاده DNS spoofing قرار گیرد در این روش Cache دیتابیس DNS Server آلوده شده و برای باز کردن یک یا چند وب سایت خاص ممکن است آدرس IP اشتباهی را اعلام کند. هکر ها از این روش برای سوء استفاده های بعدی کمک می گیرند.
آلوده شدن DNS Server باعث می شود تا IP سرور شما از سمت ارائه دهنده IP بلاک شود.
غیر فعال کردن DNS Recursion در سرور های لینوکس:
برای انجام این کار ابتدا از طریق نرم افزار Putty یا یک نرم افزار ترمینال مشابه به سرور خود وارد شده و فایل named.conf واقع در پوشه \etc را ویرایش می کنید. برای ویرایش کردن می توانید از دستوراتی مانند edit یا nano استفاده فرمایید.
Edit \etc\named.conf
چنانچه شما با دستور دیگری برای ویرایش فایلهای متنی راحت تر هستید می توانید از هر دستور دیگری که صلاح می دانید هم استفاده فرمایید.
سپس خطوط زیر را پیدا کرده و مقدار آن را به مقادیر مشخص شده تغییر دهید. ممکن دو خط اول وجود نداشته باشد که می توانید این دو خط را اضافه نمایید.
allow-transfer {“none”;};
allow-recursion {“none”;};
recursion no;
در ویرایش گر های edit یا nano برای یافتن یک عبارت از کلیدهای ترکیبی Ctrl + W می توانید استفاده کنید. پس از فشردن این کلید ها ویرایش گر در خط فرمان منتظر این است که شما عبارت خود را جهت جستجو وارد نمایید.
پس از اعمال تغییرات به کمک کلید های Ctrl + X از محیط ویرایش گر خارج شوید. پس از فشردین این کلید ها از شما پرسیده می شود که می خواهید تغییرات بر روی فایل named.conf ذخیره شود که با زدن کلید y به معنی yes این اتفاق می افتد.
در انتها برای اعمال تغییرات انجام شده می بایست سرویس DNS دوباره راه اندازی شود. برای Restart کردن این سرویس از دستور زیر در خط فرمان استفاده کنید:
service named restart