Kubernetes 如何让Kerberos身份验证在k8s中工作

Kubernetes 如何让Kerberos身份验证在k8s中工作,kubernetes,kerberos,azure-aks,ansible-awx,kdc,Kubernetes,Kerberos,Azure Aks,Ansible Awx,Kdc,我正在尝试通过AWX中的kerberos进行身份验证。我正在Azure Kubernetes服务中托管AWX。我们使用的KDC是ldap。当从容器本身执行时,我能够通过ping和telnet通过端口88与ldap服务器通信。我不确定我还能做些什么来测试这个,而且日志文件是空的 我已经将krb5.conf文件和krb5.keytab文件添加到Task/Web容器中。我试过使用和不使用keytab。我尝试将缓存更改为文件而不是密钥环 apiVersion: v1 kind: ConfigMap me

我正在尝试通过AWX中的kerberos进行身份验证。我正在Azure Kubernetes服务中托管AWX。我们使用的KDC是ldap。当从容器本身执行时,我能够通过ping和telnet通过端口88与ldap服务器通信。我不确定我还能做些什么来测试这个,而且日志文件是空的

我已经将krb5.conf文件和krb5.keytab文件添加到Task/Web容器中。我试过使用和不使用keytab。我尝试将缓存更改为文件而不是密钥环

apiVersion: v1
kind: ConfigMap
metadata:
  name: {{ include "awx.fullname" . }}-application-config-krb5
  labels:
    app.kubernetes.io/name: {{ include "awx.name" . }}
    helm.sh/chart: {{ include "awx.chart" . }}
    app.kubernetes.io/instance: {{ .Release.Name }}
    app.kubernetes.io/managed-by: {{ .Release.Service }}
data:
  krb5.conf: |
    # Configuration snippets may be placed in this directory as well
    includedir /etc/krb5.conf.d/

    [logging]
    default = FILE:/var/log/krb5libs.log
    kdc = FILE:/var/log/krb5kdc.log
    admin_server = FILE:/var/log/kadmind.log

    [libdefaults]
    dns_lookup_realm = false
    ticket_lifetime = 24h
    renew_lifetime = 7d
    forwardable = true
    rdns = false
    default_realm = MYDOMAIN.COM
    default_ccache_name = KEYRING:persistent:%{uid}

    [realms]
    MYDOMAIN.COM = {
      kdc = ldap.mydomain.com
      admin_server = ldap.mydomain.com
    }

    [domain_realm]
    .mydomain.com = MYDOMAIN.COM
    mydomain.com = MYDOMAIN.COM
无论我尝试什么配置,都会得到相同的错误。好奇我做错了什么。我可以在docker中本地运行AWX的VM上使用kerberos配置使其正常工作,但是,我无法在AKS中使用它。不确定这是特定的AKS还是一般的Kubernetes

错误:

kinit:获取时无法联系领域“MYDOMAIN.COM”的任何KDC 初始凭证


该错误表示您看到该错误的服务器无法联系KDC。 根据您的配置,即:ldap.mydomain.com。 您需要验证Kerberos设置是否正确配置,以及DNS设置是否正确。Kerberos检查默认记录以联系KDC。 显然,服务器的传出和传入端口也必须是可访问的


疑难解答来自正在运行的实例,因为基于有限的信息,公共Kerberos设置是我能给出的最佳建议。

我认为这与k8s无关?您公开了ldap端口吗?“我们使用的KDC是ldap”>没有多大意义。LDAP是一种协议,而不是一种产品。FreeIPA或Microsoft Active Directory等产品同时提供Kerberos身份验证和LDAP授权等@Ian Clark您是否已设法解决了问题?您能否共享KDC清单文件的净化版本,包括K8S Service one。