Что
В этой статье описывается установка и базовая настройка прокси-сервера Squid на Linux, а также конфигурация клиентских устройств для его использования.
Зачем
Squid — это мощный кэширующий прокси-сервер, который повышает производительность веб-серфинга, позволяет фильтровать трафик и управлять доступом. Корректная настройка клиентов обеспечивает безопасную и контролируемую маршрутизацию трафика через прокси.
Как
Шаг 1: Установка Squid
Для систем на базе RHEL (AlmaLinux, Rocky, CentOS):
sudo dnf install squid -y
Для систем на базе Debian (Ubuntu):
sudo apt update
sudo apt install squid -y
Шаг 2: Настройка Squid Proxy
Откройте /etc/squid/squid.conf
:
sudo nano /etc/squid/squid.conf
Минимальная рабочая конфигурация:
http_port 3128
acl localnet src 192.168.0.0/16
http_access allow localnet
http_access deny all
dns_v4_first on
Рекомендуемые параметры настройки:
cache_mem 64 MB
maximum_object_size_in_memory 512 KB
maximum_object_size 20 MB
access_log /var/log/squid/access.log
cache_log /var/log/squid/cache.log
Шаг 3: Включение и запуск Squid
sudo systemctl enable --now squid
Шаг 4: Настройка файрвола
firewalld:
sudo firewall-cmd --add-port=3128/tcp --permanent
sudo firewall-cmd --reload
UFW:
sudo ufw allow 3128/tcp
Шаг 5: Настройка клиентских устройств
На Linux (временная настройка в терминале):
export http_proxy="http://<squid-ip>:3128"
export https_proxy="http://<squid-ip>:3128"
На Linux (постоянно, системно):
Измените файл /etc/environment
:
http_proxy="http://<squid-ip>:3128"
https_proxy="http://<squid-ip>:3128"
На Windows (PowerShell, для текущего пользователя):
netsh winhttp set proxy <squid-ip>:3128
Для сброса:
netsh winhttp reset proxy
Шаг 6: Проверка подключения
На клиенте:
curl -x http://<squid-ip>:3128 http://example.com
На сервере Squid:
sudo tail -f /var/log/squid/access.log
Заключение
Эта конфигурация предоставляет простой и рабочий прокси-сервер без использования PAC-файлов. Она обеспечивает централизованное управление, логирование и гибкость для управления сетевым трафиком.