Konfigurowanie SquidGuard, włączanie reguł dotyczących treści i analizowanie dzienników Squid — część 6
LFCE (Certyfikowany inżynier Linux Foundation) to profesjonalista posiadający umiejętności niezbędne do instalowania usług sieciowych w systemach Linux, zarządzania nimi i rozwiązywania problemów z nimi, a także odpowiedzialny za projektowanie, wdrażanie i bieżące utrzymanie całej architektury systemu.
Przedstawiamy program certyfikacyjny Linux Foundation.
W poprzednich postach omawialiśmy, jak zainstalować Squid + squidGuard i jak skonfigurować squid, aby poprawnie obsługiwał lub ograniczał żądania dostępu. Upewnij się, że przejrzałeś te dwa samouczki i zainstalowałeś zarówno Squid, jak i squidGuard, zanim przejdziesz dalej, ponieważ ustawiają one tło i kontekst tego, co omówimy w tym poście: zintegrowanie squidguard z działającym środowiskiem squid w celu wdrożenia reguł czarnej listy i kontroli zawartości Serwer proxy.
Wymagania
- Zainstaluj Squid i SquidGuard – część 1
- Konfigurowanie serwera proxy Squid z ograniczonym dostępem – część 5
Do czego mogę/nie mogę używać SquidGuard?
Chociaż squidGuard z pewnością ulepszy i ulepszy funkcje Squida, ważne jest, aby podkreślić, co może, a czego nie może zrobić.
squidGuard może być używany do:
- ograniczyć dozwolony dostęp do sieci dla niektórych użytkowników wyłącznie do listy akceptowanych/dobrze znanych serwerów internetowych i/lub adresów URL, jednocześnie odmawiając dostępu innym serwerom internetowym i/lub adresom URL znajdującym się na czarnej liście.
- blokować dostęp do witryn (według adresu IP lub nazwy domeny) pasujących do listy wyrażeń regularnych lub słów dla niektórych użytkowników.
- wymagać używania nazw domen/zakazać używania adresu IP w adresach URL.
- przekierowują zablokowane adresy URL do stron błędów lub stron informacyjnych.
- stosuj odrębne reguły dostępu w oparciu o porę dnia, dzień tygodnia, datę itp.
- wdrażać różne zasady dla różnych grup użytkowników.
Jednak ani squidGuard, ani Squid nie mogą być używane do:
- analizuj tekst w dokumentach i działaj w rezultacie.
- wykrywać lub blokować osadzone języki skryptowe, takie jak JavaScript, Python lub VBscript w kodzie HTML.
Czarne listy – podstawy
Czarne listy są istotną częścią squidGuard. Zasadniczo są to zwykłe pliki tekstowe, które umożliwiają wdrożenie filtrów treści w oparciu o określone słowa kluczowe. Istnieją zarówno ogólnodostępne, jak i komercyjne czarne listy, a linki do pobierania można znaleźć na stronie internetowej projektu czarnych list squidguard.
W tym samouczku pokażę Ci, jak zintegrować czarne listy udostępniane przez Shalla Secure Services z instalacją squidGuard. Te czarne listy są bezpłatne do użytku osobistego/niekomercyjnego i są aktualizowane codziennie. Obejmują one na dzień dzisiejszy ponad 1 700 000 wpisów.
Dla naszej wygody utwórzmy katalog, w którym będziemy mogli pobrać pakiet czarnej listy.
mkdir /opt/3rdparty
cd /opt/3rdparty
wget http://www.shallalist.de/Downloads/shallalist.tar.gz
Najnowszy link do pobrania jest zawsze dostępny, jak podkreślono poniżej.
Po rozpakowaniu nowo pobranego pliku przejdziemy do folderu czarnej listy (BL).
tar xzf shallalist.tar.gz
cd BL
ls
Możesz myśleć o katalogach pokazanych w wynikach ls jako o kategoriach listy backlist, a odpowiadających im (opcjonalnych) podkatalogach jako o podkategoriach, schodzących aż do konkretnych adresów URL i domen, które są wymienione w plikach odpowiednio adresy URL i domeny. Więcej szczegółów można znaleźć na poniższym obrazku.
Instalowanie czarnych list
Instalacja całego pakietu czarnej listy lub poszczególnych kategorii odbywa się poprzez skopiowanie odpowiednio katalogu BL lub jednego z jego podkatalogów do katalogu /var/ lib/squidguard/db.
Oczywiście mogłeś najpierw pobrać archiwum tar czarnej listy do tego katalogu, ale podejście wyjaśnione wcześniej daje większą kontrolę nad tym, które kategorie powinny (lub nie) być blokowane w określonym czasie.
Następnie pokażę Ci, jak zainstalować czarne listy anonvpn, hakowania i czatu oraz jak skonfigurować squidGuard do ich używania.
Krok 1: Skopiuj rekurencyjnie katalogi anonvpn, hacking i chat z /opt/3rdparty/ BL do /var/lib/squidguard/db.
cp -a /opt/3rdparty/BL/anonvpn /var/lib/squidguard/db
cp -a /opt/3rdparty/BL/hacking /var/lib/squidguard/db
cp -a /opt/3rdparty/BL/chat /var/lib/squidguard/db
Krok 2: Użyj plików domen i adresów URL, aby utworzyć pliki bazy danych squidguard. Pamiętaj, że poniższe polecenie będzie działać przy tworzeniu plików .db dla wszystkich zainstalowanych czarnych list – nawet jeśli dana kategoria ma 2 lub więcej podkategorii.
squidGuard -C all
Krok 3: Zmień własność katalogu /var/lib/squidguard/db/ i jego zawartości na użytkownika proxy, aby Squid mógł odczytać pliki bazy danych.
chown -R proxy:proxy /var/lib/squidguard/db/
Krok 4: Skonfiguruj Squid do korzystania z squidGuard. Użyjemy dyrektywy Squid url_rewrite_program w /etc/squid/squid.conf, aby powiedzieć Squidowi, aby używał squidGuard jako narzędzia do ponownego zapisywania/przekierowywania adresów URL.
Dodaj następujący wiersz do squid.conf, upewniając się, że /usr/bin/squidGuard jest w Twoim przypadku właściwą ścieżką bezwzględną.
which squidGuard
echo "url_rewrite_program $(which squidGuard)" >> /etc/squid/squid.conf
tail -n 1 /etc/squid/squid.conf
Krok 5: Dodaj niezbędne dyrektywy do pliku konfiguracyjnego squidGuard (znajdującego się w /etc/squidguard/squidGuard.conf).
Aby uzyskać dalsze wyjaśnienia, zapoznaj się z powyższym zrzutem ekranu, po następującym kodzie.
src localnet {
ip 192.168.0.0/24
}
dest anonvpn {
domainlist anonvpn/domains
urllist anonvpn/urls
}
dest hacking {
domainlist hacking/domains
urllist hacking/urls
}
dest chat {
domainlist chat/domains
urllist chat/urls
}
acl {
localnet {
pass !anonvpn !hacking !chat !in-addr all
redirect http://www.lds.org
}
default {
pass local none
}
}
Krok 6: Uruchom ponownie Squida i przetestuj.
service squid restart [sysvinit / Upstart-based systems]
systemctl restart squid.service [systemctl-based systems]
Otwórz przeglądarkę internetową w kliencie sieci lokalnej i przejdź do witryny znalezionej w dowolnym pliku czarnej listy (domenach lub adresach URL – w poniższym przykładzie użyjemy czatu http://spin.de/) ) i zostaniesz przekierowany na inny adres URL, w tym przypadku www.lds.org.
Możesz sprawdzić, czy żądanie zostało wysłane do serwera proxy, ale zostało odrzucone (odpowiedź 301 http – Przeniesione na stałe) i zamiast tego zostało przekierowane do www.lds.org.
Usuwanie ograniczeń
Jeśli z jakiegoś powodu musisz włączyć kategorię, która była w przeszłości blokowana, usuń odpowiedni katalog z /var/lib/squidguard/db i skomentuj (lub usuń) powiązany plik acl w pliku squidguard.conf.
Na przykład, jeśli chcesz włączyć domeny i adresy URL znajdujące się na czarnej liście w kategorii anonvpn, musisz wykonać następujące kroki.
rm -rf /var/lib/squidguard/db/anonvpn
I edytuj plik squidguard.conf w następujący sposób.
Należy pamiętać, że części zaznaczone na żółto w sekcji PRZED zostały usunięte w części PO.
Dodawanie do białej listy określonych domen i adresów URL
Czasami możesz chcieć zezwolić na korzystanie z określonych URL lub domen, ale nie całego katalogu na czarnej liście. W takim przypadku powinieneś utworzyć katalog o nazwie myWhiteLists (lub dowolną inną nazwę) i wstawić żądane adresy URL i domeny w obszarze /var/lib/squidguard/db/myWhiteLists w plikach o nazwach odpowiednio adresy URL i domeny.
Następnie zainicjuj nowe reguły dotyczące treści tak jak poprzednio,
squidGuard -C all
i zmodyfikuj plik squidguard.conf w następujący sposób.
Tak jak poprzednio, części podświetlone na żółto wskazują zmiany, które należy dodać. Pamiętaj, że ciąg myWhiteLists musi znajdować się na pierwszym miejscu w wierszu zaczynającym się od pass.
Na koniec pamiętaj o ponownym uruchomieniu Squida w celu zastosowania zmian.
Wniosek
Po wykonaniu kroków opisanych w tym samouczku powinieneś mieć potężny filtr treści i przekierowanie adresów URL współpracujące z serwerem proxy Squid. Jeśli doświadczysz jakichkolwiek problemów podczas procesu instalacji/konfiguracji lub masz jakieś pytania lub uwagi, możesz zapoznać się z dokumentacją internetową squidGuard, ale zawsze możesz do nas napisać za pomocą poniższego formularza, a my skontaktujemy się z Tobą tak szybko, jak to możliwe możliwy.