首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >读取keytab文件krb5.keytab时出错

读取keytab文件krb5.keytab时出错
EN

Server Fault用户
提问于 2012-11-08 14:21:50
回答 5查看 74.8K关注 0票数 6

我注意到了SLES11.2和CentOS 6.3中的这些kerberos错误消息:

代码语言:javascript
复制
sshd[31442]: pam_krb5[31442]: error reading keytab 'FILE: / etc/ krb5. keytab'

/etc/krb5.keytab在我们的主机上不存在,根据我对keytab文件的了解,我们不需要它。根据这个kerberos键标签游戏攻略

keytab是一个包含一对Kerberos主体和加密密钥的文件(这些密钥来自Kerberos密码)。您可以使用此文件登录Kerberos,而无需提示输入密码。keytab文件最常见的个人用途是允许脚本在没有人工交互的情况下对Kerberos进行身份验证,或者将密码存储在明文文件中。

这听起来像是我们不需要的东西,也许更好的安全--不拥有它。

如何防止系统日志中出现此错误?这是我的krb5.conf,如果它有用的话:

代码语言:javascript
复制
banjer@myhost:~> cat /etc/krb5.conf
# This file managed by Puppet
#
[libdefaults]
        default_tkt_enctypes = RC4-HMAC DES-CBC-MD5 DES-CBC-CRC
        default_tgs_enctypes = RC4-HMAC DES-CBC-MD5 DES-CBC-CRC
        preferred_enctypes = RC4-HMAC DES-CBC-MD5 DES-CBC-CRC
        default_realm = FOO.EXAMPLE.COM
        dns_lookup_kdc = true
        clockskew = 300

[logging]
        default = SYSLOG:NOTICE:DAEMON
        kdc = FILE:/var/log/kdc.log
        kadmind = FILE:/var/log/kadmind.log

[appdefaults]
pam = {
        ticket_lifetime = 1d
        renew_lifetime = 1d
        forwardable = true
        proxiable = false
        retain_after_close = false
        minimum_uid = 0
        debug = false
        banner = "Enter your current"
}

如果你需要见其他人,请告诉我。谢谢。

编辑

每当非根用户通过SSH或控制台登录时,此消息将显示在/var/log/secure中。它似乎只发生在基于密码的身份验证。如果我对服务器执行基于密钥的ssh操作,则不会看到错误。如果使用root登录,则不会看到错误。我们的Linux服务器是针对Active进行身份验证的,因此它是PAM、samba、kerberos和winbind的混合,用于对用户进行身份验证。

EN

回答 5

Server Fault用户

回答已采纳

发布于 2013-07-17 13:42:02

若要禁用keytab验证,从而禁止这些日志消息,请将no_validate选项添加到PAM设置中。例如:

代码语言:javascript
复制
auth        sufficient    pam_krb5.so use_first_pass no_validate

在我的CentOS 6服务器上,我在看到pam_krb5.so在这两个文件中被引用的任何地方都做了这个更改:

代码语言:javascript
复制
/etc/pam.d/password-auth-ac
/etc/pam.d/system-auth-ac

我确信SLES也是类似的,但是我们正在逐步淘汰这个操作系统,所以我不打算在那里测试它。

票数 1
EN

Server Fault用户

发布于 2014-04-22 20:03:13

如果您在主机上没有密钥选项卡,那么您确实没有正确地使用Kerberos,并且如果攻击者可以毒害您的DNS缓存,则很容易受到相对简单的攻击。

Kerberos是一个共享秘密系统,为了有效地工作,任何接受Kerberos票证的服务器都需要拥有Kerberos密钥分发中心(KDC)所拥有的共享秘密的本地副本。这就是keytab,该服务共享秘密的本地副本。

keytab也可以用作获取Kerberos票证(TGTs)的缓存,但当您希望您的主机充当Kerberos服务器的客户端而不是服务器时,可以使用keytab。

pam_krb5使用keytab来验证输入的密码是否是KDC中的实际密码。如果您没有一个密钥选项卡来允许这一点,那么您所要验证的就是某个机器是否响应了Kerberos协议请求。

票数 5
EN

Server Fault用户

发布于 2015-10-26 07:37:32

这可能是一个旧的问题,但我也有同样的问题,想摆脱这条信息。我遵循了ArchLinux的这些指令并解决了这个问题。

https://wiki.archlinux.org/index.php/Active_目录_Integration#Creating_一个_机器_钥匙_制表符_文件

刚刚输入了以下内容:

代码语言:javascript
复制
net ads keytab create -U administrator

不过,这可能取决于你的设置。

票数 2
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/446768

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档