winbind 可以工作,但 Squid 行为错误

winbind 可以工作,但 Squid 行为错误

我正在尝试使用 Kerberos+Samba+Winbind 运行 Squid 代理,该代理已连接到我的 AD。到目前为止,一切运行良好!krb auth 正在运行 wbinfo -u、-a、-g 正在运行

我在 AD 中创建了一些新的测试组和测试用户来测试代理(test1 test2 test3 test4 是组,testuser1 testuser2 testuser3 testuser4 是用户)。

这是我的问题:testuser4 是 test4 的成员。以 testuser4 身份登录,一切正常(SSO 有效,squid 阻止了我想为 test4 阻止的内容,因此一切正常)。但是,一旦我从 test4 中删除 testuser4 并将该用户添加到另一个组(例如 test3),问题就来了!几分钟后(winbind cache time = 600在我的 smb.conf 中),我的 ext_wbinfo_group_acl 正在更新并告诉我,testuser4 现在在 test3 中(testuser4 test4-->ERR但是testuser4 test3--> OK)。但 Squid 似乎根本不在乎!它仍然将 testuser4 视为用户,该用户仍是 test4 的一部分。

我在 squid.conf 中尝试过,cache deny all但目前没有成功。我还执行了“service squid restart”,甚至执行了“sudo apt-get purge squid”并重新安装了它,但同样的问题一再出现。我真的认为,问题出在 squid 上,因为 winbind 正在按应有的方式更新。/var/lib/squid/cache.log 中也写道:

2021/01/20 08:29:06 kid1| helperStatefulOpenServers:不需要“negotiate_wrapper_auth”进程。 2021/01/20 08:29:06 kid1| helperOpenServers:正在启动 0/5“ext_wbinfo_group_acl”进程 2021/01/20 08:29:06 kid1| helperOpenServers:不需要“ext_wbinfo_group_acl”进程。

但前提是,如果我使用某个用户登录,那么我任何时候都可以回到过去已经登录的状态。如果我创建一个非常新的用户“testuser5”并将他添加到 test3,那么一切又会恢复正常。但是,只要我将 testuser5 移动到 test1 或其他位置,winbind 就会在一段时间后更新(这意味着它会给我正确的输出),但 squid 会始终将 testuser5 视为该用户是 test3 的一部分。

如果您需要任何配置或其他什么,我会尽快更新此线程。

希望你能帮助我,加油!

相关内容