Https problemi
-
pfsense squidguard aynı makine de ise çözemezsin bu ikiliyi ayırdığın zaman çözülür.
Merhaba,
peki SquidGuard tek bir makine üzerinde rol olarak çalışacak hmmmm servis start olması için Squide ihtiyaç duyması gerekmezmi? Squid sadece kendi başına tek bir makine üzerinde çalışır amma SquidGuardı Squidsiz nasıl çalışacak?
-
Herkese merhaba,
HTTPS protokolünün bloke edilemediğini görmeniz açınızdan şu kuralı ekleyin SquidGuard üzerinde Default kısmından Default destination kategorilerini açarak burdan sadece Default access [all] kategorisine DENY verin kuralı çalışır hale getirin SAVE / APPLY adres satırına http ile başlayan hangi site olursa olsun BLOCK lanıyor sorun yok ammmaa HTTPS ile başlayan bir site bulduğunuzda açıyor ;)
-
merhaba squid3+squidguard ile yaparsanız https://facebook.com engelliyor arkadaşlar
-
merhaba squid3+squidguard ile yaparsanız https://facebook.com engelliyor arkadaşlar
Merhaba,
makinemde zaten squid3 ve squidguard yuklu block koymuyor tek başına squid3 de denedim blocklamıyor
-
Deli olmak üzereyim ya, yok mu bunun bir çözümü?
-
Selamlar,
İşin teorik kısmına bakınca ;
https port 443 kullanarak istemci ile hedef arasında şifreli iletişim kuran bir uygulama katmanı. Hiç bir, içerik filtreleme sistemi (websense,juniper,checkpoint, ıvır zıvır) ve IDS/IPS (Snort,Mcafee) https trafiğinin içeriğini analiz edemez.Soruna pfSense tarafından bakınca:
pfSense'de squid transparent modda çalıştığında pf yalnızca port 80 trafiğini squid'e yönlendiriyor.hedef portu 443 olan http istekleri zaten squid'e uğramıyor bu yüzden çeşitli taklalar atmanız beyhude.pfctl -sn | grep 80
rdr on vr0 inet proto tcp from any to ! (vr0) port = http -> 127.0.0.1 port 80
Çözüm;
Squid'i non-transparent modda çalıştırın, kullanıcıların browser'ına proxy adresi girin (zahmetli olduğunu düşünüyorsanız otomotik proxy bul seçeneği kullanılabilinir) ve firewall'dan lan'dan wan'a giden hedef portu 80 ve 443 olan tcp trafiğini blocklayın.
Bu durumda, istemcilerin https trafiği squid'e uğrayacaktır ve squid veya squidGuard ile facebook.com yasak dediğinizde https://facebook.com da blocklanmış olacaktır.Aşağıdaki örnek squidGuard logunda dikkatlice bakınız;
tail -f /var/squidGuard/log/block.log | grep "192.168.5.205"
2010-08-11 15:39:20 [58590] Request(coslat/blk_BL_sosyal_aglar/-) http://www.facebook.com/ 192.168.5.205/- - GET REDIREC
2010-08-11 15:37:40 [58590] Request(pf/blk_BL_sosyal_aglar/-) www.facebook.com:443 192.168.5.205/- - CONNECT REDIRECT
2010-08-11 15:37:44 [58590] Request(pf/blk_BL_sosyal_aglar/-) www.facebook.com:443 192.168.5.205/- - CONNECT REDIRECTBir deneyin, daha teorik açıklama isterseniz enine boyuna tartışabiliriz : ))
-
Selamlar,
İşin teorik kısmına bakınca ;
https port 443 kullanarak istemci ile hedef arasında şifreli iletişim kuran bir uygulama katmanı. Hiç bir, içerik filtreleme sistemi (websense,juniper,checkpoint, ıvır zıvır) ve IDS/IPS (Snort,Mcafee) https trafiğinin içeriğini analiz edemez.Soruna pfSense tarafından bakınca:
pfSense'de squid transparent modda çalıştığında pf yalnızca port 80 trafiğini squid'e yönlendiriyor.hedef portu 443 olan http istekleri zaten squid'e uğramıyor bu yüzden çeşitli taklalar atmanız beyhude.pfctl -sn | grep 80
rdr on vr0 inet proto tcp from any to ! (vr0) port = http -> 127.0.0.1 port 80
Çözüm;
Squid'i non-transparent modda çalıştırın, kullanıcıların browser'ına proxy adresi girin (zahmetli olduğunu düşünüyorsanız otomotik proxy bul seçeneği kullanılabilinir) ve firewall'dan lan'dan wan'a giden hedef portu 80 ve 443 olan tcp trafiğini blocklayın.
Bu durumda, istemcilerin https trafiği squid'e uğrayacaktır ve squid veya squidGuard ile facebook.com yasak dediğinizde https://facebook.com da blocklanmış olacaktır.Bir deneyin, daha teorik açıklama isterseniz enine boyuna tartışabiliriz : ))
80/443 portlarını blockladınız
banka siteleri https girişli bankalara nasıl bir kural yazılacak? -
Herhangi bir kural yazılmayacak, test ettiniz mi ?
-
squid, pfsense kurallarının önünde çalışır aklınızda olsun.
bu yüzden 443'e firewalldan kural ekleyerek blok koymanız, 443'ü squid de dinliyorsa bi işe yaramaz.
bilgim teoriktir, pratikte hiç denemedim. -
Özür dileyerek söylüyorum ama teorik dedikleriniz biraz sallama geldi;
pf bir firewall, squid ise proxy. pf ile block koyduğunuz kurallar için squid hiç birşey yapamaz.pf ile hedef portu 443 olan tcp trafiğini block dediğinizde, yerel ağdaki bir istemci wan tarafındaki bir hedefin 443. portuna gönderdiği istekler pf tarafından engellenir.
Fakat squid proxy hizmet veriyorsa, 443 isteklerini proxy devralır ve hedef ile istemci arasında bu trafiği yönetir.Bir örnekle açıklayayım;
İstemci, squid proxy'e derki; ben https://google.com adresine ulaşmak istiyorum proxy'de eyvallah sen bekle ben bir koşu https://www.google.com u alıp geleyim der ve proxy hedef sunucuya gider sayfayı alır istemciye teslim eder.Bakınız lab network yapısı:
istemci (IP:192.168.5.205 GW: 192.168.5.60) –- (192.168.5.60)pfSense(10.0.0.1)--- Internet (https://www.google.com)1-pfSense'de lan'dan hedef portu 443 ve 80 olan portlar yasak dedim;
2-LAN subnetinde bulunan bir istemciden 443. portuna bir istekte bulunuyorum ;
root@ubuntucuk:~# wget https://www.google.com
–2010-08-13 10:48:30-- https://www.google.com/
www.google.com çözümleniyor... 66.102.13.104, 66.102.13.105, 66.102.13.106, ...
www.google.com[66.102.13.104]:443 bağlanılıyor… ^Cpf loglarına bakıyorum;
tcpdump -n -e -ttt -i pflog0
tcpdump: WARNING: pflog0: no IPv4 address assigned
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on pflog0, link-type PFLOG (OpenBSD pflog file), capture size 96 bytes
000000 rule 41/0(match): block in on em0: 192.168.5.205.42781 > 66.102.13.104.443: tcp 40 [bad hdr length 0 - too short, < 20]
3. 681677 rule 41/0(match): block in on em0: 192.168.5.205.42787 > 66.102.13.104.443: tcp 40 [bad hdr length 0 - too short, < 20]
2. 995847 rule 41/0(match): block in on em0: 192.168.5.205.42787 > 66.102.13.104.443: tcp 40 [bad hdr length 0 - too short, < 20]
^C
3 packets captured
3 packets received by filter
0 packets dropped by kernelGördüğünüz gibi direkt 443 e yaptığım istekler pfSense tarafından blocklandı !
Şimdi aynı isteği pfSense üzerinde kurulu squid'e ileticem ve squid aracılığı ile google.com a 443. porttan bağlanıcam;
tail -f /var/squid/log/access.log
1281687453.560 11378 192.168.5.205 TCP_MISS/200 8728 CONNECT www.google.com:443 - DIRECT/66.102.13.104 -
1281687478.171 126 192.168.5.205 TCP_MISS/200 692 GET **http://**clients1.google.com.tr/complete/search? - DIRECT/66.102.13.101 text/javascript
1281687478.429 120 192.168.5.205 TCP_MISS/200 694 GET http://clients1.google.com.tr/complete/search? - DIRECT/66.102.13.138 text/javascript
1281687480.995 1396 192.168.5.205 TCP_MISS/200 5422 CONNECT mail.google.com:443 - DIRECT/66.102.13.18 -
^C
TCP_MISS/200 ve hedefe ulaştım …pf loglarında bu trafiğin blocklandığına ait hiç bir kayıt göremezsiniz : ))
Şimdi boş dediğiniz osi mosi leri göz önünde bulundurarak mümkünse test edin : ))
Eğer çok değerli teorik bilgilerinizle buna ikna olmadıysanız, bir video çekebilirim.
Saygılar. -
Selamlar,
Başka bir yerde konusu açılmışken, buradaki konuyu resimli olarak güncellemek istedim.
Facebook.com adresine ait ip adresleri tespit edilip (whois, nslookup komutları ile) aliase tanımlanır;
Firewall'dan bu sunuculara 443. erişimleri engellenir;
İstemciler, https://www.facebook.com adresine gitmek istediklerinde erişimleri engellenmiş olur. Bunu firewall loglarında görebilirsiniz;
Aynen uygularsanız, sorununuz çözülmüş olur.
Güvenli Günler
Ozan UÇAR
www.cehturkiye.com -
kelime olarak facebook kelimesini yasaklasamayı denedinizmi
-
-
hocam cok guzel yazmıssınız ama facebook un bir suru ip si var ben baska bir fw da bu mantıkla denedim fakat kısa bir sure sonra o 60 lı bloktan baska bir ip ile yine cıkıyorlar
-
1-) rule > aliases facebook diye bir obje tanımladım, Taype bölümünü ise network(s) işaretledikten sonra 209.126.190.70 69.41.185.229 203.36.226.2 ipleri yazdım
2-) tekrar rule > Action bölümünü Block seçip Lan Prot TCP Source * Port * Destination facebook Port 443 Gateway * yaptığımda https ile facebook engellediğini gördüm. 2 haftadır deniyorum sonuç şuanlık başarılı gibi gözüküyor.. -
facebook gibi sitelerin dış ıp adreslerini bulup buadresler için firewall rulesten bu adrese gidildiğinde 443 portunu kapat demen lazım bu şekilde çözülüyor. bununla ilgili google da pfsensenin abc si adlı makaleyi indir. orada ayrıntılı olarak yazıyor.
-
merhabalar,
sabit konularda upload olarak ekledim ben pfsense ABC sini oradan da alabilirsiniz.