Простая инструкция по установке прокси-сервера Squid на CentOS 7
Установка и настройка Squid
1 |
yum install squid |
Открываем конфиг: /etc/squid/squid.conf
Добавляем клиентскую сеть в acl, если она отличается от стандартной (192.168.0.0/16, 10.0.0.0/8, 172.16.0.0/12):
1 |
acl localnet src 217.66.157.0/24 |
Настройка Squid
Настройка директории для кэша прокси-сервера:
1 |
cache_dir ufs /var/spool/squid 4096 32 256 |
* где ufs — файловая система (считается, что ufs для SQUID является самой подходящей); /var/spool/squid — директория хранения кэша; 4096 — объем пространства в мегабайтах, которое будет выделено под кэш; 32 — количество каталогов первого уровня; 256 — количество каталогов второго уровня.
Создание структуры папок под кэш:
1 |
squid -z |
Запускаем squid и добавляем в автозапуск:
1 2 |
systemctl start squid systemctl enable squid |
Добавление исключение в файервол (открываем порт 3128):
Открываем порт 3128 в firewalld:
1 |
firewall-cmd --permanent --add-port=3128/tcp |
Перезапускаем firewalld:
1 |
firewall-cmd --reload |
Проверка
Для проверки настраиваем браузер — указываем ip сервера, порт 3128 и заходим на любой whois сайт. Если всё работает правильно, то должен отобразиться ip сервера на котором работает настроенный squid.
Transparent Proxy (прозрачные прокси)
Прозрачные прокси обрабатывает весь HTTP-трафик, но не изменяют данные пользователя, в том числе IP-адрес.
Открываем конфиг: /etc/squid/squid.conf
Находим строчку: http_port 3128
И приводим ее к виду: http_port 3128 transparent
Перезагружаем squid:
1 |
systemctl restart squid |
Авторизация по логину и паролю
Настройка
Открываем конфиг: /etc/squid/squid.conf
Добавляем:
auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/auth_users
auth_param basic children 10
auth_param basic realm SQUID PROXY HELLO
auth_param basic credentialsttl 5 hours
acl auth_users proxy_auth REQUIRED
/usr/lib64/squid/basic_ncsa_auth — расположение ncsa_auth;
/etc/squid/auth_users — файл с логинами и паролями; children 10 разрешает 10 одновременных подключений;
SQUID PROXY HELLO — фраза для приветствия — м.б. любой;
credentialsttl 5 hours — время удерживаемой сессии — 5 часов, после истечении этого времени — потребуется повторная авторизация.
Находим строку: http_access deny !Safe_ports
После добавляем: http_access allow auth_users
Создание пользователей
Создаем файл с пользователями и создаем первую пару логина и пароля:
1 |
htpasswd -c /etc/squid/auth_users user1 |
в случае если htpasswd не установлен, следует установить пакет httpd-tools:
1 |
yum install httpd-tools |
Создаем второго пользователя:
1 |
htpasswd /etc/squid/auth_users user2 |
Остаётся только перезагрузить squid:
1 |
systemctl restart squid |
Свежие комментарии