Инструкция по настройке прокси-сервера

3 min read

Прокси-сервер – это программа, которая выступает посредником, перенаправляя HTTP-трафик, поступивший к ней, другому адресату. Её часто используют в локальных сетях для организации выхода в интернет, либо для обхода блокировок сайтов.

Покажем как быстро и безопасно настроить прокси-сервер с аутентификацией. 

Настройка прокси-сервера

Будем считать, что вы располагаете собственным сервером с Ubuntu на борту. Зайдите на него по SSH и установите прокси-сервер Squid.

apt update apt install squid3

По умолчанию сервер сразу запустится. Проверить его состояние можно при помощи команды.

service squid status

Вы получите примерно следующий текст

Статус работы прокси-сервера

Для остановки, запуска и перезапуска — вам помогут команды:

service squid stop service squid start service squid restart

Мы будем редактировать файл с конфигурацией прокси-сервера /etc/squid/squid.conf. Рекомендуем сначала сохранить копию этого файла, например как squid.conf.bakup

Теперь откройте оригинальный файл squid.conf и замените всё его содержимое на следующий текст.

http_port 3128 http_access allow all

Обратиться к прокси-серверу можно, установив в браузере соответствующий адрес в окне настроек прокси-сервера

Настройка прокси-сервера по умолчанию в Firefox

Настройка аутентификации

Для настройки аутентификации нам понадобится пакет apache2-utils, содержащий утилиту для генерации паролей htpasswd

apt install apache2-utils

Для того, чтобы сгенерировать пароль для пользователя username введите следующую команду

htpasswd -c /etc/squid/passwords username

Программа попросит вас дважды ввести пароль для пользователя username и запишет его в файл /etc/squid/passwords.

Перейдите в директорию Squid: /etc/squid3/ и замените текст из файла конфигурации squid.conf на следующий

auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid/passwords auth_param basic realm Squid proxy-caching web server acl authenticated proxy_auth REQUIRED http_access allow authenticated http_port 3128

Разберем данную конфигурацию подробнее

auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid/passwords
auth_param basic realm Squid proxy-caching web server
acl authenticated proxy_auth REQUIRED
http_access allow authenticated
http_port 3128

Сервер необходимо перезапустить при помощи следующей команды

service squid restart
Окно аутентификации на прокси-сервере

Выводы

Мы показали пример минимальной настройки прокси-сервера с поддержкой аутентификации по логину и паролю.