使用 Squid 的 NTLM

使用 Squid 的 NTLM

我是 Squid 代理的新手,需要帮助设置 NTLM 身份验证。我在网上查了很多资源,但没有找到完成工作的确切步骤。由于我没有代理/网络配置方面的背景知识,我无法找出我遗漏的地方。我需要这个来进行一些测试。

设想:

我有两台机器,机器 1:Windows Server 2012R2,上面部署了 Squid 代理服务器 2.6。这台机器配置了 Active Directory 域 (domain1.com)。domain1.com 有 user-1 和 user-2 用户。

机器 2:是 domain1.com 的一部分。机器 1 充当机器 2 的代理(在机器 2 的 Internet Explorer 上手动设置代理)。Internet Explorer 菜单中已启用 Windows 集成身份验证。

我尝试从机器 2 访问 google.com,IE 提示进行身份验证。我在这里提供用户 1 的凭据。但是,请求没有成功。身份验证提示一次又一次出现。


Squid配置文件

auth_param ntlm program C:/squid/libexec/mswin_ntlm_auth.exe --helper-protocol=squid-2.5-ntlmssp
auth_param ntlm children 5
auth_param ntlm keep_alive on
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl localnet src 10.0.0.0/8 # RFC1918 possible internal network
acl localnet src 172.16.0.0/12  # RFC1918 possible internal network
acl localnet src 192.168.0.0/16 # RFC1918 possible internal network
acl localnet src fc00::/7       # RFC 4193 local private network range
acl localnet src fe80::/10      # RFC 4291 link-local (directly plugged) machines
acl SSL_ports port 443
acl Safe_ports port 80      # http
acl Safe_ports port 21      # ftp
acl Safe_ports port 443     # https
acl Safe_ports port 70      # gopher
acl Safe_ports port 210     # wais
acl Safe_ports port 1025-65535  # unregistered ports
acl Safe_ports port 280     # http-mgmt
acl Safe_ports port 488     # gss-http
acl Safe_ports port 591     # filemaker
acl Safe_ports port 777     # multiling http
acl CONNECT method CONNECT

acl KnownUsers proxy_auth REQUIRED

http_access allow KnownUsers
http_access allow manager localhost
http_access allow manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localnet
http_access deny all

访问日志:

1528144397.050     24 XX.XX.XXX.XXX TCP_DENIED/407 2151 CONNECT www.google.co.in:443 - NONE/- text/html
1528144397.056      5 XX.XX.XXX.XXX TCP_DENIED/407 1817 CONNECT www.google.co.in:443 - NONE/- text/html

有人可以让我知道我错过了什么吗?

答案1

添加以下几行可能会起作用

auth_param basic program /usr/lib/squid/ntlm_auth --helper-protocol=squid-2.5-basic
auth_param basic children 5 startup=5 idle=1
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hour
auth_param basic casesensitive off

相关内容