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