نصب و کانفیگ pi-hole بر روی آرچ لینوکس

۱- نصب بسته‌های مورد نیاز ، وب سرور lighttpd ، بسته dnscrypt-proxy برای پشتیبانی از dnscrypt ورژن۲ به بعد ، همینطور بسته‌های php-sqlite و bind-tools و php-cgi

بسته‌های pi-hole-server pi-hole-ftl را از AUR بگیرید

۲- انجام تنظیمات مربوط به dnscrypt
ابتدا دستور زیر را برای ساخت فایل تنظیمات dnscrypt در دایرکتوری etc/dnsmasq.d/ اجرا کنید:

سپس محتویات زیر را در این فایل قرار داده و فایل را ذخیره کنید:

سپس فایل تنظیمات dnscrypt را با استفاده از دستور زیر باز کنید:

در این فایل مقدار پارامتر require_dnssec را برابر با true قرار دهید تا فقط از سرورهای دارای قابلیت dnssec استفاده شود:

در همین فایل خط زیر رو پیدا کنید:

حالا هرجا ۵۳ دیدید اون رو به ۵۳۵۴ تعییر بدید ، سپس فایل را ذخیره کرده و دستور زیر را اجرا کنید:

و محتویات زیر را در فایل باز شده قرار داده و ذخیره کرده و خارج شوید:

اینکار سبب میشود که dnscrypt به جای پورت پیش فرض ۵۳ از پورت ۵۳۵۴ استفاده نماید و پورت ۵۳ برای استفاده dnsmasq آزاد باشد و dnsmasq به عنوان سرور dns پیش فرض سیستم عمل کند.

۳- انجام تنظیمات مربوط به pi-hole
ابتدا دستور زیر را اجرا کنید:

سپس در فایل باز شده تمامی خطوطی که با PIHOLE_DNS شروع میشوند را با قرار دادن کاراکتر # در ابتدای خط به حالت کامنت در بیاورید:

بعد از ذخیره کردن فایل دستور زیر را اجرا کنید:

در فایل باز شده تمامی خطوطی که با server یا با interface شروع میشوند را با قرار دادن کاراکتر # در ابتدای خط به حالت کامنت در بیاورید:

فایل را ذخیره کرده و خارج شوید. با این کار pi-hole از سرور های dns پیش فرض خود استفاده نمی کند.

۴- تنظیم سیستم برای استفاده از سرور DNS لوکال
فایل etc/resolvconf.conf/ را با دستور زیر باز کنید:

در فایل باز شده خط name_servers را از حالت کامنت خارج کنید که به صورت زیر شود:

فایل را ذخیره کرده و خارج شوید.
اگر از برنامه networkmanager برای مدیریت شبکه استفاده میکنید دستور زیر را برای باز کردن فایل تنظیمات networkmanager اجرا کنید:

سپس در فایل باز شده زیر قسمت [main] مقدار پارامتر dns را به صورت زیر قرار دهید:

ذخیره کرده و خارج شوید. حالا فایل زیر رو باز کنید:

فایل‌های زیر رو در اون پیدا کنید و کامنت کنید:

ذخیره کنید و خارج بشید.

۵- تنظیم dnsmasq برای استفاده از فایل تنظیمات دلخواه در دایرکتوری etc/dnsmasq.d/
ابتدا دستور زیر را برای باز کردن فایل تنظیمات dnsmasq اجرا کنید:

سپس به انتهای فایل رفته و خط زیر را با برداشتن علامت # از ابتدای خط از حالت کامنت خارج کنید:

سپس فایل را ذخیره کرده و خارج شوید.


۶- فعال کردن سرویس‌های مورد نیاز:

خب حالا یبار سیستم ریبوت کنید و برای تست pihole اینو داخل مرورگرتون بزنید:

باید همچین خروجی داشته باشه:

حالا در مرورگر این آدرس رو وارد کنید:

این صفحه براتون باز میشه:

از منو سمت چپ به setting برید و بعد برید به تب DNS حالا مثل من این تیک هارو بزنید و اگر چیزی اضافی تیک خورده پاک کنید:

خب اسکرول کنید و به انتهای صفحه برید و گزینه‌ی save رو بزنید. حالا دوباره به setting برگردید و وارد تب system بشید و گزینه‌ی Restar DNS Resolver رو بزنید.

حالا ترمینال رو باز کنید و با زدن کد زیر یک پسورد برای pihole تعیین کنید:

دوباره مرورگر باز کنید و بزنید:

حالا باید لاگین کنید و رمز خودتون رو وارد کنید ، پیشنهاد می‌کنم این صفحه رو بوکمارک کنید که راحت باشید برای بارهای بعد 🙂

با تشکر ویژه از محمدرضای عزیز و همینطور سعید گرامی

درباره نویسنده: آرمان صابری

آرمان صابری هستم علاقمند به دنیای گنولینوکس و فلسفه آزادی نرم افزار ، تلاش می‌کنم تا بتونم سهم خودم را در گسترش فلسفه آزادی انجام بدم.

مطالب زیر را حتما بخوانید

1 Comment

  1. بسیار عالی بود
    از اینکه شما هم مطلبی خوب و پر بار در این باره دارید لذت بردم راستی در داکر هاب هم pi-hole موجود هست

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *