Merhabalar, yakın zamanda pfsense squid proxy ile yollarını ayırmayı planlıyor. Peki bu süreçte log tutma ve ağı filtreleme işlemlerini nasıl yürüteceğiz derseniz karşımıza e2guardian çıkmakta. Kullanımı ve yapılandırması squid proxy den daha kolay olan e2guardian kurulumundan bahsedeceğiz. Kullandığımız sistem pfsense 2.7.2 sürümü E2guardian ile ağımızı kontrol edebilir, logları tutabilir ve 5651 için log tutabileceğiz.
E2Guardian Kurulumu İçin Hazırlık
Maalesef ki E2guardian direk olarak pfsense kuramıyoruz bunun için Marceloc ve E2guardian geliştiricilerinden yararlanacağız. İlk önce pfsense reposunda olmayan paketleri kurmak için System>Package Manager > Available Packages bölümünden System_Patches paketini kuruyoruz. Artık E2Guardian kurulumuna geçebiliriz.
Yapılacak işlemlerden önce mutlaka pfsense yedeğini almayı unutmayınız. Sisteminizde doğacak herhangi bir sorun sonucu yedeğe dönebilirsiniz.
E2Guardian İçin paket tanımlama
System_Patches kurulduktan sonra System>Patches gelerek Add New Patch diyerek yeni bir paket ekleyeceğiz.
Description için herhangi bir veri girebilirsiniz.
Patch Cıntents kısmına ise Marcelloc github sayfasından pfsense sürümümüze uygun paket içeriğini çekiyoruz.
Bizim pfsense sürümümüz 2.7.2 olduğu için 27_unofficial_packages_list.patch dosyasını açıp raw formattaki sayfayı kopyalıyoruz.
Path Strip Count değeri olarak 1 seçiyoruz ve Save butonuna tıklayıp kaydediyoruz.
Apply butonuna tıklayarak paketi aktif ediyoruz.
Artık Patches ile işlemimiz bitti. Şimdi sıra geldi Unofficial_25.conf dosyasını eklemeye. Bunun için üst menüden Diagnostics > Command Prompt sayfasını açıyoruz.
Marcelloc github sayfasından pfsense sürümünüze göre alacağımız conf dosyasını sisteme tanıtacağız.
Conf dosyamızın yolunu belirtikten sonra Execute butonuna basıyoruz.
Conf dosyamız tanımlandı şimdi kurulma geçelim. Artık e2guardian Packet Maneger kısmında görünecektir.
E2Guardian Kurulumu
E2guardian kurulumu için System > Package Manager > Available Packages yöneticisine girip e2guardianı aratalım.
İnstall butonuna tıklayalım ve kurulumu başlatalım.
Eğer kurulum esnasında pkg-static: An error occured while fetching package Failed Hatasını alırsanız ssh den terminale bağlanıp pkg install python39 komutu ile python manuel olarak kurunuz.
Kurulumumuz tamamlandı.
E2Guardian Yapılandırması
Pfsense 2.7.2 sürümü güvenlik duvarımıza e2guardian kurulumu tamamlamış bulunmaktayız. HTTPS izleneceği için bir interlan sertifika oluşturalım.
Add butonuna tıklayarak sertifikamızı ekleyelim.
Oluşturacağınız sertifika methodu mutlaka Create an internal Certificate Authority olmalıdır. Serfika eklendikten sonra Services > E2guardian > Daemon gelerek e2guardianı devreye alabiliriz.
E2guardian aktif ettiğinizde lan bacağınızdan erişiminiz kesilebilir bunun için wan bacağından da erişilebilir duruma getiriniz yada ekstra bir interfaceniz varsa o interfaceden e2guardianı aktif etmeyerek terminalden gerekli işlemleri yapabilirsiniz.
Yukarda enable edip interfaceleri seçtikten sonra http workers kısmında aynı anda kaç kullanıcı request atabileceklerini belirleyelim çok kalabalık bir yapınız varsa 15000 25000 arasında bir değer seçebilirsiniz.
Transparan proxy ve SSL porxy aktif ettikten sonra Show Advanced Options tıklayınız.
Parent mode kısmının Direct connect olduğunu kontrol ettikten sonra Save butonuna tıklayın. Sistemi aktif edelim.
E2guardian Başlatma
Değişiklikleri kaydetmek için Apply Changes diyerek aktif ediyoruz.
E2guardian aktif olmayabilir. Status > Services baktığımızda aktif değilse terminalden pfsense bağlanalım. E2guardianı restart ederek sorunun ne olduğuna bakalım.
/usr/local/etc/rc.d/e2guardian.sh restart
İncelediğimiz zaman ld-elf.so.1: Shared object “libssl.so.111” not found, required by “e2guardian” libssl.so.111 dosyasını görmediği için sistemi başlatamamaktadır. Aşağıdaki komutu girerek libssl.so.30 dosyasını libssl.so.111 olarak tanıtacağız.
ln -s /usr/lib/libssl.so.30 /usr/lib/libssl.so.111 ln -s /usr/lib/libcrypto.so /usr/lib/libcrypto.so.111
Artık restart edebiliriz.
Servislere baktığımızda e2guardianın aktif olduğunu görebilirsiniz.
E2guardianın tam oturması az zaman alabilir. Real Time den baktığımızda akan trafiği görebilirsiniz.
Ağ Filtreleme
İstediğiniz web sitelerini rahatlıkla engelleyebilirsiniz. Bu kolaylığını çok beğendim.
Yapılandırma
İlk önce Services > E2guardian > General sekmesinden Auth Plugins kısmından ip ile grup oluşturacağımız için Ip Adress seçip en altta Save butonu ile kaydediyoruz.
Blacklist Download butonuna tıklayarak güncelliyoruz. İndirme hızı internet hızınıza göre zaman alabilir. İndirme işi bittikten sonra Save butonu ile kaydediyoruz.
ACLs kısmından yeni bir kural oluşturmak için Add buttonuna basınız.
Banned enable ettikten sonra config kısmına engellenecek siteleri yazıp kaydet butonuna basıyoruz.
Karşımıza çıkan erkandan Apply Changes diyerek değişiklikleri kaydediyoruz.
Groups kısmına gelerek oluşturduğumuz kural için Add botununa basarak bir grup oluşturuyoruz.
Site kısmında oluşturduğumuz kuralı seçiyoruz,
Reporting Level de resimdeki gibi seçip Save butonu ile grubu kaydediyoruz.
Açılan sayfadan Apply Changed butonuna basıp değişiklikleri kaydediyoruz.
Üst menünden IPs kısmına gelip en alta oluşturduğumuz gurubu göreceğiz. Bu grupta hangi ipler girecekse belirliyoruz. alt alta da yazabilirsiniz. Ip adresleri girildikten sonra Save butonuna basınız ve değişiklikleri kaydetmek için Apply Changes butonuna basınız. E2guardian değişikleri tamamen uygulaması biraz zaman alabilir. Değişikliklerin tam olarak devreye girmesi için biraz bekleyebilirsiniz.
Test Zamanı
Değişikliklerimizi kaydettik, bakalım zulfumehmet.com ve tarsus.gov.tr giriş sağlayabiliyor muyuz?
tarsus.gov.tr sitesini test edelim.
zulfumehmet.com sitesini test edelim.
Zulfumehmet sitesi https protokolü kullandığı için karşımıza hata sayfası çıkmayacaktır.
Web sitesi engellemek bu kadar kolay.
Log Takibi
Öncelikle log dosyamız /var/log/e2guardian/ dizinin altına bulunmaktadır. Bu logu pfsense web panelden de bakmak isterseniz paket yöneticisinden Sarg paketini veya Lightsquid paketlerini kullanabilirsiniz.
Bu paketleri kullanmak için Report and log kısmından e2guardian log tutma formatını Squid log formatına göre değiştirmeniz gerekecektir.
E2guardian ile squid log tutma türleri biraz farklı. E2guardian da direk tarih yazarken squid ise zaman damgası ile log tutmaktadır.
Sarg ile izleme
Proxy server olarak E2guardian seçip Save butonu ile kaydedelim.
Schedule kısmını da yukardaki şekilde düzenleyiniz ve Save butonuyla değişiklikleri kaydedelim.
Logları belli aralıklarla çekeceği için bir süre sonra tablo halinde View Report üzerinden görebilirsiniz.
Lightsquid ile izleme
Paket yöneticisinden Lightsquid paketini kurunuz. paketi kurduktan sonra aşağıdaki komutu terminalden yada Diagnostics > Command Prompt sekmesinden giriniz.
fetch -o /usr/local/pkg/lightsquid.inc http://e-sac.siteseguro.ws/lightsquid/inc.txt
Değişiklikleri kaydetmek için Save butonuna bastığınız halde bu hatanın çıkması normal, bir süre sonra logları görebilirsiniz.
Logları burdan da takip edebilirsiniz.
Squid Proxy ve E2guardian Arasındaki fark
Kurulum ve bir süre kullanımdan sonra squid ile e2guardin arasındaki farklara değinebiliriz artık. İlk önce squid proxy den başlayalım.
Squid Proxy
Artıları
- İlk önce kesinlikle kurulumu çok kolay. (Tabi şu an için çünkü yeni güncelleme de artık pfsense squid paketlerini kaldıracak)
- Bant genişliğini rahat optimize edebilirsiniz.
- Temel URL filtreleme yapabilirsiniz.
Eksikleri
- HTTPS proxy gerçekten çok can sıkıcı. HTTPS ağı loglamak için sizi çok yorabilir.
- Web filtreleme konusunda hele https filtrelemede çok başarılı değil.
- Zararlı siteleri engellemede çok başarılı değil.
E2guardian
Artıları
- İçerik bazlı web filtrelemede başarılı.
- HTTPS konusu muazzam. Uğraştırmadı hiç
- URL bazlı filtrelemede çok başarılı.
- CalmAV entegrasonu çok iyi
Eksikleri
- İlk kurulumu zahmetli
- Local Cache özelliği yok (Artık internet hızları o kadar yükseldi ki local cache gerek kalmadığını düşünüyorum)
- Squid proxy göre sistem tüketimi biraz daha fazla
Hangisi Tercih Edilmeli
Eğer sadece log tutmak ve ağ trafiğini kontrol altında tutmak istiyorsanız mutlaka E2guaridan öneririm. Ama local cache (ön bellek) sizin için önemliyse burda da squid öneriyorum. Çünkü en büyük farkları bu.
Yazacaklarım bu kadar. Umarım faydalı bir makale olmuştur. Takıldığınız yerlerde yorum yazarsanız yardımcı olmaya çalışacağım.