我正在为LDAP/Kerberos使用FreeIPA,并为存储设备(Dell/EMC、UnityVSA、VM)创建了一个主体。我已经使用来自IPA的keytab设置了VSA,我还在VSA中设置了LDAP配置,并创建了一个支持Kerberized共享的NAS。IPA和VSA都没有报道任何问题,表面上看情况也不错。
在macOS客户端(High )中,当服务器上的Kerberos被禁用时,我能够挂载NFSv4共享(因此基本工作)。但是,当我为该共享的安全性指定Kerberos时,我无法连接(“权限被拒绝”)。
我用来挂载的命令是:
sudo mount_nfs -vv -o sec=krb5,vers=4 <storage-server>:/test ~/test产出如下:
mount <storage-server>:/test on /Users/<user>/test
mount flags: 0x0
socket: type:any,nomntudp
file system locations:
/test
<storage-server>
inet <ip of storage server>
NFS options: fg,retrycnt=1,vers=4,hard,nointr,noresvport,conn,callback,negnamecache,nonamedattr,acl,noaclonly,nocallumnt,locks,quota,rsize=32768,wsize=32768,readahead=16,dsize=32768,nordirplus,nodumbtimr,timeo=10,retrans=10,maxgroups=16,acregmin=5,acregmax=60,acdirmin=5,acdirmax=60,deadtimeout=0,nomutejukebox,noephemeral,nonfc,sec=krb5
mount_nfs: can't mount /test from <storage-server> onto <mount-point>: Permission denied我可以在客户端从KDC那里得到一张票。klist命令在我尝试连接到NFS共享后显示了以下输出,其中第二个条目是VSA (存储服务器)的IPA主体。
Credentials cache: API:A2FC2CF2-BA23-CE06-BC50-D5CA1180C946
Principal: admin@<REALM>
Issued Expires Principal
Feb 20 21:13:07 2019 Feb 21 21:12:46 2019 krbtgt/<REALM>@<REALM>
Feb 20 21:18:12 2019 Feb 21 21:12:46 2019 nfs/<storage-server>.<domain>@<REALM>客户机上的/etc/krb5.conf文件如下所示:
[libdefaults]
default_realm = <REALM>
dns_lookup_realm = false
dns_lookup_kdc = true
rdns = false
ticket_lifetime = 24h
forwardable = true
udp_preference_limit = 0
default_ccache_name = KEYRING:persistent:%{uid}
[realms]
<REALM> = {
kdc = tcp/<FQDN of IPA>
admin_server = tcp/<FQDN of IPA>
}
[domain_realm]
.<domain> = <REALM>
<domain> = <REALM>
<FQDN of IPA> = <REALM>
<FQDN of storage-server> = <REALM>顺便说一句,我不能让kadmin工作。例如,命令
kadmin admin@REALM.COM返回以下输出:
kadmin: kadm5_init_with_password: Cannot contact any KDC for requested realm我有什么想法吗?我需要krb5.conf文件,还是IPA应该能够处理DNS中的所有服务记录?
当我在服务器端指定AUTH_SYS时,这在NFS连接方面似乎也很好。
下面的转储显示了在上面的挂载命令期间客户端和NFS服务器之间的NFS通信量。第一个是客户机,第二个是服务器响应(下面成对地继续):

发布于 2019-02-21 13:15:28
结果是UnityVSA上的模式规范出现了问题,所以它无法正确地执行LDAP搜索;Kerberized现在起作用了。
仍然不知道为什么kadmin会返回它在macOS上所做的事情。
作为记录,/etc/krb5.conf (或/Library/Preferences/...中的等效文件)根本不需要,并且DNS负责所有的繁重工作。不需要特定的密码配置macOS与IPA,工作的方框。
作为今后的参考,在行为方面,即使在macOS票证查看器中指定了Kerberos标识(密码存储在密钥链中),也必须显式地请求票证(例如,如果票证未激活但指定了标识,则在查找器中访问NFS共享时不会隐式请求票证)。
https://serverfault.com/questions/954893
复制相似问题