Menu

Setup Squid

В начало

Настройка Squid 3.x и файла squid.conf

Аутентификация

Для настройки аутентификации пользователей домена Windows AD установите и настройте Samba.

получите права суперпользователя

$ sudo su

# yum install -y ntp authconfig krb5-workstation samba-common samba-winbind

Для систем RHEL 7 (CentOS 7) необходима установка дополнительного пакета samba-winbind-clients соответствующего версии установленного пакета samba-common. Пакет можно получить по ссылке: http://pkgs.org/search/samba-winbind-clients

Для того, что прокси-сервер мог аутентифицировать пользователей Active Directory его необходимо ввести в домен Windows. Это можно сделать за один шаг с помощью следующей команды:

замените ads.example.local имя сервера Active Directory;
замените EXAMPLE на NETBIOS-имя домена;
замените EXAMPLE.LOCAL полное(FQDN) имя домена.

# authconfig --enableshadow --enablemd5 --passalgo=md5 --krb5kdc=ads.example.local --krb5realm=EXAMPLE.LOCAL --smbservers=ads.example.local --smbworkgroup=EXAMPLE --enablewinbind --enablewinbindauth --smbsecurity=ads --smbrealm=EXAMPLE.LOCAL --smbidmapuid="16777216-33554431" --smbidmapgid="16777216-33554431" --winbindseparator="+" --winbindtemplateshell="/bin/false" --enablewinbindusedefaultdomain --disablewinbindoffline --winbindjoin=Administrator --disablewins --disablecache --enablelocauthorize --updateall

Проверить подключение к домену Windows AD:

# wbinfo -u

В случае успеха данная команда выведет список всех пользователей домена.

Для систем на RHEL 6 (CentOS 6) подробнее по ссылкам:

В поставляемом с дистрибутивов Squidward файле squid.conf все необходимые параметры для использования NTLM и basic аутентификации пользователей домена Windows AD уже внесены.

Если вы планируете использовать другой метод аутентификации пользователей, то настройте Squid на использование интересующего Вас метода аутентификации и закомментируйте следующие строки в файле /etc/squid/squid.conf:

# Winbind and NTLM
auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp
auth_param ntlm children 300
auth_param basic program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-basic
auth_param basic children 60
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off

Описание некоторых параметров файла squid.conf

Параметры отвечающие за NTLM и basic аутентификацию пользователей домена Windows AD. Закомментируйте если планируете использовать другой метод аутентификации, настройте Squid на использование интересующего Вас метода аутентификации.

# Winbind and NTLM
auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp
auth_param ntlm children 300
auth_param basic program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-basic
auth_param basic children 60
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off

Подключение External ACL, если Squidward установлен по адресу отличному от адреса по умолчанию (/var/www/html/squidward), то измените путь к папке где установлен Squidward (расположен файл config.php) указанный в качестве передаваемого аргумента в описании external_acl

на RHEL 6 (CentOS 6)

external_acl_type ext_dstdom_regex children=36 ttl=300 negative_ttl=300 %DST %PORT /var/www/html/squidward/ext_acl/ext_dstdom_uni.php /var/www/html/squidward
external_acl_type ext_usr children=36 ttl=300 negative_ttl=300 %LOGIN %SRC /var/www/html/squidward/ext_acl/ext_usr.php /var/www/html/squidward
external_acl_type ext_usr_noauth children=36 ttl=300 negative_ttl=300 %SRC /var/www/html/squidward/ext_acl/ext_usr_noauth.php /var/www/html/squidward

на RHEL 7 (CentOS 7)

external_acl_type ext_dstdom_regex children-max=36 ttl=300 negative_ttl=300 ipv4 %DST %PORT /var/www/html/squidward/ext_acl/ext_dstdom_uni.php /var/www/html/squidward
external_acl_type ext_usr children-max=36 ttl=300 negative_ttl=300 ipv4 %LOGIN %SRC /var/www/html/squidward/ext_acl/ext_usr.php /var/www/html/squidward
external_acl_type ext_usr_noauth children-max=36 ttl=300 negative_ttl=300 ipv4 %SRC /var/www/html/squidward/ext_acl/ext_usr_noauth.php /var/www/html/squidward

Включение в конфигурацию Squid правил Squidward

# Включение конфигурации правил доступа без аутентификации
include "/etc/squid/squidward.d/.system/unauthenticated/*.acl"
include "/etc/squid/squidward.d/.system/unauthenticated/*.http"

# Блок описание метода аутентификации
# Winbind and NTLM

# Включение правил доступа
include "/etc/squid/squidward.d/*.acl"
include "/etc/squid/squidward.d/*/*.acl"
include "/etc/squid/squidward.d/*.http"
include "/etc/squid/squidward.d/*/*.http"

Далее


Related

Documentation: Home
Documentation: Setup config.php
Documentation: Using