在 Debian GNU/Linux 环境中,我无法让 SASL 与 kerberos 一起工作:
sudo /usr/sbin/sasl-sample-server -m GSSAPI -s ldap 强制使用机制 GSSAPI 发送 1 个机制列表 发送:R1NTQVBJ 正在等待客户端机制... C:[...删减了很多行...] 得到‘GSSAPI’ sasl-sample-server:SASL 其他:GSSAPI 错误:未提供任何凭据,或者凭据不可用或无法访问。(未知机械代码 0,代表未知机械) sasl-sample-server:正在启动 SASL 协商:一般故障(一般故障)
文档表明这是无法访问 keytab 的服务。
但:
- sasl-sample-server 由 root 运行,因此不应该存在任何权限问题;
- 使用检查命令
strace
我可以确认该文件/etc/krb5.keytab
已被访问。
我不知道该做什么了:我现在应该检查什么?
消息错误有两个方面:我主要检查了该or the credentials were unavailable or inaccessible
部分;该No credentials were supplied
部分是什么意思?
答案1
我会仔细检查您是否拥有所有必要的库:
dpkg -l | grep gssapi ii libgssapi-krb5-2:amd64 1.12.1+dfsg-19+deb8u2 amd64 MIT Kerberos 运行时库 - krb5 GSS-API 机制 ii libgssapi3-heimdal:amd64 1.6~rc2+dfsg-9 amd64 Heimdal Kerberos - GSSAPI 支持库 ii libsasl2-modules-gssapi-mit:amd64 2.1.26.dfsg1-13+deb8u1 amd64 Cyrus SASL - 可插入身份验证模块(GSSAPI)
特别注意:libsasl2-modules-gssapi-mit