Download: KnowHow_webfilter

Transkrypt

Download: KnowHow_webfilter
KNOW HOW
Filtrowanie ruchu WWW
Reklama umieszczana na stronach
WWW sprawia, że trudno jest dotrzeć do szukanych informacji, poza
tym niepotrzebnie zajmuje nam pasmo dostępu. W tym artykule przyjrzymy się narzędziom, które pozwolą blokować banery reklamowe
Blokowanie reklam w przeglądarce lub proxy
Serfowanie
bez banerów
w sieci lokalnej.
OLIVER FROMMEL
T
rudno jest teraz znaleźć strony
WWW bez banerów reklamowych.
W dodatku pojawiły się bardziej
uciążliwe formy reklamy, takie jak banery
Flash, reklamy zajmujące całe strony czy wyskakujące okienka – wszystkie one używają
zazwyczaj ogromnych bitmap spowalniających działanie (patrz Rysunek 1).
Oczywiście z punktu widzenia dostawcy treści jest to zrozumiałe, większość użytkowników jednak nie lubi banerów, zwłaszcza jeśli
spowalniają one pracę z Internetem. W dodatku większość reklam polega na tępym prezentowaniu obrazków, które o niczym nie informują, a jedynie ładnie wyglądają.
Taka sytuacja doprowadziła do powstania
dużej ilości programów chroniących przed niechcianymi banerami pojawiającymi się na
stronach WWW czy blokujących ładowanie się
innych reklam. Narzędzia blokujące filtrują
strumień danych, przepuszczając interesującą
nas treść, a odrzucając niechcianą reklamę.
Jest to łatwe do osiągnięcia, ponieważ przeglądarka pobiera strony przekazywane przez filtr,
a nie bezpośrednio z serwera.
Inteligentne oprogramowanie sprawdza, czy
strona nie zawiera obrazków zawierających reklamy i usuwa podejrzane elementy kodu
HTML ze strony. Przeglądarka otrzyma tylko
elementy potrzebne do wyświetlenia strony –
bez zbędnych „gadżetów”.
Jest kilka sposobów filtrowania. Niektóre
przeglądarki mają zintegrowane funkcje filtrujące lub mogą korzystać ze specjalnych wtyczek. Programy filtrujące, które działają jako
serwery proxy niezależnie od przeglądarki, ale
na tej samej maszynie, są dobrą alternatywą.
Ten rodzaj oprogramowania może działać również na osobnej maszynie, dostarczając w razie
potrzeby usług proxy komputerom działającym w domu lub sieci biurowej.
Zintegrowane z przeglądarką
Rysunek 1: Na stronach WWW pełnych reklam trudno jest znaleźć jakieś wartościowe
informacje.
38
Czerwiec 2004
W najlepszej sytuacji są użytkownicy Mozilli. Przeglądarka ta posiada plug-in (wtyczkę)
blokującą reklamy. Filtr o nazwie AdBlock
działa w oparciu o adresy URL. Instalacja
wtyczki jest banalna – wystarczy kliknąć odpowiedni odsyłacz na stronie domowej projektu [1]. Do instalacji nie potrzeba upraw-
www.linux-magazine.pl
nień administratora, ponieważ wtyczka AdBlock instaluje się w katalogu domowym
użytkownika w ~/.mozilla.
Należy ponownie uruchomić przeglądarkę,
żeby zauważyła plugin. Menu zarządzające
plugin-ami jest dostępne w sekcji adBlock poniżej Tools. Jeśli dodasz wzór podobny do tego
jak pokazany na Rysunku 2, wtyczka będzie
blokować imponującą liczbę reklam. To samo
menu pozwala przeglądać elementy składowe
bieżącej strony. Jeśli wykryjesz wśród nich niepożądaną reklamę, używając jej adresu URL
możesz utworzyć nową regułę filtrowania.
Możesz również kliknąć prawym przyciskiem na reklamie i wybrać opcję Adblock
Image z rozwijalnego menu, żeby dostać się do
tych samych ustawień. Spowoduje to wyświetlenie małego okna dialogowego, w którym
pojawi się adres reklamy-obrazka. Możesz
użyć wieloznacznika (*), aby zmienić adres
URL i dopasować go do potencjalnych innych
reklam. Przyjmijmy, że wyświetlony został następujący adres URL:
http://img-cdn.mediaplex.com/U
ads/2399/9556/DE_DE_mofg_dimU
Filtrowanie ruchu WWW
Rysunek 2: Użycie menu Mozilli do konfiguracji programu AdBlock.
4600_dhs_q1w0304_300x200_15k_U
FL_gif.gif
Możesz usunąć sekcję następującą po nazwie
serwera i katalogu ads i zamiast tego wpisać
gwiazdkę jako wzorzec wyszukiwania:
http://img-cdn.mediaplex.com/ads/*
Ten wpis informuje wtyczkę, żeby blokowała
wszystkie pliki z katalogu ads znajdującego
się na serwerze Mediaplex. Teraz kliknij
przycisk Reload i nagle... reklamy znikają.
Łatwo jest znaleźć tego typu adresy używane
do wyświetlania reklam, można w ostateczności sprawdzić sam kod HTML, używając
opisanego wyżej sposobu (patrz Rysunek 3).
Użytkownicy przeglądarki Mozilla Firefox
(znanej poprzednio jako Firebird) również
mogą skorzystać z tej wtyczki (nam udało się
ją uruchomić z przeglądarką Firefox 0.8).
Niektóre reklamy mogą być blokowane bez
instalacji wtyczki. Najłatwiejszym sposobem
jest włączenie opcji Load Images | for the
originating site only w menu Options | Web
Features. Ta prosta opcja działa bardzo efektywnie, ponieważ większość banerów reklamowych nie pochodzi z serwera, na którym
działa serwis, a jedynie jest pobierana z innych specjalizowanych serwerów. W czasie
przeglądania stron można też łatwo włączyć
tę opcję klikając prawym przyciskiem myszy
na reklamie i wybierając z menu kontekstowego opcję Block images from server.
Zauważmy, że ta metoda może zwrócić się
przeciwko nam, ponieważ zablokuje wszystkie
obrazki nie pochodzące z serwera, na którym
znajdują się strony WWW. Dodatkowo takie
podejście nie zablokuje reklam pochodzących
z serwera, na którym są przeglądane właśnie
strony WWW. Wtyczka adBlock daje zdecydowanie większe możliwości konfiguracyjne. Jeśli to wciąż za mało, możesz użyć innych, bardziej elastycznych serwerów proxy, które działają z innymi przeglądarkami, takimi jak Konqueror lub Opera.
Smakowita Java
Muffin jest jednym z serwerów proxy. Działa
między serwerem WWW a przeglądarką
WWW, filtrując cały ruch WWW w poszukiwaniu reklam. Muffin może być uruchamiany bezpośrednio i nie potrzebuje instalacji
i kompilacji (jest rozprowadzany w formie
pliku JAR). Potrzeba mieć tylko w systemie
zainstalowany pakiet Java Runtime Environment (JRE), na szczęście większość dystrybu-
KNOW HOW
cji instaluje JRE domyślnie. Kiedy ściągasz
program Muffin z adresu [2], zrób to klikając
prawym przyciskiem na linku do pliku Jar
i zapisz go lokalnie na dysku. W przeciwnym
wypadku przeglądarka może uruchomić plik
Jar bezpośrednio, co oczywiście nie jest zachowaniem przez nas zamierzonym.
Jeśli polecenie java nie znajduje się w ścieżce dostępu, dodaj do niej katalog, w którym
znajduje się ten plik wykonywalny np.:
export PATH=$PATH:/usr/javaU
/j2sdk1.4.2_02/bin
Możesz uruchomić Muffin wpisując polecenie java -jar muffin-0.9.3a.jar (patrz Rysunek 4). Muffin użyje domyślnego filtra NoThanks. Filtr ten stosuje proste reguły do
blokowania banerów. Proxy zawiera kilka
dodatkowych filtrów, które nie są włączone
domyślnie, takich jak Animationkiller, który
usuwa animacje GIF i Cookiemonster, który
steruje obsługą plików Cookies. Filtr NoThanks nie działa jednak poprawnie od razu
po instalacji, ponieważ do pracy potrzebuje
małego pliku konfiguracyjnego tzw. killfile.
Prosty plik killfile jest dostępny na stronie
WWW poświęconej programowi Muffin
w menu Samples.
Rysunek 3: Możesz sprawdzić kod źródłowy HTML, aby zidentyfikować adresy z reklamami.
Wiele serwisów używa po prostu przyrostka „ad” dodawanego do ich nazwy.
SŁOWNICZEK
Cookies (ciasteczka): Małe pliki tekstowe
skojarzone z konkretną stroną WWW. Dostawcy usług wykorzystują ciasteczka do zapisywania informacji na temat użytkowników
odwiedzających serwis (żeby np. mieć odpowiedź na pytanie „Kiedy użytkownik ostatnio
odwiedzał nasze strony WWW?”).
Port: Ponieważ na jednej maszynie może
działać kilka usług i demonów, kombinacja adresu IP i numeru portu w sposób
jednoznaczny identyfikują połączenie.
Standardy internetowe opisują do jakich
portów przypisane są określone usługi, na
przykład port 80 jest domyślny dla usługi
World Wide Web (HTTP), a port 25 dla
serwera poczty e-mail (SMTP).
Serwery proxy (zwane również pośredniczącymi) pracują między klientem (np.
przeglądarką WWW) a serwerem – istnieje
wiele rodzajów serwerów pośredniczących.
Z punktu widzenia klienta proxy jest serwerem, natomiast z punktu widzenia właściwego serwera proxy jest klientem. Serwery proxy potrafią przechowywać w pamięci podręcznej (cache) obejrzane już
strony WWW, przyspieszając w ten sposób
pracę z Internetem. Czasami bez udziału
serwera proxy nie jest możliwe bezpośrednie połączenie do Internetu.
URL: Uniform Resource Locator rozpoczyna
się od akronimu wskazującego stosowany
protokół (http, ftp,..), adresu serwera inter-
netowego (lub intranetowego) oraz opcjonalnie – nazwy katalogu i pliku. Adresy URL
umożliwiają jednoznaczną identyfikację każdego pliku w Internecie, np. http://www.linux-magazine.pl/Prenumerata_blankiet.pdf
Wieloznacznik (wildcard): Wiele linuksowych programów (takich jak powłoka) używa specyficznych znaków reprezentujących
jeden lub większą ilość znaków. Przykładowo gwiazdka (*) oznacza typowo cały łańcuch znaków, chociaż może oznaczać też
dowolną ilość powtórzeń określonego znaku
(w wydarzeniach regularnych). Kiedy wpiszesz ls *.jpg, powłoka wyświetli wszystkie
nazwy plików z rozszerzeniem.jpg, bez
względu na to, od czego zaczyna się nazwa.
www.linux-magazine.pl
Czerwiec 2004
39
KNOW HOW
Filtrowanie ruchu WWW
Rysunek 4: Oparty na Java program Muffin
ma własne GUI i potrafi poinformować, jakie
pliki obsługuje.
taj włączyć konfigurację ręczną i wprowadzić
odpowiednie opcje w polach HTTP Proxy
i Port (patrz Rysunek 5). W pierwszym polu
wpisujemy zazwyczaj localhost. W drugim polu wprowadź numer portu (patrz Tabela 1).
Opera ma podobne opcje w menu Network |
Proxy Servers; Firefox natomiast w Tools |
Options i w sekcji Connection Settings.
Filtr z historią
Żeby załadować plik killfile, wybierz filtr
NoThanks w sekcji Enabled Filters i kliknij
Preferences. Otworzy się okno dialogowe, wybierz tutaj Browse poniżej Kill File i znajdź
plik Killfile w twoim katalogu Muffin. Kliknij przycisk Apply i wybierz Load, żeby poinformować Muffin, by zastosował killfile. Kliknięcie przycisku Save spowoduje zapisanie
tych zmian na stałe, ponieważ łatwo zapomnieć zapisy zmian w Muffin-ie. Program filtrujący tworzy podkatalog Muffin w twoim
katalogu domowym i używa tego podkatalogu
do przechowywania pliku konfiguracyjnego
i pliku zdarzeń.
Musisz zmodyfikować ustawienia przeglądarki, wskazując nowe narzędzie jako proxy.
Zresztą to samo odnosi się do innych narzędzi
typu proxy. Jeśli używasz przeglądarki Mozilla, otwórz ustawienia (Edit | Preferences)
i kliknij mały trójkąt zaznaczony Advanced.
Znajdź ustawienia o nazwie Proxies; należy tu-
Privproxy [4] jest oparty na klasycznym narzędziu Junkbuster [3], ale znajduje się
w trakcie burzliwego rozwoju. Pakiet Privoxy zawarty jest w większości dystrybucji Linuksa. Pakiet należy instalować z poziomu
konta administratora. Kiedy instalujesz Privoxy w dystrybucji Red Hat, system operacyjny uruchamia filtr razem z systemem. Możesz
go zresztą uruchamiać ręcznie poleceniem
/etc/rc.d/init.d/privoxy start. Pliki konfiguracyjne znajdują się w katalogu /etc/privoxy,
a najważniejszy z nich to /etc/privoxy/config.
Możesz użyć tego pliku do bardziej zaawansowanej konfiguracji, jednak ustawienia domyślne powinny być na początek wystarczające.
Po ustawieniu portu, na którym pracuje
proxy (np. 8118), Privoxy niezwłocznie rozpocznie filtrowanie odwiedzanych stron
WWW. Program ma użyteczną cechę specjalnego tagowania miejsc, z których pochodziła
pierwotnie reklama, może też wyświetlać zarówno filtrowany obraz jak i regułę filtrowania, która została zastosowana do zablokowania obrazu. Umożliwia to sprawdzenie, czy narzędzie usuwa reklamy, czy też blokuje obrazki, które chciałbyś jednak oglądać. Możesz
konfigurować Privoxy bezpośrednio z poziomu przeglądarki WWW używając specjalnego
adresu: http://p.p (patrz Rysunek 6).
Zmywacz
Rysunek 5: Konfiguracja proxy w Mozilli pokazująca ustawienia dla filtra Muffin Web
działającego na porcie 51966 tej samej maszyny (localhost).
Użytkownicy domowi mogą spróbować programu Webwasher [5], bezpłatnego narzędzia
firmy Webwasher. Wersja bezpłatna jest
ograniczona do dwóch użytkowników i maksymalnie 20 równoczesnych połączeń. Wersja
komercyjna ma dodatkowo specjalne filtry
Tabela 1: Przegląd funkcji filtrów WWW
Adblock
Muffin
Privoxy
Webwasher
tak
tak
tak
nie
Proxy
nie
tak
tak
tak
Standardowy port
--
51966
8118
9090
W trakcie rozwoju
tak
nie
tak
tak
Wstępnie skonfigurowany
nie
nie
tak
tak
bezpłatne
bezpłatne
bezpłatne
tylko do użytku prywatnego
40
Czerwiec 2004
Rysunek 6: Strona konfiguracyjna Privoxy
w przeglądarce, gdzie możesz jednym kliknięciem włączać i wyłączać filtr.
rejestrowanie zdarzeń, ale można je włączyć
używając interfejsu WWW, który jest dostępny
pod specjalnym adresem http://-web.washer-/.
Domyślnym użytkownikiem administracyjnym jest admin z hasłem webwasher.
Kwestia wyboru
Wybór programu filtrującego jest właściwie
kwestią upodobań. Jeśli nie lubisz Javy, na
pewno nie będziesz używać Muffin-a. Jeśli
chcesz używać wyłącznie oprogramowania
bezpłatnego, nie użyjesz Webwasher-a.
Użytkownicy przeglądarek Mozilla i Firefox
mogą ładować specjalną wtyczkę adBlock,
jednak nie ma ona takich możliwości jak inne filtry. Privoxy jest dojrzałym narzędziem
znajdującym się w stanie burzliwego rozwoju i jest dostępny dla wielu dystrybucji. Program znajdziecie również w dystrybucji
GNU/Linux Debian na dołączonym do Linux Magazine DVD.
■
INFO
[1] AdBlock: http://adblock.mozdev.org
Czy instalacja możliwa
z poziomu zwykłego użytkownika
Licencja
dla Javascript. Webwasher do instalacji potrzebuje uprawnień administratora i nie ma
łatwego sposobu na obejście tego wymagania.
Webwasher jest dostępny w dwóch formatach
– jako pakiet RPM i jako archiwum.tar.gz,
które zawiera skrypt instalacyjny. Dzięki temu instalacja jest zredukowana do pojedynczego polecenia, które administrator musi
wykonać, żeby zainstalować program.
Oprogramowanie zaczyna pracę natychmiast
bez zadawania pytań o konfigurację i działa na
porcie 9090. Pliki konfiguracyjne znajdują się
w katalogu /etc/wwasher, plik zdarzeń to
/var/log/wwasher. Domyślnie wyłączone jest
www.linux-magazine.pl
[2] Muffin: http://muffin.doit.org
[3] Junkbuster:
http://internet.junkbuster.com
[4] Privoxy: http://www.privoxy.org
[5] Webwasher: http://www.webwasher.com/
client/download/private_use/linux

Podobne dokumenty