我按照链接上的步骤进行操作: https://journeyofthegeek.com/2017/12/30/pfsense-squid-kerberos/
没有 AD 组成员限制的 Kerberos 身份验证工作得很好,但我不希望所有用户都能访问互联网。我只希望 Internet_access AD 组中的用户有权访问。所以我做了修改,但不起作用。以下是详细信息:
PFSense 版本2.4.2
已安装的软件包:乌贼
Kerberos 配置文件(/etc/krb5.conf):
[libdefaults] 默认领域 = DOMAIN.LOCAL dns_lookup_realm = false dns_lookup_kdc = true kdc_timesync = 1 ccache_type = 4 可转发 = 是 rdns = 否 default_keytab_name = /path/to/squid.keytab default_tgs_enctypes = aes128-cts-hmac-sha1-96 default_tkt_enctypes = aes128-cts-hmac-sha1-96 允许的加密类型 = aes128-cts-hmac-sha1-96 时钟偏差 = 300 [境界] 域.本地 = { kdc = 服务器.域.本地 管理服务器 = 服务器.域.本地 默认域 = DOMAIN.LOCAL } [域名] .域名.本地 = 域名.本地 域.本地 = 域.本地 [记录] kdc = 文件:/var/log/kdc.log 默认值 = 文件:/var/log/krb5lib.log
Squid 配置文件修改(PFSense squid Web 界面配置中的自定义选项(身份验证之前)):
auth_param 协商程序 /usr/local/libexec/squid/negotiate_kerberos_auth -d -s HTTP/proxyserver.domain.local auth_param 协商子项 1000 auth_param 协商 keep_alive 开启 external_acl_type kerberos_group ttl=3600 negative_ttl=3600 %LOGIN /usr/local/libexec/squid/ext_kerberos_ldap_group_acl -a -g Internet_access -D DOMAIN.LOCAL acl auth proxy_auth 必需 acl GroupProxy 外部 kerberos_group http_access 拒绝 !auth http_access 允许 GroupProxy 身份验证 http_access 拒绝所有
我认为问题可能在于扩展 kerberos_ldap_group_acl总是返回的命令“ERR 请求无效。没有用户名”在 CLI 中运行时,无论它具有什么参数。我研究过文档,但没有得到真正的帮助。此外,我在 PFsense 中找不到 squid init 脚本,因此我可以设置变量 KRB5_KTNAME 和 KRB5_CONFIG。
如果有解释如何使此配置成功的话我将非常感激。