6.1开启winbind开机启动systemctlenable winbind.service
6.2配置Winbind身份认证
将计算机配置为使用 Winbind执行 Kerberos身份验证:Authconfig --disablecache --disablesssd --disablesssdauth --enablewinbind --enablewinbindauth --disablewinbindoffline --smbsecurity=ads --smbworkgroup=ctx --smbrealm=CTX.COM --krb5realm=CTX.COM --krb5kdc=ctxad.ctx.com
--winbindtemplateshell=/bin/bash --enablemkhomedir --enablekrb5kdcdns --enablekrb5realmdns --updateall
黑色标注部分,请根据自身环境进行更改,注意realm为大写的Kerberos领域名称。
忽略authconfig命令返回的有关winbind 服务无法启动的错误。 出现这些错误的原因是,authconfig 尝试在计算机尚未加入域的情况下启动 winbind 服务。
配置smb.conf
打开 /etc/samba/smb.conf 并将以下条目添加到 [Global] 部分下,但要放在authconfig 工具生成的部分后面。vi /etc/samba/smb.conf
kerberos method = secrets and keytab
winbind refresh tickets = true
Linux VDA 需要使用系统 keytab文件 /etc/krb5.keytab 执行身份验证并向 Delivery Controller 进行注册。 计算机首次加入域后,上面的 kerberos method 设置将迫使 Winbind创建系统 keytab 文件。
6.3加入windows域
首先确保域控可以访问,同时具有有权限将计算机添加到域中的账户。本次使用Administrator。
输入命令:net adsjoin CTX.COM –U administrator
输入域管密码后,回车。看到提示,加入到域‘ctx.com’。
6.4为 Winbind 配置 PAM
默认情况下,Winbind PAM 模块 (pam_winbind) 配置不会启用Kerberos 票据缓存,也不会创建主目录。 打开/etc/security/pam_winbind.conf,并在 [Global] 部分下添加或更改以下条目:krb5_auth = yes
krb5_ccache_type = FILE
mkhomedir = yes
确保删除每个设置中的前置分号。
输入命令,vi /etc/ security/pam_winbind.conf
更改完成后,重新启动 Winbind 服务。systemctl restart winbind.service
打开/etc/krb5.conf 并将 [libdefaults] 部分下的以下设置从KEYRING 更改为 FILE 类型:default_ccache_name = FILE:/tmp/krb5cc_%{uid}
输入命令,vi /etc/krb5.conf
6.5验证域成员身份
使用 Samba 的 net ads 命令确认计算机已加入域:net adstestjoin
使用以下命令验证其他域和计算机对象信息:net adsinfo
6.6验证 Kerberos 配置
要验证 Kerberos 已正确配置为可与 Linux VDA 配合使用,请检查系统keytab 文件是否已创建并含有有效密钥:klist -ke
如图所示,显示了各种主体名称与密码套件组合可用的密钥列表。运行Kerberos kinit命令,使用这些密钥向域控制器验证计算机的身份:kinit -k CENTOS\$@CTX.COM
注意,计算机名和REALM名称必须为大写。
如果此命令成功运行,则不会显示任何输出。
验证计算机帐户的 TGT票据已缓存:
使用以下命令检查计算机帐户详细信息:net ads status
6.7验证用户身份验证
使用 wbinfo工具验证是否可向域验证域用户的身份:wbinfo--krb5auth=ctx\\maliu%Password1!
如图,验证了名为maliu的域用户身份。此命令会返回一条成功或失败消息。
补充:
将计算机配置为使用 Winbind执行 Kerberos身份验证(原图)