FastNetMon

Sunday, 27 December 2009

Установка Squid с выделенными IP для клиентов на Debian 4

Ставим:
apt-get install squid3 -y --force-yes


Добавляем в автозапуск:
update-rc.d squid3 defaults


Запускаем:
/etc/init.d/squid3 restart


Как видим, squid забиндился на все интерфейсы:

netstat -lnpt | grep squid
tcp 0 0 0.0.0.0:3128 0.0.0.0:* LISTEN 22485/(squid)


Открываем конфиг:
vi /etc/squid3/squid.conf


Добавляем туда следующее:

auth_param basic program /usr/lib/squid3/ncsa_auth /etc/squid3/passwd
acl ncsa_users proxy_auth REQUIRED
http_access allow ncsa_users


Также ищем и комментируем в конфиге строку:

# And finally deny all other access to this proxy
http_access deny all


Создаем файл паролей:

htpasswd -c /etc/squid3/passwd user1


Вводим пароль для пользователя:
New password:
Re-type new password:
Adding password for user user1


Выставляем полномочия для файла паролей:

chmod o+r /etc/squid3/passwd


Перезапускаем сервер для применения настроек:

/etc/init.d/squid3 restart


Пробуем с другой машины получить сайт через прокси:

http_proxy=http://ip.ad.dr.es:3128 wget --proxy-user user1 --proxy-password qwerty http://ya.ru


В случае неверного пароля будет выдано следующее:

Proxy request sent, awaiting response... 407 Proxy Authentication Required
2009-12-28 02:17:05 ERROR 407: Proxy Authentication Required.


А в случае успешного:

Connecting to ip.ad.dr.es:3128... connected.
Proxy request sent, awaiting response... 200 OK
Length: 4908 (4.8K) [text/html]


Смотрим лог:

tail -f /var/log/squid3/access.log

3 comments :

  1. "Создаем файл паролей:

    htpasswd -c /etc/squid3/passwd user1"

    замечу что с флагом "-c" файл пересоздается и чтоб создать нового пользователя сначала старого нужно сохранить, создать нового и потом скопипастить старого))

    ReplyDelete
  2. Но лучше прочитать мануал к htpasswd, там написано, как не перетирать файл, а добавлять в него записи =)

    ReplyDelete
  3. В данном случае просто без флага -c

    ReplyDelete

Note: only a member of this blog may post a comment.