在Centos 7上使用LDAP进行Squid配置

时间:2016-11-22 10:02:54

标签: authentication ldap squid

我在Centos 7上安装了squid用于LDAP身份验证,但问题是 / usr / lib64 / squid 目录在安装时不包含 squid_ldap_auth 文件: squid,openldap,openldap-clients和nss_ldap。 在我的旧服务器上,文件 squid_ldap_auth 出现在 / usr / lib64 / squid 目录中。 任何人都可以帮我在Centos 6/7或Debian 7/8上设置用于LDAP身份验证的squid吗? 提前谢谢你

Tony92

2 个答案:

答案 0 :(得分:0)

在构建过程中定义帮助程序所在的目录(如果从源代码构建)。通常默认为/ usr / lib / squid。如果助手不在那里,那么你用来安装squid的包不是用包含ldap的选项构建的。如果你是从源代码构建squid,当你运行.configure时,你需要指定选项--enable-auth-basic=LDAP(这个选项适用于squid 3.5我认为旧版本的语法略有不同)。此外,如果您使用此选项,则需要在centOS计算机上安装openldap库才能使构建成功。

答案 1 :(得分:0)

回答这个非常老的问题,因为我一直在寻找相同的信息。如果其他人正在寻找相同的模块,则该模块可以作为/usr/lib64/squid/basic_ldap_auth使用。有关如何配置的信息与squid_ldap_auth(请参阅man page)大致相同:

配置示例(对于RedHat,但在其他目录上应该相同)位于RedHat docs上。 注意:我删除了-ZZ,因为它阻止了此操作,因为我没有在LDAP上使用SSL,这是/etc/squid/squid.conf的示例:

auth_param basic program /usr/lib64/squid/basic_ldap_auth -b "cn=users,cn=accounts,dc=example,dc=com" -D "uid=proxy_user,cn=users,cn=accounts,dc=example,dc=com" -W /etc/squid/ldap_password -f "(&(objectClass=person)(uid=%s))" -H ldap://ldap_server.example.com:389

要对其进行测试,您可以直接运行该模块:

# /usr/lib64/squid/basic_ldap_auth -b "cn=users,cn=accounts,dc=example,dc=com" -D "uid=proxy_user,cn=users,cn=accounts,dc=example,dc=com" -W /etc/squid/ldap_password -f "(&(objectClass=person)(uid=%s))" -H ldap://ldap_server.example.com:389

如果您使用的是IPA,则可以搜索要用于的信息

ldapsearch -Y GSSAPI '(&(objectClass=person)(uid=myuser))' dn