要在 Ubuntu/Debian 桌面上支持智能卡重定向,需使用 Samba 和 Winbind 解决方案将基础虚拟机 (VM) 与 Active Directory (AD) 域集成在一起。
可以使用以下过程将 Ubuntu/Debian 虚拟机与 AD 域集成以进行智能卡重定向。
该过程中的一些示例使用占位符值以表示网络配置中的实体,例如,AD 域的 DNS 名称。请将占位符值替换为您的配置特定的信息,如下表中所述。
| 占位符值 | 描述 |
|---|---|
| dns_IP_ADDRESS | DNS 名称服务器的 IP 地址 |
| mydomain.com | AD 域的 DNS 名称 |
| MYDOMAIN.COM | AD 域的 DNS 名称,全部为大写字母 |
| MYDOMAIN | 包含 Samba 服务器的工作组或 NT 域的 DNS 名称,全部为大写字母 |
| ads-hostname | AD 服务器的主机名 |
| ads-hostname.mydomain.com | AD 服务器的完全限定域名 (FQDN) |
| mytimeserver.mycompany.com | NTP 时间服务器的 DNS 名称 |
| AdminUser | 虚拟机管理员的用户名 |
步骤
-
在 Ubuntu/Debian 虚拟机上,通过编辑
/etc/hostname配置文件来定义虚拟机的主机名。 -
配置 DNS。
-
将 DNS 服务器名称和 IP 地址添加到
/etc/hosts配置文件中。 -
将 DNS 名称服务器的 IP 地址和 AD 域的 DNS 名称添加到
/etc/network/interfaces配置文件中,如以下示例中所示。dns-nameservers dns_IP_ADDRESS dns-search mydomain.com
-
-
安装
resolvconfig软件包。-
运行安装命令。
sudo apt-get install -y resolvconf允许系统安装该软件包并重新引导。
-
运行以下命令,验证
/etc/resolv.conf文件中的 DNS 配置。sudo cat /etc/resolv.conf确认命令返回的输出与以下示例类似。
nameserver dns_IP_ADDRESS search mydomain.com
-
-
配置网络时间同步。
-
安装
ntpdate软件包。sudo apt-get install -y ntpdate -
将 NTP 服务器信息添加到
/etc/systemd/timesyncd.conf配置文件中,如以下示例中所示。[Time] NTP=mytimeserver.mycompany.com
-
-
重新启动 NTP 服务。
sudo service ntpdate restart -
安装所需的 AD 加入软件包。
-
运行安装命令。
sudo apt-get install -y samba krb5-config krb5-user winbind libpam-winbind libnss-winbind -
在出现要求输入默认 Kerberos 领域的安装提示时,以大写字母形式输入您的 AD 域的 DNS 名称(例如,
MYDOMAIN.COM)。然后,选择确定。
-
-
编辑
/etc/krb5.conf配置文件,如以下示例中所示。[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 = ads-hostname.mydomain.com admin_server = ads-hostname.mydomain.com default_domain = ads-hostname.mydomain.com pkinit_anchors = FILE:/etc/pki/nssdb/certificate.pem pkinit_cert_match = <KU>digitalSignature pkinit_kdc_hostname = ads-hostname.mydomain.com } [domain_realm] .mydomain.com = MYDOMAIN.COM mydomain.com = MYDOMAIN.COM -
要验证 Kerberos 认证,请运行以下命令。
sudo kinit Administrator@MYDOMAIN.COM sudo klist确认命令返回的输出与以下示例类似。
Ticket cache: FILE:/tmp/krb5cc_0 Default principal: Administrator@MYDOMAIN.COMValid starting Expires Service principal 2019-05-27T17:12:03 2019-05-28T03:12:03 krbtgt/MYDOMAIN.COM@MYDOMAIN.COM renew until 2019-05-28T17:12:03 -
编辑
/etc/samba/smb.conf配置文件,如以下示例中所示。[global] workgroup = MYDOMAIN usershare allow guests = NO idmap gid = 10000-20000 idmap uid = 10000-20000 kerberos method = secrets and keytab realm = MYDOMAIN.COM security = ADS template homedir = /home/%D/%U template shell = /bin/bash winbind use default domain=true winbind offline logon = yes winbind refresh tickets = yes -
加入 AD 域,然后检查集成。
-
运行 AD 加入命令。
sudo net ads join -U AdminUser@mydomain.com sudo systemctl stop samba-ad-dc sudo systemctl enable smbd nmbd winbind sudo systemctl restart smbd nmbd winbind -
修改
/etc/nsswitch.conf配置文件,如以下示例中所示。passwd: compat systemd winbind group: compat systemd winbind shadow: compat gshadow: files -
要检查 AD 加入结果,请运行以下命令并验证是否返回正确的输出。
sudo wbinfo -u sudo wbinfo -g -
要检查 Winbind 名称服务切换,请运行以下命令并验证是否返回正确的输出。
sudo getent group|grep 'domain admins' sudo getent passwd|grep 'ads-hostname'
-
-
启用所有 PAM 配置文件。
pam-auth-update在“PAM 配置”屏幕中,选择所有 PAM 配置文件,包括在登录时创建主目录,然后选择确定。
后续步骤
此页面对您有帮助吗?