Для примера, буду рассматривать установку Squid (это опенсорсный программный пакет, реализующий функцию кеширующего прокси-сервера для протоколов HTTP, FTP, Gopher и HTTPS). Из перечисленных функций нас будет интересовать функционал HTTP proxy сервера.
Установка Squid
Для примера, установка на Debian:
apt update && apt install squid
Установка на этом завершена. Проверить, как всё прошло, можно командой:
systemctl status squid
Настройка Squid
Теперь минимальная настройка, которая будет заключаться в том, чтобы изменить стандартный порт подключения и добавить доверенные IP в список разрешённых для подключения извне к нашему HTTP Proxy серверу.
Делаем бекап основного файла конфигурации
cp /etc/squid/squid.conf /etc/squid/squid.conf.back
Меняем стандартный порт
Открываем файл конфигурации и комментируем строку со стандартным портом
nano /etc/squid/squid.conf
Ctrl+W, Shift+Insert http_port 3128
(ищем http_port 3128), ставим знак #
в начале строки, чтобы закомментировать её,
Ctrl+X — выходим и сохраняем изменения.
Настраиваем собственный конфигурационный файл Squid
Теперь, переходим в собственный файл конфигурации:
nano /etc/squid/conf.d/debian.conf
Прописываем в конец файла:
### Можно изменить порт на свой http_port 3128 ### Прописываем белый список разрешённых IP acl my_allowed_ip src "/etc/squid/my_allowed_ip.txt" http_access allow my_allowed_ip
Прописываем белый список разрешённых IP
Тут мы добавляем наши IP, с которых будем подключаться к прокси-серверу
nano /etc/squid/my_allowed_ip.txt
В открывшемся окне редактора вводите IP или подсети, по одному в каждой строке.
Перезагружаем прокси-сервер
service squid restart
Добавление Basic Auth (авторизации)
-
nano /etc/squid/conf.d/debian.conf
Тут нужно следующее содержимое:
acl allowed_ip src "/etc/squid/allow.txt" auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/passwords auth_param basic realm Squid HTTP Proxy acl authenticated proxy_auth REQUIRED # Разрешаем доступ по IP и по HTTP-аутентификации http_access allow allowed_ip authenticated # Deny all other access http_access deny all
-
htpasswd -c /etc/squid/passwords my_login
– попросят пароль, вводить тот, что соответствует логину
my_login
-
service squid restart
– перезагрузка Squid
Свежие комментарии