设为首页 收藏本站
查看: 1040|回复: 0

[经验分享] squid通过域认证

[复制链接]

尚未签到

发表于 2018-12-26 08:00:50 | 显示全部楼层 |阅读模式
为了集中上网管控,领导要求架设一台squid服务器并且要求通过域来验证,上网查了一下,大部分都是需要和samba绑定,觉得很麻烦,所以不想采用,经过努力查找了大量的资料,终于成功实现了squid通过LDAP来与域认证上网。总结如下:
环境:操作系统:LINUX AS5
             SQUID :squid-2.7.STABLE5.tar.gz
             LDAP:openldap-2.4.13.tgz
             域操作系统:windows server 2003
安装LINUX操作系统就不说了!!!安装SQUID也不说了!!!从安装openldap说起。操作如下:
./configure  --without-kerberos --without-cyrus-sasl --without-tls  --without-threads --disable-slapd --disable-slurpd --disable-debug --disable-shared
然后:
make depend
make
make install
测试ldap是否正常
修改/usr/local/etc/openldap/ldap.conf,
BASE DC=gncsnc,DC=com
URI ldap://your.gncsnc.com
注释:your.gncsnc.com为域控制器名称。
测试ldap与域之间连线是否正常。
/usr/local/bin/ldapsearch -x -W -D "cn=Ning Hao,ou=Bj_Users,dc=gncsnc,dc=com" -b "cn=A,ou=BJ_Users,dc=gncsnc,dc=com" -h your.gncsnc.com
注释:这是通过绑定CN=Ning Hao来查询域帐号A,查询谁都无所谓。
会提示输入LDAP password:此处输入的是Ning Hao的域用户密码
如果没问题,会显示大量的域用户信息。
然后配置SQUID 。
有资料说在编译安装SQUID的时候多加一个 --enable-auth-modules=LDAP,但是我个人认为不需要。
修改squid.conf,
找到:auth_param basic program
在后面加上:/usr/lib/squid/squid_ldap_auth -R -b "dc=gncsnc,dc=com" -D "cn=Ning Hao,ou=Bj_Users,dc=gncsnc,dc=com" -w "password" -f sAMAccountName=%s -h gncsnc.com
其中password为用户Ning Hao的密码,sAMAccountName 是你想验证用户信息的类型,具体可以查看域用户的各种属性。
同时可以测试是否可以通过认证,方法如下:
[root@proxy logs]# /usr/lib/squid/squid_ldap_auth -R -b "dc=gncsnc,dc=com" -D "cn=Ning Hao,ou=Bj_Users,dc=gncsnc,dc=com" -w "password" -f sAMAccountName=%s -h your.gncsnc.com
然后输入你想查询的用户名 空格 密码,如果提示OK 则证明LDAP与域认证没有问题。
设置访问列表,acl ldap proxy_auth REQUIRED
设置访问规则,http_access allow ldap
至此,基本的认证方式就建立起来
通过查询/usr/local/squid/var/logs里面的log信息可以查看squid的工作状态。
最后简单的介绍一些命令的参数:
squid_ldap_auth命令:


  • The -b 选项显示了基于LDAP区别于我们域的名称。例如:your.domain.com 将是dc=your,dc=domain,dc=com
  • The -D 选项显示了用户通常是执行 LDAP 的质寻。此实例使用的是内置的管理员用户。然而您也可以使用另一个您选择的用户。
  • The -w 选项的密码适用于用户的the -D选项。对于安全的改进您可以在文件里使用-W /path/to/password_file 的语法来代替密码的存储。
  • The -h 选项通常显示了LDAP服务器的连接。
  • The -R 选项要求Squid连接到Windows的现行目录。
  • The -f 选项通常是LDAP质寻来查找用户的。在以上的例子里,sAMAccountName=%s,当Squid提示输入用户名时,将要与用户登录Windows上网输入的名称匹配。任何LDAP质寻都可以使用。一个LDAP质寻搜索工具可以有利于帮助获取正确的语法并确保质寻工作的正确性。
  • The %s 代替用户输入他们自己的用户名。


记得重新启动Squid使得这些改变生效。然后测试因特网的访问并确保Squid用户名和密码的提示及如期的鉴定工作。确保用户名立刻出现在Squid日志文件里






运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-655877-1-1.html 上篇帖子: Squid缓存服务器原理与实战演练 下篇帖子: squid的基本使用方法
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表