четверг, 16 февраля 2012 г.

Настройка прокси сервера с авторизацией за 5 минут

Раньше я думал, что squid сложен в настройке и всячески его избегал. Как оказалось - зря. Настроить HTTP прокси сервер с авторизацией в нём очень просто. Итак, рецепт (проверял на debian, на ubuntu тоже точно работает, в других дистрибутивах нюансы могут отличаться)

Установка

Тут как обычно:

$ sudo apt-get install squid

Настройка

Файл конфигурации squid находится в /etc/squid/ и называется squid.conf. Следующие параметры в нём заслуживают внимания:

http_port 3128 - устанавливает порт, по какому будет слушать squid.
http_access deny all - устанавливает права доступа

Если необходимо настроить прокси без авторизации - то достаточно просто изменить http_access с deny all на allow all и перезапустить squid. Так как нам нужен прокси с авторизацией, то ничего не трогаем и идем дальше. Находим секцию auth_param и добавляем туда:

auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/passwd

Эта строка указывает squid, какой модуль использовать для авторизации и в каком файле искать логины и пароли.

Создадим файл с логинами и паролями:

$ sudo htpasswd -c /etc/squid/passwd drakmail
Enter a password for user 'drakmail':
Again:
$ sudo htpasswd /etc/squid/passwd mag
Another password:
Again:

Далее, настроим права доступа. Для этого в секцию ACL надо добавить следующие строки:

acl magUser proxy_auth mag
acl drakmailUser proxy_auth drakmail
http_access allow magUser
http_access allow drakmailUser

После этого остаётся только перезапустить squid:

sudo /etc/init.d/squid restart

И наслаждаться настроенным прокси.

Комментариев нет: