找了一圈网上的相关博文,好多都是用的ntlm的方式,此方法我看后就不想使用,太复杂,研究了squid的官方文档后,最新版本的Squid已经支持使用ldap的方式直连AD域控进行鉴权访问,大致整理了下关键的步骤如下:
#使用yum安装必要的库和软件包
yum install libxml2-devel libcap-devel libtool-ltdl-devel openldap-devel下载软件源码包
wget http://www.squid-cache.org/Versions/v4/squid-4.12.tar.gz解压软件包:
tar zxvf squid-4.12.tar.gz编译安装软件包:
./configure --prefix=/usr/local/squid--enable-arp-acl --enable-linux-netfilter --enable-async-io --enable-err-language="Simplify_Chinese" --enable-default-err-language="Simplify_Chinese" --enable-basic-auth-helpers=LDAP--enable-underscore编译完成后,编辑squid.conf
auth_param basic children 5 auth_param basic realm Web-Proxy auth_param basic credentialsttl 24 hours auth_param basic program /usr/local/squid/libexec/basic_ldap_auth -R -b "dc=test,dc=net" -D "cn=Administrator,cn=Users,dc=test,dc=net" -w "xxxx" -f sAMAccountName=%s -h 192.168.1.8#192.168.1.8 是AD; administrator和xxxx是此AD的用户名和密码
然后在浏览器中设置配置对应服务器的IP 和端口,
这里使用的默认端口 3128.
配置好后, 即可畅快的体验上网啦。
注:如果遇到其他的问题,请关注我并私信我一起进行讨论。