Úvod
Správci systému používají Squid Proxy k rozšíření doručování obsahu. Squid Proxy konkrétně umožňuje serveru ukládat často navštěvované webové stránky do mezipaměti.
Jak? Když uživatel hledá webovou stránku nebo soubor, požadavek jde na proxy server – zprostředkující zařízení mezi stolním počítačem a internetem. Proxy server stáhne zdroj a předá jej uživateli tím, že uloží nová data do mezipaměti a použije je pro budoucí požadavky na stejný server.
V této příručce se dozvíte, jak nastavit, nakonfigurovat a nainstalovat Squid Proxy server na CentOS 7.
Předpoklady
- Operační systém CentOS
- Přístup do okna terminálu/příkazového řádku (Ctrl-Alt-T)
- Uživatel CentOS s právy root nebo sudo
- Instalační program balíčku yum , ve výchozím nastavení zahrnuto
- Textový editor, jako je vim
Kroky pro instalaci Squid Proxy na CentOS
Krok 1:Obnovte úložiště softwaru CentOS
Aktualizací repozitářů se ujistěte, že pracujete s nejnovější verzí softwaru.
Spusťte okno terminálu a zadejte následující:
sudo yum -y update
Krok 2:Nainstalujte balíček Squid na CentOS
Chcete-li nainstalovat Squid, zadejte:
yum -y install squid
Nyní spusťte Squid zadáním následujícího příkazu:
systemctl start squid
Nastavení automatického spuštění při spouštění:
systemctl enable squid
Zkontrolujte stav služby, použijte:
systemctl status squid
V příkladu níže vidíme, že stav je „Aktivní“.
Konfigurace serveru proxy Squid
Konfigurační soubor Squid se nachází na /etc/squid/squid.conf.
1. Otevřete soubor v preferovaném textovém editoru (vim byl použit v tomto příkladu}:
sudo vi /etc/squid/squid.conf
2. Přejděte k možnosti http_port . Toto je obvykle nastaveno pro poslech na portu 3218 . Tento port obvykle přenáší TCP provoz. Pokud je váš systém nakonfigurován pro provoz na jiném portu, změňte jej zde:
Můžete také nastavit režim proxy na transparentní pokud chcete zabránit Squid v úpravě vašich požadavků a odpovědí.
Změňte jej následovně:
http_port 1234 transparent
3. Přejděte na http_acacess odepřít vše možnost.
Aktuálně je nakonfigurován tak, aby blokoval veškerý provoz HTTP a žádný webový provoz není povolen, jak je uvedeno níže.
Změňte toto na následující:
http_access allow all
4. Restartujte službu Squid zadáním:
sudo systemctl restart squid
Konfigurace klienta Squid
Proxy server Squid je nyní nakonfigurován. Chcete-li nakonfigurovat klientský server, přepněte na svůj klientský počítač a otevřete webový prohlížeč.
Pokud používáte Firefox, najdete nastavení proxy pod:
Menu> Možnosti> Nastavení sítě> Nastavení
Vyberte přepínač pro ruční konfiguraci proxy.
Použijte IP adresu systému hostujícího vaši Squid proxy.
Chcete-li to otestovat, navštivte https://whatismyipaddress.com/ip-lookup. Vaše IP adresa se zobrazí jako IP adresa proxy serveru.
Vytvořte seznam řízení přístupu (ACL)
Pro připojení mimo lokální síť proxy serveru musíte nakonfigurovat seznamy řízení přístupu (ACL). To může být nutné, pokud se zobrazí chyba „odmítnuto se připojit“.
Chcete-li tento problém vyřešit, jednoduše přidejte do svého seznamu bezpečných portů novou položku ACL.
Upravte soubor /etc/squid/squid.conf soubor ještě jednou. Přidejte nový řádek následovně:
acl localnet src 192.166.0.10
Tím se vytvoří pravidlo, které povolí připojení systému pouze na této IP adrese.
Zakomentujte řádek, abyste určili pravidlo. Text za znakem # Squid ignoruje.
acl localnet src 192.166.0.10 # test computer
Rozsah IP adres můžete zadat následovně:
acl localnet src 192.166.0.10/30
Otevřete porty proxy serveru Squid
Chcete-li otevřít konkrétní port, přidejte následující:
acl Safe_ports port 123 # Custom port
Pro uložení změn restartujte Squid:
systemctl restart squid
Nastavte ověřování proxy
Squid nabízí základní ověřování spolu s podporou dalších typů ověřování.
Nejprve nainstalujte httpd-tools pomocí následujícího příkazu:
yum -y install httpd-tools
S nainstalovaným nástrojem vytvořte nový soubor:
touch /etc/squid/passwd && chown squid /etc/squid/passwd
Chcete-li vytvořit heslo, použijte tento příkaz:
htpasswd /etc/squid/passwd newuser
Vyměňte ‘ nový uživatel‘ s vaším uživatelským jménem.
Systém vás vyzve k zadání a potvrzení hesla pro ‚newuser.‘
Restartujte službu proxy a znovu otevřete prohlížeč zadáním:
systemctl restart squid
Upravte soubor /etc/squid/squid.conf a přidejte následující příkazové řádky:
auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/passwd
auth_param basic children 5
auth_param basic realm Squid Basic Authentication
auth_param basic credentialsttl 2 hours
acl auth_users proxy_auth REQUIRED
http_access allow auth_users
Od této chvíle, když se připojíte k linuxovému proxy serveru, uvidíte výzvu k zadání uživatelského jména a hesla. Jakákoli neautentizovaná osoba bude zastavena chybovou zprávou.
Jak blokovat webové stránky pomocí Squid Proxy
1. Vytvořte a upravte nový textový soubor /etc/squid/blocked.acl zadáním:
sudo vi /etc/squid/blocked.acl
2. Do tohoto souboru přidejte weby, které chcete zablokovat, počínaje tečkou:
.facebook.com
.twitter.com
Tečka určuje blokování všech dílčích webů hlavního webu.
3. Otevřete soubor /etc/squid/squid.conf soubor znovu:
sudo vi /etc/squid/squid.conf
4. Přidejte následující řádky těsně nad seznam ACL:
acl blocked_websites dstdomain “/etc/squid/blocked.acl”
http_access deny blocked_websites