我试图在我的 apache 上设置一个简单的文件目录共享,它被 kerberized 用于处理 KDC 票证,
当我尝试通过工作站上的 Chrome 浏览器访问共享文件时,我的 Apacche 错误日志中出现这些错误,
Fri Dec 08 16:59:50.390610 2017] [auth_kerb:debug] [pid 8140] src/mod_auth_kerb.c(1598): [client 192.168.2.136:58703] kerb_authenticate_user entered with user (NULL) and auth_type Kerberos
[Fri Dec 08 16:59:50.390657 2017] [auth_kerb:debug] [pid 8140] src/mod_auth_kerb.c(1230): [client 192.168.2.136:58703] Acquiring creds for HTTP/web01.CORP.local@CORP.LOCAL
[Fri Dec 08 16:59:50.392259 2017] [auth_kerb:debug] [pid 8140] src/mod_auth_kerb.c(1352): [client 192.168.2.136:58703] Verifying client data using KRB5 GSS-API
[Fri Dec 08 16:59:50.392296 2017] [auth_kerb:debug] [pid 8140] src/mod_auth_kerb.c(1368): [client 192.168.2.136:58703] Client didn't delegate us their credential
[Fri Dec 08 16:59:50.392305 2017] [auth_kerb:debug] [pid 8140] src/mod_auth_kerb.c(1396): [client 192.168.2.136:58703] **Warning: received token seems to be NTLM, which isn't supported by the Kerberos module. Check your IE configuration.**
[Fri Dec 08 16:59:50.392312 2017] [auth_kerb:debug] [pid 8140] src/mod_auth_kerb.c(1091): [client 192.168.2.136:58703] GSS-API **major_status:00070000, minor_status:00000000**
[Fri Dec 08 16:59:50.392328 2017] [auth_kerb:error] [pid 8140] [client 192.168.2.136:58703] gss_accept_sec_context() failed: No credentials were supplied, or the credentials were unavailable or inaccessible (, Unknown error)*
----------
我的公司 AD 上有一个 Windows 10 工作站,我的 Apache 在 Centos 7 上,httpd-2.4.10
我使用 mksutil 为我的 Apache 服务器创建了一个服务帐户,并将生成的密钥表复制到 Apache 服务器 /etc/httpd/
到目前为止完成的测试:
- 测试从 Apache 服务器到域的基本连接
[root@web01 /etc/httpd]# kinit first.last first.last@CORP.LOCAL 的密码: [root@web01 /etc/httpd]#
- 检查是否在 AD 上生成了名为“web01.httpd”的实用程序帐户,并且它在那里,也通过 KLIST 检查它
[root@web01 /etc/httpd]# klist -kte /etc/httpd/httpd.keytab 密钥表名称:文件:/etc/httpd/httpd.keytab KVNO 时间戳主体 ---- ----- ----------------- -------------------------- 2 17 年 8 月 12 日 10:16:28 web01.httpd@CORP.LOCAL (arcfour-hmac) 2 17 年 8 月 12 日 10:16:28 web01.httpd@CORP.LOCAL (aes128-cts-hmac-sha1-96) 2 17 年 8 月 12 日 10:16:28 web01.httpd@CORP.LOCAL (aes256-cts-hmac-sha1-96) 2 17 年 12 月 8 日 10:16:28 HTTP/web01.CORP.local@CORP.LOCAL (arcfour-hmac) 2 17 年 8 月 12 日 10:16:28 HTTP/web01.CORP.local@CORP.LOCAL (aes128-cts-hmac-sha1-96) 2 17 年 12 月 8 日 10:16:28 HTTP/web01.CORP.local@CORP.LOCAL (aes256-cts-hmac-sha1-96)
3. check if KVNO shows a number,
[root@web01 /etc/httpd]# kvno HTTP/web01.CORP.local kvno HTTP/web01.corp.local@CORP.LOCAL HTTP/web01.corp.local@CORP.LOCAL:kvno = 2
4. checked my Apache config,
LoadModule auth_kerb_module /usr/lib64/httpd/modules/mod_auth_kerb.so 服务器名称网络文件 ServerAlias webfiles.corp.local DocumentRoot /opt/webfiles 日志级别调试 重写引擎开启 RewriteCond %{HTTPS} 关闭 重写规则 (.*) https://%{HTTP_HOST}%{REQUEST_URI} 服务器名称网络文件 ServerAlias webfiles.corp.local DocumentRoot /opt/webfiles 日志级别调试 错误日志 /var/log/httpd/webfiles_error CustomLog /var/log/httpd/webfiles_access common SSL引擎开启 SSLCertificateKeyFile /etc/pki/tls/private/web01.CORP.local.pem SSLCertificateFile /etc/pki/tls/certs/web01.CORP.local.pem SSLCertificateChainFile /etc/pki/ca-trust/source/anchors/CORP_intermediate_ca.crt AuthzSendForbiddenOnFailure On 选项+索引 AllowOverride 无 命令允许,拒绝 允许所有人 AuthName "路缘石访问" AuthType Kerberos KrbAuthRealms CORP.LOCAL KrbServiceName HTTP/web01.corp.local@CORP.LOCAL Krb5KeyTab /etc/httpd/httpd.keytab KrbMethodK5密码关闭 KrbLocalUserMapping 开启 KrbSaveCredentials 开启 SSL要求SSL #AuthGroupFile /etc/httpd/conf/httpd-access-groups 需要有效用户
5. checked the /etc/krb5.conf for proper domain info, it looks good,
[libdefaults] default_realm = CORP.LOCAL dns_lookup_realm = 真 dns_lookup_kdc = 真 ticket_lifetime = 10h renew_lifetime = 7d 可转发=真 kdc_timesync = 真 ccache_type = 4 可代理=真 fcc-mit-ticketflags = true default_keytab_name = 文件:/etc/krb5.keytab verify_ap_req_nofail = true [领域] 公司本地 = { kdc = CORP.local admin_server = dom01.corp.local } [domain_realm] 公司本地 = 公司本地 .CORP.local = CORP.LOCAL .dr.CORP.local = CORP.LOCAL .test.local = CORP.LOCAL .dmz.local = CORP.LOCAL .prod.local = CORP.LOCAL
不知道去哪里找,我的工作站 Internet 选项 - 本地站点 - 配置为对我的域进行身份验证,
仍然收到 NTLM 错误消息