Squid — это кэширующий прокси-сервер, который устанавливается на CentOS через пакетный менеджер yum или dnf, после чего требует базовой конфигурации в файле /etc/squid/squid.conf и запуска сервиса через systemctl. Ниже описан полный процесс установки и настройки для работы прокси на локальной сети.
Предварительные требования и причины установки
- Необходимо иметь доступ к серверу CentOS 7/8/9 с правами администратора (root или sudo)
- Интернет-соединение для скачивания пакетов из репозитория
- Открытый порт 3128 (стандартный для Squid) или любой другой по выбору
- Минимум 512 МБ оперативной памяти для работы сервиса
- Кэширование веб-трафика для ускорения доступа к часто посещаемым сайтам
- Контроль доступа в интернет и мониторинг сетевого трафика
- Экономия канала при работе в корпоративной сети
Пошаговая инструкция по установке и настройке Squid
- Откройте терминал и подключитесь к серверу CentOS по SSH
- Обновите список пакетов командой
sudo yum update -y - Установите Squid командой
sudo yum install squid -y - Проверьте установку версии Squid командой
squid -v - Создайте резервную копию исходного конфига:
sudo cp /etc/squid/squid.conf /etc/squid/squid.conf.bak - Откройте файл конфигурации в редакторе:
sudo nano /etc/squid/squid.conf - Найдите строку
http_port 3128(она обычно раскомментирована) и убедитесь, что порт указан правильно - Найдите секцию
acl localnet srcи добавьте вашу локальную сеть, напримерacl localnet src 192.168.1.0/24 - Найдите строку
http_access deny allи добавьте перед ней строкуhttp_access allow localnet - Сохраните файл комбинацией клавиш
Ctrl+O, затемEnter, и выйдитеCtrl+X - Проверьте синтаксис конфигурации командой
sudo squid -k parse - Создайте кэш-директорию командой
sudo squid -z - Запустите сервис Squid:
sudo systemctl start squid - Проверьте статус сервиса:
sudo systemctl status squid - Добавьте Squid в автозагрузку:
sudo systemctl enable squid - Откройте файрволл для порта 3128:
sudo firewall-cmd --permanent --add-port=3128/tcp - Перезагрузите правила файрволла:
sudo firewall-cmd --reload - Проверьте, что Squid слушает на порту:
sudo netstat -tlnp | grep squid - Настройте клиентский браузер, указав прокси-сервер с IP адресом вашего сервера и портом 3128
- Протестируйте подключение, открыв любой веб-сайт через браузер
Часто задаваемые вопросы
Как изменить порт Squid на другой? Откройте файл /etc/squid/squid.conf, найдите строку http_port 3128 и замените число на желаемый порт (например, 8080), затем перезагрузите сервис командой sudo systemctl restart squid.
Что делать, если Squid не стартует? Проверьте синтаксис конфигурации командой sudo squid -k parse, просмотрите логи ошибок sudo tail -f /var/log/squid/cache.log и убедитесь, что порт не занят другим процессом.
Как ограничить скорость кэширования или объём кэша? В файле /etc/squid/squid.conf найдите параметры cache_dir и cache_swap_log_mark_size, отредактируйте их значения согласно вашим требованиям и перезапустите сервис.