Herkese selamlar.

Bu rehberimde Raspberry Pi ile Pi-Hole kurulumunu anlatacağım. Yeni başlayanlar icin detaylı bir rehber olacak. Bende Raspberry Pi 2 var. 2.el olarak 100TL gibi bir fiyata aldım.



Pi-Hole kurmak icin gereksinimler:
Raspberry Pi ya da diğer. İnternet kablosu ya da Wi-Fi. SD Kart. Bir guc adaptoru. Raspbian dışında diğer desteklenen işletim sistemleri:
Ubuntu 16.x / 18.x / 20.x ARM / x86_64 Debian 9 / 10 ARM / x86_64 / i386 Fedora 31 / 32 ARM / x86_64 CentOS 7 / 8 x86_64 Diğer Pi-Hole gereksinimleri:
En az 512MB RAM. En az 2GB boş alan. ​


Pi-Hole: Kısaca, Raspberry Pi cihanızını, tum ağınızda reklam engelleyen bir DNS sunucusuna ceviren bir yazılım. Google gibi, Cloudflare gibi bir DNS sunucusu hazırlayıp, o DNS sunucusunu modemdeki tum cihazların kullanmasını sağlayarak bunu yapıyoruz. Bu yazılım, kurulumunu yapacağımız DNS'i kullanan tum cihazlardaki DNS isteklerine bakar, eğer reklam ise engeller; değil ise diğer DNS sunucularına yonlendirir.​



Pi-Hole kurulumunu yapacağımız işletim sistemini SD karta yazmak:

Raspberry Pi Imager programını indiriyoruz. Raspberry Pi OS – Raspberry Pi




İşletim sistemi secin kısmından Raspberry Pi OS (32-bit) seceneğini, "SD kart secin" kısmından da SD kartımızı seciyoruz. Daha sonrasında Ctrl + Shift + X kombinasyonunu kullanıyoruz.


Set hostname tikini işaretleyip, Pi'nizin isminizi secebilirsiniz. Enable SSH tikini işaretliyoruz. Eğer bir HDMI goruntusu alabileceğiniz cihazınınız yoksa ve bilgisayarınız ile Raspberry Pi arasında iletişim kurmak istiyorsanız burası onemli. Daha sonra SSH bağlantısı kurarken gireceğimiz şifreyi seciyoruz. Eğer Raspberry Pi'ı kablo ile değil de Wi-Fi ile modeme bağlayacaksanız Configure wifi kısmından Wi-Fi bilgilerinizi ayarlamayı unutmayın. Diğer ayarları da kullanım şeklinize ve isteğinize gore secip, Save diyoruz. Yaz dedikten sonra işletim sisteminin yazılmasını bekliyoruz.




İşletim sistemi yazıldıktan sonra SD kartı Raspberry'e takıp, cihaza guc veriyoruz. Kablonuz varsa modeme bağlamayı unutmayın.


Raspberry acıldıktan sonra cihazın modem uzerinde hangi IP adresi aldığını bulmamız lazım. Bunu farklı yollarla yapabiliriz, Advanced IP Scanner programıyla, nmap ile vs. bulabiliriz. Ancak ben modem uzerinden bulacağım.​


Bunun icin modem arayuzune (192.168.1.1) giriyoruz. Buradan modeme bağlı cihazların bulunduğu listeyi acıyoruz. Bu listede Raspberry Pi cihazımı (isim kısmında gozukuyor) ve MAC adresini gorebiliyoruz. MAC adresini kopyalıyoruz.




Raspbery Pi cihazımın surekli olarak aynı IP adresine sahip olması icin yine modem arayuzunden Raspberry cihazımı, MAC adresiyle bir IP adresine sabitliyorum. Hatırlaması kolay olacağı icin ben 192.168.1.68 olarak ayarladım. Şimdi Raspberry Pi cihazım icin IP adresi 192.168.1.68.





Bilgisayar ile Raspberry Pi arasında bağlantı kurmak:

Bunun icin bir programa ihtiyacımız var. Ben PuTTY kullanacağım. Buradan indirebilirsiniz: Download PuTTY: latest release (0.74)


PuTTY programını actıktan sonra, Host Name kısmına, az once Raspberry Pi icin verdiğimiz IP adresini yazıyoruz. Port ve Connection type kısmını değiştirmiyoruz. Open tuşu ile de bağlantıyı kuruyoruz.




Cıkan uyarıya "Evet" diyelim.




Login as kısmına pi yazıyoruz. Şifre kısmına ise işletim sistemi kısmında ayarlardığımız şifreyi giriyoruz. Merak etmeyin, burada şifreyi girerken yazdığınız karakterler gozukmez, klavyeniz yazmıyor değil.




Bağlantıyı kurduktan sonra ilk once Raspbian işletim sistemini ve yazılımları guncelleyelim. Sırasıyla şu komutları girip enterlayalım:

Kod:Panoya kopyala
sudo apt-get update

Kod:Panoya kopyala
sudo apt-get upgrade

Bu komutu girdikten sonra "Y" tuşuna basıp entarlamayı unutmayın. Bu komut biraz uzun surebilir.



Pi-Hole kurulumu:

Cok basit bir komut var, bu komutu PuTTY ustunden giriyoruz:

Kod:Panoya kopyala
curl -sSL https://install.pi-hole.net | bash





Cıkan ilk 3 uyarıya Ok diyoruz.




Kullanmak istediğiniz DNS servisini secin, ben Cloudflare seciyorum. Daha sonra Ok deyip devam edelim.




Tab tuşuna basıp Ok diyoruz.




IPv6 kullanmadığım icin ustune gelip, "Space" tuşuna basıp deaktif ettim. Siz kendinize gore ayarlayabilirsiniz, daha sonra yine Tab tuşu ile Ok diyelim.




Yes diyelim.




Bu ve buradan sonra cıkacak uyarılara Tab tuşu ile Ok diyelim.




Burada kurulumun tamamlandığını soyluyor ve tarayıcı uzerinden Pi-Hole sayfasına giriş icin şifremizi veriyor. Ok deyip devam ediyoruz.


Bu şifreyi ben beğenmedim, şu komut ile değiştireceğim:

Kod:Panoya kopyala
sudo pihole -a -p ŞİFRENİZ ya da boş bırakırsanız şifre kalkar




Şu anda Pi-Hole kuruldu ve calışıyor.

Pi-Hole ayarlarını değiştirmek, istatistikleri gormek, filtreleme listeleri eklemek, diğer bilgileri gormek ve diğer ayarları yapılandırmak icin Web arayuzune girmeliyiz. Bunun icin, Raspberry Pi adresimiz icin verdiğimiz IP adresini tarayıcıda yeni sekme acarak yazıyoruz, yanına da /admin ekleyip enterlıyoruz.

http://192.168.1.68/admin
Ya da direkt http://pi.hole/admin yoluyla da ulaşabiliriz.

Buradan "Login" yoluna gidip, şifremizi giriyoruz.




Karşımıza bu şekilde tum bilgiler ve ayarlar cıkıyor:



Group Management başlığı altındaki Adlists kısmından filtre ekleyebilirsiniz. Blacklist kısmından istediğiniz siteleri ve IP adresleri kara listeye alıp, engelleyebilirsiniz. Whitelist kısmından istediğiniz siteleri ve IP adresleri beyaz listeye alıp, engellenmemesini sağlayabilirsiniz. Tools başlığı altındaki Network kısmından modeme bağlı cihazları gorebilir, Pi-Hole kullanıp kullanmadıklarını kontrol edebilirsiniz.
Modeme bağlı tum cihazlarda Pi-Hole kullanılmasını sağlamak:

Bunun mantığı kısaca Pi-Hole ile oluşturduğumuz DNS'i tum cihazlarda kullanmaktır. Modem uzerinden bu ayarı yapabilirsiniz ya da tum cihazlarda tek tek DNS'i değiştirebilirsiniz. Ben modem uzerinden yapacağım. Bu şekilde tek tek ayarlamama gerek kalmayacak ve bundan sonra modeme bağlanacak olan cihazlarda da otomatik olarak Pi-Hole kullanılacak.

Modem uzerinden DNS ayarını, Raspberry Pi'nin IP adresiolarak ayarlıyorum. DNS ayarı varsa DNS'i, yoksa DHCP ayarını kullanabilirsiniz


***Daha sonra modemi yeniden başlatıp, Pi-Hole uzerinde Tools - Network kısmından tum cihazların Pi-Hole kullanıp kullanmadığını kontrol edebilirsiniz.



Pi-Hole icin daha fazla filtre:

Buradan kullanıcılar ve şirketler tarafından oluşturulan listeleri bulabilirsiniz:
FilterLists | Subscriptions for uBlock Origin, Adblock Plus, AdGuard, ... FilterLists is the independent, comprehensive directory of filter and host lists for advertisements, trackers, malware, and annoyances. By Collin M. Barrett.
filterlists.com




Ya da buradan kayda değer olarak gorulen filtreleri ekleyebilirsiniz, onerimdir:
The Big Blocklist Collection Pi-hole compatible blocklists for you to have a more enjoyable online presence
firebog.net





Buradan onerdiğim filtrelere ulaşabilirsiniz:
https://v.firebog.net/hosts/lists.php?type=tick

Hepsini kopyalayıp yapıştırabilirsiniz, tek tek eklemenize gerek yok.

RegEx icin onerim:
Kod:Panoya kopyala
^ad([sxv]?[0-9]*|system)[_.-]([^.[:space:]]+.)|[_.-]ad([sxv]?[0-9]*|system)[_.-] ^(.+[_.-])?adse?rv(er?|ice)?s?[0-9]*[_.-] ^(.+[_.-])?telemetry[_.-] ^adim(age|g)s?[0-9]*[_.-] ^adtrack(er|ing)?[0-9]*[_.-] ^advert(s|is(ing|ements?))?[0-9]*[_.-] ^aff(iliat(es?|ion))?[_.-] ^analytics?[_.-] ^banners?[_.-] ^beacons?[0-9]*[_.-] ^count(ers?)?[0-9]*[_.-] ^mads. ^pixels?[-.] ^stat(s|istics)?[0-9]*[_.-] ^https?://([A-Za-z0-9.-]*.)?clicks.beap.bc.yahoo.com/ ^https?://([A-Za-z0-9.-]*.)?secure.footprint.net/ ^https?://([A-Za-z0-9.-]*.)?match.com/ ^https?://([A-Za-z0-9.-]*.)?clicks.beap.bc.yahoo(.w.w|.w)/ ^https?://([A-Za-z0-9.-]*.)?sitescout(.w.w|.w)/ ^https?://([A-Za-z0-9.-]*.)?appnexus(.w.w|.w)/ ^https?://([A-Za-z0-9.-]*.)?evidon(.w.w|.w)/ ^https?://([A-Za-z0-9.-]*.)?mediamath(.w.w|.w)/ ^https?://([A-Za-z0-9.-]*.)?scorecardresearch(.w.w|.w)/ ^https?://([A-Za-z0-9.-]*.)?doubleclick(.w.w|.w)/ ^https?://([A-Za-z0-9.-]*.)?flashtalking(.w.w|.w)/ ^https?://([A-Za-z0-9.-]*.)?turn(.w.w|.w)/ ^https?://([A-Za-z0-9.-]*.)?mathtag(.w.w|.w)/ ^https?://([A-Za-z0-9.-]*.)?googlesyndication(.w.w|.w)/ ^https?://([A-Za-z0-9.-]*.)?s.yimg.com/cv/ae/us/audience/ ^https?://([A-Za-z0-9.-]*.)?clicks.beap/ ^https?://([A-Za-z0-9.-]*.)?.doubleclick(.w.w|.w)/ ^https?://([A-Za-z0-9.-]*.)?yieldmanager(.w.w|.w)/ ^https?://([A-Za-z0-9.-]*.)?w55c(.w.w|.w)/ ^https?://([A-Za-z0-9.-]*.)?adnxs(.w.w|.w)/ ^https?://([A-Za-z0-9.-]*.)?advertising.com/ ^https?://([A-Za-z0-9.-]*.)?evidon.com/ ^https?://([A-Za-z0-9.-]*.)?scorecardresearch.com/ ^https?://([A-Za-z0-9.-]*.)?flashtalking.com/ ^https?://([A-Za-z0-9.-]*.)?turn.com/ ^https?://([A-Za-z0-9.-]*.)?mathtag.com/ ^https?://(A-Za-z0-9.-*.)?surveylink/ ^https?://(A-Za-z0-9.-*.)?info.yahoo.com/ ^https?://(A-Za-z0-9.-*.)?ads.yahoo.com/ ^https?://(A-Za-z0-9.-*.)?global.ard.yahoo.com/


Whitelist icin onerim:

GitHub - anudeepND/whitelist: A simple tool to add commonly white listed domains to your Pi-Hole setup. A simple tool to add commonly white listed domains to your Pi-Hole setup. - GitHub - anudeepND/whitelist: A simple tool to add commonly white listed domains to your Pi-Hole setup.
github.com




Kara listeye vereceğiniz onem kadar, beyaz listeye vereceğiniz onem de muhimdir. Cunku listeler resmi olmayabiliyor ve bazı sitelerin bozulmasına sebebiyet verebiliyor. Beyaz listeler bu tur durumların onune gecmek icin var.

Filtre ekledikten sonra, Settings kısmından Restart system seceneği ile veya pihole -g ile filtreleri aktifleştirmeniz gerekiyor.