![通过 Kerberized NFSv4 挂载的 Apache userdir:禁止访问](https://linux22.com/image/687206/%E9%80%9A%E8%BF%87%20Kerberized%20NFSv4%20%E6%8C%82%E8%BD%BD%E7%9A%84%20Apache%20userdir%EF%BC%9A%E7%A6%81%E6%AD%A2%E8%AE%BF%E9%97%AE.png)
我设立了一个专门用于学习 Web 开发的实践室。用户帐户由 Samba 4 AD 管理,用户文件存储在中央 NFS 服务器中,导出文件由 Kerberos 保护。
一切正常:
- 用户可以通过 Kerberos 进行身份验证(并在登录时收到票证)
- Homes 已通过 NFS4 (sec=krb5) 顺利安装
- 权限正确应用于所有域用户
但是,我需要在每个客户端上安装一个仅限本地主机的 apache 服务器(包含 php 和其他内容),并激活 userdir。
我搜索过互联网,但似乎很少有人和我的配置相同。
我已经尝试了所有我发现的方法,例如创建一个 spn 和一个 apache 专用的 keytab:
# samba-tool spn add HTTP/client1.domain client1$
# samba-tool domain exportkeytab httpclient1.keytab --principal=HTTP/client1.domain
并将此生成的密钥表导出到 client1 上的 /etc/apache2 中,但如果我尝试在此密钥表上执行 kinit:# kinit -k -t /etc/apache2/client1http.keytab HTTP/client1.domain kinit: 获取初始凭据时,未在 Kerberos 数据库中找到客户端“HTTP/client.domain@REALM”
keytab 似乎是正确的:
# klist -kt /etc/apache2/client1http.keytab
KVBO Timestamp Principal
---- ------------------- ----------------------------
4 29/07/2016 16:12:38 HTTP/client1.domain@REALM
4 29/07/2016 16:12:38 HTTP/client1.domain@REALM
4 29/07/2016 16:12:38 HTTP/client1.domain@REALM
我不知道如何让它工作...我必须创建一个域用户来替换每个客户端上的本地 www-data 用户吗?
仅供参考: 服务器端:Ubuntu 服务器 14.04(计划升级到 16.04...但稍后)带有 samba 4.2.3(已编译) 客户端:XUbuntu 16.04 带有 samba 4.3.9(来自 repos)
如能得到所有帮助将不胜感激!
谨致问候,布鲁诺。