What is Pi-Hole?

DIY HOME SERVER 2021 - Software - PI-HOLE | KREAWEB

  Pi-hole, ağınızdaki reklamları ve istenmeyen içeriği engelleyen DNS tabanlı bir engelleme aracıdır. Evinizde veya işyerinizde kullandığınız bilgisayar, tablet gibi cihazlar normal şartlarda servis sağlayıcınızın DNS hizmeti ile iletişim kurarak erişmek istediğiniz siteyi çözümler. Bilgisayar, tablet gibi cihazlar ile servis sağlayıcınızın arasına pi-hole yazılımını entegre ederek DNS sunucusu gibi çalıştırıp pi-hole ürününün bütün hizmetlerinden faydalanacağız. Pi-hole isteğe bağlı olarak bir DHCP sunucusu olarak kullanılabilir.

Pi-hole Neden Tercih Edilmeli?

  • Pi-hole'un en büyük avantajlarından bir tanesi ağınızda bulunan çoğu reklamları engellemesi.
  • Pi-hole, ağınızda bulunan spam ve phishing siteleri için DNS sorgularının bir çoğunu engeller. Bu sayede güvenliği bir tık arttırabilirsiniz.
  • Pi-hole ile ağınız içerisindeki cihazların yaptığı sorgular önbelleğe alınır. Bu sayede daha hızlı bir internet hizmeti alabilirsiniz.

features

  • Kurulumu kolay : çok yönlü kurulum aracımız süreç boyunca size yol gösterir ve on dakikadan az sürer
  • Kararlılık : içerik, reklam yüklü mobil uygulamalar ve akıllı TV'ler gibi tarayıcı olmayan konumlarda engellenir
  • Duyarlı : DNS sorgularını önbelleğe alarak günlük tarama hissini sorunsuz bir şekilde hızlandırır
  • Hafif : minimum donanım ve yazılım gereksinimleriyle sorunsuz çalışır
  • Sağlam : birlikte çalışabilirlik için kalite güvencesi olan bir komut satırı arabirimi
  • Anlayışlı : Pi-deliğinizi görüntülemek ve kontrol etmek için güzel, duyarlı bir Web Arayüzü panosu
  • Çok yönlü : isteğe bağlı olarak bir DHCP sunucusu olarak işlev görebilir , tüm cihazlarınızın otomatik olarak korunmasını sağlar
  • Ölçeklenebilir : sunucu düzeyinde donanıma kurulduğunda yüz milyonlarca sorguyu işleyebilir
  • Modern : hem IPv4 hem de IPv6 üzerinden reklamları engeller
  • Ücretsiz : gizliliğinizin kontrolünde tek kişi olmanıza yardımcı olan açık kaynaklı yazılım

prerequisites

  • Ubuntu Server 18.04 LTS - 22.04 LTS (Minimum Kaynak Gereksinimleri (1vCpu, 1GB Ram, 5GB HDD)
  • Sudo yetkilerine sahip bir kullanıcı veya root kullanıcısı
  • Firewall İlgili Portlara İzin Verilmesi (53,67,80)
  • Container olarak kullanılacak ise Docker&Docker-Compose kurulu olması gerekmektedir.

Daha fazla bilgi için bakınız:

Pi-hole Install

Sunucumuzu güncelleyin ve sistemi yeniden başlatın.

sudo apt update && sudo apt upgrade -y && sudo reboot 

İhtiyacımız olan gerekli portlara, güvenlik duvarı üzerinden kalıcı olarak izin verelim. 

sudo ufw allow 80/tcp
sudo ufw allow 53/tcp
sudo ufw allow 53/udp
sudo ufw allow 67/tcp
sudo ufw allow 67/udp

Ubuntu'nun (17.10+) ve Fedora'nın (33+) modern sürümleri, systemd-resolve varsayılan olarak önbelleğe alma DNS çözümleyicisi uygulamak üzere yapılandırılmıştır. Bu, pi-hole'un 53 numaralı portu dinlemesini önleyecektir. Bu yüzden aşağıdaki işlemleri gerçekleştirerek çözümleyici şu şekilde devre dışı bırakılmalıdır.

Eski Ubuntu sürümlerinin (yaklaşık 17.04) kullanıcılarının dnsmasq'ı devre dışı bırakması gerekecektir.

sudo sed -r -i.orig 's/#?DNSStubListener=yes/DNSStubListener=no/g' /etc/systemd/resolved.conf
sudo sh -c 'rm /etc/resolv.conf && ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf'
sudo systemctl restart systemd-resolved 

Aşağıdaki komutu kullanarak Pi-hole hızlı kurulumunu gerçekleştirelim.

sudo curl -sSL https://install.pi-hole.net | bash 

Bazı durumlarda işletim sistemi uyumlu olduğu halde aşağıdaki gibi bir hata alabilirsiniz. 

Bu tür durumlarda aşağıdaki komut satırını çalıştırarak kuruluma devam edebilirsiniz.

curl -sSL https://install.pi-hole.net | sudo PIHOLE_SKIP_OS_CHECK=true bash

Bu yükleyici cihazınızı, ağ genelinde bir reklam engelleyiciye dönüştürecektir. Enter tuşuna basarak devam ediyorum. 

 Pi-hole ücretsizdir, ancak bağışlarınızla desteklenmektedir. Bağış için verilen adresi inceleyebilirsiniz. Enter tuşuna basarak devam ediyorum. 

Pi-hole sunucunuzun ip sinin sabit olması gerektiği ile ilgili bir uyarı alıyoruz. Dhcp sunucunuzdan veya manuel olarak sabit ip verebilirsiniz. Yes seçeneğine gelip Enter tuşuna basarak devam ediyorum. 

Listeden bir dns sağlayıcı seçebilir veya custom seçeneği ile size ait özel bir dns sunucunuza yönlendirebilirsiniz. Ben google üzerindeyken Enter tuşuna basarak devam ediyorum. 

Pi-hole, reklamları engellemek için üçüncü taraf listelerine güvenir. Aşağıdaki öneriyi kullanabilir veya kurulumdan sonra kendinizinkini ekleyebilirsiniz. Varsayılan olarak Enter tuşuna basarak devam ediyorum. 

Yönetimi kolay ve kullanışlı olması için, web admin interface kurmak istediğim için Enter tuşuna basarak devam ediyorum. 

Web sunucusunu (lighttpd) için gerekli PHP modüllerini kurmamız gerekiyor. Enter tuşuna basarak devam ediyorum. 

Sorguları günlüğe kaydetmek için Enter tuşuna basarak devam ediyorum. 

Bir gizlilik modu seçmemiz gerekiyor. Ben anonim olarak devam etmek için Enter tuşuna basarak devam ediyorum. Kısa bir süre sonra yüklemeler tamamlanacaktır. 

Kurulum eğer normal tamamlanır ise, size görseldeki gibi web arayüzü yönetim için bir parola verecektir. 

Uygulamaya erişmek için herhangi bir tarayıcı üzerinden,  http://SERVERIP:PORT/admin/index.php bilgilerini girerek web kullanıcı arayüzüne gidebilirsiniz.

Kullanıcılar internete çıkamıyor ise, google dns adreslerinin firewall tarafından engellenmediğine emin olun. Güvenlik gereği varsayılan kurulum sonrası internete çıkamayabilirsiniz. Bunun için Settings → DNS → İnterface Settings kısmındaki seçenekleri kontrol ediniz.

Pi-hole Docker Install

İlk olarak Linux host üzerinde, homer panosu için yapılandırmaların tutulacağı bir dizin veya volume oluşturalım.
 

cd ~
mkdir pihole && cd pihole

Docker ile pihole geleneksel şekilde kurmamız gerekmez. Artık docker üzerinde sadece bir image ve parametre ile çalıştırıp kolay bir şekilde  Docker Hub üzerinden çekerek kurulumu tamamlayabilirsiniz

docker run -d \
  --name pihole \
  -p 53:53/tcp \
  -p 53:53/udp \
  -p 1234:80/tcp \
  -v ./etc-pihole:/etc/pihole \
  -v ./etc-dnsmasq.d:/etc/dnsmasq.d \
  -e TZ=Asia/Istanbul \
  --restart=always \
  pihole/pihole:latest

Pihole konteynerı listeleyip kontrol edelim. Herhangi bir sorun gözükmediği için işlemlere devam edelim.

docker ps|grep pihole 

Şimdi pihole sunucu web console erişmek için container içine girerek bir parola verelim.

docker exec -it pihole bash

Container içinde aşağıdaki komutu çalıştırarak kendinize özel bir parola belirleyin.

pihole -a -p parola123

Uygulamaya erişmek için herhangi bir tarayıcı üzerinden,  http://SERVERIP:PORT/admin/index.php bilgilerini girerek web kullanıcı arayüzüne gidebilirsiniz.

Kullanıcılar internete çıkamıyor ise, google dns adreslerinin firewall tarafından engellenmediğine emin olun. Güvenlik gereği varsayılan kurulum sonrası internete çıkamayabilirsiniz. Bunun için Settings → DNS → İnterface Settings kısmındaki seçenekleri kontrol ediniz.
 

Blog'a Dön