pfSense Kullanıcı Bazlı Web Filtreleme (URL Filter)

Merhabalar;

Bu makalede pfSense 2.2 sürümü üzerinde URL filter nasıl yapılır detaylı bir şekilde anlatmaya çalışacağım. URL filter ile local ağdaki bilgisayarların belirli web sitelerine girmemelerini veya belirli sitelere izin verilmesini sağlayabilirsiniz. URL filter kullanıcı, network, grup bazlı olarak kullanılabilir. Aşağıdaki başlık altındaki özellikler ve nasıl yapıldığından bahsedilecektir, pfSense üzerinde Squid ve SquidGuard paketlerini kurup yapılandırmanız gerekmektedir.

 

Başlıklar

URL Filter

General Settings

Common ACL

Groups ACL

Target categories

Times

Rewrites

Blacklist

Log

 

Önemli: URL Filter ‘da yapılan değişikliklerin hemen aktif olmasını istiyorsanız yapılan her değişiklikten sonra General Settings sekmesine girip Apply butonuna tıklamanız gerekiyor.

Önemli: URL Filter özelliğinin transparent modda çalışması için Services > Proxy server > Transparent Proxy özelliğinin aktif etmeniz gerekiyor.

Ana menüde Services > Proxy filter sekmesine giriş yaptıktan sonra General Settings bölümüne girip Proxy servisinin çalıştığından emin olalım.

Common ACL

Bu bölümde bütün kullanıcılar için izin tanımlaması yada kategori bazlı engelleme yapılabilir. Blacklist kategorilerine ulaşmak isterseniz Target Rules List (click here) tıklayarak ulaşabilirsiniz.

Do not allow IP-adress : Kullanıcıların ip adresi yazarak url filtrelemeyi atlatmalarını engellemek isterseniz bu seçenek aktif edilebilir.

Proxy denied error : Engellenen siteler için hata mesajı yazılabilir. “Yasaklı adres. Erişiminiz Engellendi ” gibi.

Redirect mode : Yönlendirme modu seçilebilir.

Redirect info : Dış yönlendirme modu seçilebilir.

Use SafeSearch engine : Bu özellik güvenli arama motoru kullanılmasını sağlar. Desteklenenler; Google, Yahoo, MSN, Live search gibi.) Bu özellik aktif edildiği zaman Redirect mode devre dışı kalır.

Rewrite : Kullanıcıların gitmek istediği siteyi başka bir siteye yönlendirme kuralı buraya tanımlanabilir.

Log : URL Filter loglarının tutulmasını istiyorsanız bu özellik aktif edilebilir.

Default olarak bütün kategoriler “Deny” olarak gelir bunu mutlaka “Allow” olarak değiştirmeniz gerekiyor aksi takdirde internete ve hiçbir siteye giremezler. Her değişiklik sonrası alt satırda bulunan Save butonuna tıklayarak ayarlar kaydedilir.

Groups ACL

Bu bölümde ise kullanıcılar için ayrı ayrı özel kurallar uygulunabilir. Yeni kural eklemek isterseniz + butonuna tıklayabilirsiniz.

Disabled : Kuralı devre dışı bırakır.

Name : Oluşturulacak kural için herhangi bir isim girilebilir.

Order : Kural listesine göre kuralları sıralamanızı sağlar. Örnk: Personel kuralı en başta Öğrenci kuralı ikinci gibi gibi.

Client : Bu alana, aralarında bir boşluk bırakarak birden fazla network aralığı veya ip adresi girilebilir.

Time : Kuralın geçerli olacağı zaman kuralı buraya tanımlanabilir. Detayları “Times” bölümünde anlatılacaktır.

Description : Akılda kalıcı bir açıklama yazılabilir. Sistem dikkate almayacaktır.

Kullanıcıların ip adresleri veya network aralığı yazıldıktan sonra Target Rules List (click here) tıklayarak blacklist kategorilerine ulaşılabilir ve kullanıcılar için uygulanacak kategoriler için deny, allow, gibi ifadeler uygulanabilir.

Ayarlar kaydedildikten sonra aşağıdaki gibi resim ile karşılaşacaksınız. Daha sonra kuralın hemen aktif olmasını istiyorsanız General Settings sekmesine girip Apply butonuna tıklayabilirsiniz.

Şimdi yaptığımız kural çalışıyormu bakalım, personel kullanıcısı benim yasakladığım alan adına yani izlesene.com sitesine girerse aşağıdaki gibi proxy hata mesajı ile karşılaşacaktır.

Target Categories

Bu bölümde birden fazla domain adı, adres veya ifade ekleyebilirsiniz. Oluşturmuş olduğunuz grup kuralını başka kullanıcılar için deny, allow gibi izinler tanımlayabilirsiniz.

Name : Oluşturulacak kural için herhangi bir isim girilebilir.

Domain List : Aralarında bir boşluk bırakarak birden fazla domain ismi girilebilir. “Örnk: izlesene.com facebook.com gibi.”

URL List : Bu bölüme adres girilebilir. Farklı adresler kullanmak iterseniz iki tek tırnak ‘ ‘ yada (boşluk) kullanabilirsiniz.

Regular expression : Bu alan URL içerisinde geçicek ifadeyi yazmanızı sağlar. Birden fazla ifade yazmak isterseniz aralarına | düz çizgi bırakarak girebilirsiniz.

Redirect mode : Yönlendirme modu seçilebilir.

Redirect : Bu alana istediğiniz hata mesajını yazabilirsiniz.

Description : Akılda kalıcı bir açıklama yazılabilir. Sistem dikkate almayacaktır.

Log : Loglarının tutulmasını istiyorsanız bu özellik aktif edilebilir.

Ayarlar kaydedildikten sonra aşağıdaki gibi bir resim ile karşılaşacaksınız.

Yukarıdaki yapmış olduğumuz kuralı Groups ACL bölümüne girip istediğimiz kural için uygulamak istersek o kuralın içerisine girip Target Rules List (click here) tıkladıktan sonra oluşturmuş olduğumuz test kuralına deny, allow gibi izinler tanımlayabiliriz.

Kuralın içerisine girdikten sonra gördüğünüz gibi oluşturduğumuz kural eklenmiş bunun üzerine tıklayıp deny, allow gibi izinler uygulayabiliriz. Ayarlar yapıldıktan sonra alt satırdan Save butonuna tıklayarak ayarlar kaydedilir.

Times

Bu bölümde ise kullanıcılar için belirtilen kuralların belirli saatler arasında çalışmasını isteyebilirsiniz. Örneğin; personel kullanıcıları 11:00 – 13:00 saatleri arası facebook twitter, izlesene gibi sitelere girebilsinler ama diğer saatler arası tamamen kapalı olsun diyebiliriz.

Kural oluşturduktan sonra aşağıdaki gibi bir ekran ile karşılaşacaksınız bu alanda yapacağımız birkaç ayar var. Örneğin; personel kullanıcıları her hafta her gün belirli saatler arası facebook, twitter, izlesene gibi sitelere girebilsinler ama diğer saatler arası kapalı olacaktır, buna göre zaman ayarları yapılmalıdır. Ayarlar yapıldıktan sonra alt satırdan Save butonuna tıklayarak ayarlar kaydedilir.

Times bölümünde oluşturduğumuz zaman kuralını hangi kullanıcılar için uygulamak istiyorsak o kuralın içerisine girip aşağıdaki gibi ayar yapılmalıdır. Bu örnekte personel kullanıcıları için uygulanacaktır.

Aşağıdaki gibi Time üzerine tıkladıktan sonra gördüğünüz gibi Times bölümünde oluşturduğumuz kural eklenmiş.

Önemli: Burada dikkat etmeniz gereken Target Rules List (click here) tıkladığınız zaman karşınıza kategoriler çıkacaktır ve orada aşağıdaki gibi bir resim ile karşılaşacaksınız, zaman tanımlaması yaptıysak bu bölüm göz ardı edilebilir ancak zaman tanımlaması yapmadıysak zaman dışında uygulanacak izin tanımlamalarını belirtebilirsiniz. Belirtmiş olduğum facebook ve twitter örneği sadece bir örnekti siz bu bölümden istediğiniz kuralın zaman içerisinde çalışmasını sağlayabilirsiniz.

Rewrites

Bu özellik ise bir kullanıcı bir siteye giderken onu başka bir siteye yönlendirmenizi sağlar. Örneğin: bir kullanıcı bga.com adresine giderken onu cehturkiye.com adresine yönlendirme yapabilirsiniz.

Daha sonra aşağıdaki gibi ayarlar yapıldıktan sonra alt satırdan Save butonuna tıklayarak ayarlar kaydedilir. Aşağıdaki kural ‘da başında ne geçerse geçsin bga.com ile biten siteye giden kullanıcılar cehturkiye.com adresine “redirect” yönlendirilecektir. Tabi siz kullanıcılar için facebook adresine gidenleri google.com adresine yönlendir ‘de diyebilirsiniz.

Daha sonra uygulamak istediğimiz kullanıcı yada network aralığına Groups ACL bölümüne girip istediğimiz kurala uygulayabiliriz. Bu örnekte personel kullanıcıları için uygulanacaktır.

Kuralın içerisine girdikten sonra alt satıra inip Rewrite bölümünü bulup oluşturduğumuz kuralı ekleyebiliriz.

Blacklist

Bu alana istediğiniz bir blacklist url adresini yazarak içerisinde bulunan kategorileri download edebilirsiniz. Sık güncellenen karaliste adresleri;

 http://www.shallalist.de/      ——-       http://urlblacklist.com/

  • http://www.shallist.de/Downloads/shallalist.tar.gz

Log

Bu bölümde URL Filter tarafından engellenmiş, proxy ayarları, filtre ayarları, gibi birçok logları görebilirsiniz. Engellenmiş web siteleri veya logların tutulmasını istiyorsanız General Settings bölümüne girip Enable Log seçeneğini seçmeniz ve her yeni kural sonrası kuralların loglarını aktif edebilirsiniz.

Pratik Bilgi

Arkadaşlar pfSense firewall üzerinde kullanıcıların http://facebook.com veya http://twitter.com adresine gitmelerini engelleyebilirsiniz ancak bu adreslerin başına http yerine https yazarlarsa direkt olarak istedikleri siteye girebilirler tabi siz o sitelerin network aralığını tespit edip firewall tarafında engelleyene kadar. Bu makalede bu yazı yoktu ama bazı insanlar bu konu ile ilgili sorun yaşamış bende yazmak istedim. Ben twitter ve facebook network aralıklarını aşağıda paylaştım bunları firewall tarafında bütün network için veya belirli kullanıcılar için yasaklarsanız artık https facebook ve twitter adreslerine giremezler. Aşağıdaki facebook ve twitter ip adreslerinin değiştiğini anlarsanız dig, nslookup, whois gibi araçlardan yardım alarak yeni network aralığını tespit edip ekleyebilirsiniz.

Güncel olanlar;

69.41.160.0/20
69.171.0.0/16
66.220.144.0/20
69.63.0.0/16
204.15.0.0/16
31.13.0.0/16
199.59.0.0/16
173.252.0.0/16
179.60.0.0/16
173.252.120.0/16
199.16.0.0/16 twitter network aralığı.

1. Adım

Ana menüde Firewall > Aliases > IP > + > yeni kural oluşturduktan sonra ip adresleri girilir.

2. Adım

Ana menüde Firewall > Rules > LAN > + > yeni kural oluşturduktan sonra aşağıdaki gibi ayarlar yapılmalıdır. Ayarlar yapıldıktan sonra alt satırdan Save butonuna tıklayarak ayarlar kaydedilir.

Firewall ‘da kurallar yukarıdan aşağıya doğru uygulanmaktadır. Yukarıdaki kural kaynağı herhangi biri olan hedefi facebook ve twitter ip adreslerine giden herkesi “drop” yasakla demiş oluyoruz diğer bütün sitelere girebilirler.

” Online pfSense Firewall & Router Eğitimi | www.udemy.com/pfsense-training “

Tagged with: , , , , , , , , , ,

Leave a Reply

Your email address will not be published. Required fields are marked *

*

Archives