我最近inheritance了维护我们的Samba域控制器的责任,这个控制器主要用于pipe理日志到域中,并作为一个安全的文件共享。 这个系统的初始configuration并不完全知道,因为在我join这个组之前就已经configuration好了,而且由于最近出现了一些意外的人员变动,我离开了一个服务中断的系统,关于。 服务器运行Ubuntu 16.04,并使用samba来模拟Windows Active Directory(我想我正在使用正确的术语)。 如果需要,我很高兴发布configuration文件或其他相关信息。
我发现我无法将新机器join到域中,而且login到该域下的Windows机器似乎是依赖于caching凭据,密码更改不会反映在不同的机器上。 我去挖掘,我最初的发现是,在服务器机器的启动,其中一个服务显示无法启动。 查看日志文件kerberos 5密钥分发服务失败。
Kerberos服务已经打破了好几个月似乎。 我遵循一个非常有用的指导来configuration一个新的kerberos域,链接在消息的底部。 我按照指南重新安装了kerberos 5服务器,现在服务已经正确地在启动时正常启动,并且通过跟踪指南所build议的日志文件的跟踪,我可以看到它正在与networking上的其他计算机通信,我可以看到各种计算机进行login尝试,由于没有计算机名称在主目录列表失败。 (这是另一个较低优先级的问题,因为当我重新安装时,我认为旧的主体文件被覆盖,不知道这是一种可能性,找出这些计算机在自动尝试重新连接时发送的密码将允许我将它们添加到校长用正确的密码来解决这个问题)当我尝试login在join到域的机器的Windows 7login页面,当事情还在工作时,我可以在服务器上实时看到它的踪迹terminal读出。 但是,并不是一切都好。
当我尝试login仍join域的terminal时,核收到来自用户名@ MSAE的login名,并且未能find匹配项,因为域名为msae.wisc.edu,因此找不到匹配项用户名。 这有点让我感到困惑,因为在域名下的窗口中列出了“msae.wisc.edu”,但在login时,域名为“MSAE”login尝试缺乏必要的“.wisc.edu”以完全匹配在校长列表中find。 我不知道如何继续。 我曾尝试使用msae.wisc.edu/usernamelogin,强制域读取“msae.wisc.edu”,这会导致“服务器上的安全数据库没有此工作站信任关系的计算机帐户”当发送正确的密码时,在Windows机器上的消息,并在服务器上,我看到:
Jun 22 13:09:10 nucleus.msae.wisc.edu krb5kdc[1040](info): AS_REQ (6 etypes {18 17 23 24 -135 3}) 128.104.185.62: ISSUE: authtime 1498154950, etypes {rep=18 tkt=18 ses=18}, [email protected] for krbtgt/[email protected]
我也尝试添加一个新的条目,只有MSAE作为域的主体,即username @ MSAE,而不是所有其他的读取[email protected]。 当我login时,没有指定域(即使用窗口中显示的默认MSAE域),我得到以下错误:
REFERRAL: username@MSAE for krbtgt/MSAE@MSAE, Realm not local to KDC
根据我在MIT Kerberos文档(下面的第二个链接)上find的东西,我也尝试将以下几行添加到krb5.conf中,希望平滑此主机名问题。
[libdefaults] ignore_acceptor_hostname = true
但是这并没有奏效。
我有一个想法,把默认领域的名称改为“MSAE”,以匹配Windows使用的login尝试格式,但我担心可能会破坏其他现有的服务。 我唯一的想法是以某种方式find一种方法来自动将“MSAE”replace为“msae.wisc.edu”,我想我可以通过放置这样一行(MSAE = msae.wisc.edu)的[domain_realm]节krb5.conf,但据我所知,这没有做任何事情。
更糟糕的是,修复破损的kerberos服务使得客户端机器与核心进行通信,但由于上述域名问题,用户名和密码不被接受。 这里带回家的是,几个月来,我的教授已经用caching的证书login到他的机器上,因为他的电脑由于kerberos服务的破坏而无法联系Nucleus。 现在这个(有点)是固定的,他试图login(之前)在他的terminalcaching的凭据,但被拒绝,因为他的login尝试被传送给Nucleus并被拒绝。 这样做的结果是取消了caching的正面证书,导致他在这几个月里一直在login。
任何有关这个问题的理事会将不胜感激。
我的krb5.conf
[libdefaults] default_realm = msae.wisc.edu ignore_acceptor_hostname = true # The following krb5.conf variables are only for MIT Kerberos. #krb4_config = /etc/krb.conf #krb4_realms = /etc/krb.realms #kdc_timesync = 1 #ccache_type = 4 #forwardable = true #proxiable = true # The following encryption type specification will be used by MIT Kerberos # if uncommented. In general, the defaults in the MIT Kerberos code are # correct and overriding these specifications only serves to disable new # encryption types as they are added, creating interoperability problems. # # Thie only time when you might need to uncomment these lines and change # the enctypes is if you have local software that will break on ticket # caches containing ticket encryption types it doesn't know about (such as # old versions of Sun Java). # default_tgs_enctypes = des3-hmac-sha1 # default_tkt_enctypes = des3-hmac-sha1 # permitted_enctypes = des3-hmac-sha1 # The following libdefaults parameters are only for Heimdal Kerberos. v4_instance_resolve = false v4_name_convert = { host = { rcmd = host ftp = ftp } plain = { something = something-else } } fcc-mit-ticketflags = true [realms] msae.wisc.edu = { kdc = NUCLEUS admin_server = NUCLEUS } ATHENA.MIT.EDU = { kdc = kerberos.mit.edu:88 kdc = kerberos-1.mit.edu:88 kdc = kerberos-2.mit.edu:88 admin_server = kerberos.mit.edu default_domain = mit.edu } MEDIA-LAB.MIT.EDU = { kdc = kerberos.media.mit.edu admin_server = kerberos.media.mit.edu } ZONE.MIT.EDU = { kdc = casio.mit.edu kdc = seiko.mit.edu admin_server = casio.mit.edu } MOOF.MIT.EDU = { kdc = three-headed-dogcow.mit.edu:88 kdc = three-headed-dogcow-1.mit.edu:88 admin_server = three-headed-dogcow.mit.edu } CSAIL.MIT.EDU = { kdc = kerberos-1.csail.mit.edu kdc = kerberos-2.csail.mit.edu admin_server = kerberos.csail.mit.edu default_domain = csail.mit.edu krb524_server = krb524.csail.mit.edu } IHTFP.ORG = { kdc = kerberos.ihtfp.org admin_server = kerberos.ihtfp.org } GNU.ORG = { kdc = kerberos.gnu.org kdc = kerberos-2.gnu.org kdc = kerberos-3.gnu.org admin_server = kerberos.gnu.org } 1TS.ORG = { kdc = kerberos.1ts.org admin_server = kerberos.1ts.org } GRATUITOUS.ORG = { kdc = kerberos.gratuitous.org admin_server = kerberos.gratuitous.org } DOOMCOM.ORG = { kdc = kerberos.doomcom.org admin_server = kerberos.doomcom.org } ANDREW.CMU.EDU = { kdc = kerberos.andrew.cmu.edu kdc = kerberos2.andrew.cmu.edu kdc = kerberos3.andrew.cmu.edu admin_server = kerberos.andrew.cmu.edu default_domain = andrew.cmu.edu } CS.CMU.EDU = { kdc = kerberos.cs.cmu.edu kdc = kerberos-2.srv.cs.cmu.edu admin_server = kerberos.cs.cmu.edu } DEMENTIA.ORG = { kdc = kerberos.dementix.org kdc = kerberos2.dementix.org admin_server = kerberos.dementix.org } stanford.edu = { kdc = krb5auth1.stanford.edu kdc = krb5auth2.stanford.edu kdc = krb5auth3.stanford.edu master_kdc = krb5auth1.stanford.edu admin_server = krb5-admin.stanford.edu default_domain = stanford.edu } UTORONTO.CA = { kdc = kerberos1.utoronto.ca kdc = kerberos2.utoronto.ca kdc = kerberos3.utoronto.ca admin_server = kerberos1.utoronto.ca default_domain = utoronto.ca } [domain_realm] .msae.wisc.edu = msae.wisc.edu MSAE = msae.wisc.edu .MSAE = msae.wisc.edu .mit.edu = ATHENA.MIT.EDU mit.edu = ATHENA.MIT.EDU .media.mit.edu = MEDIA-LAB.MIT.EDU media.mit.edu = MEDIA-LAB.MIT.EDU .csail.mit.edu = CSAIL.MIT.EDU csail.mit.edu = CSAIL.MIT.EDU .whoi.edu = ATHENA.MIT.EDU whoi.edu = ATHENA.MIT.EDU .stanford.edu = stanford.edu .slac.stanford.edu = SLAC.STANFORD.EDU .toronto.edu = UTORONTO.CA .utoronto.ca = UTORONTO.CA [login] krb4_convert = true krb4_get_tickets = false [logging] kdc = FILE:/var/log/kerberos/krb5kdc.log admin_server = FILE:/var/log/kerberos/kadmin.log default = FILE:/var/log/kerberos/krb5lib.log
我的kdc.conf
[kdcdefaults] kdc_ports = 750,88 [realms] MSAE.WISC.EDU = { database_name = /var/lib/krb5kdc/principal admin_keytab = FILE:/etc/krb5kdc/kadm5.keytab acl_file = /etc/krb5kdc/kadm5.acl key_stash_file = /etc/krb5kdc/stash kdc_ports = 750,88 max_life = 10h 0m 0s max_renewable_life = 7d 0h 0m 0s master_key_type = des3-hmac-sha1 supported_enctypes = aes256-cts:normal arcfour-hmac:normal des3-hmac-sha1:normal des-cbc-crc:normal des:normal des:v4 des:norealm des:onlyrealm des:afs3 default_principal_flags = +preauth }
Kerberos指南http://techpubs.spinlocksolutions.com/dklar/kerberos.html#krb-adduser-ticket主要名称和DNS文档https://web.mit.edu/kerberos/krb5-1.11/doc/admin/princ_dns。 HTML