Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
3.4. winbind
必须配置 Samba,然后才能将 Winbind 配置为系统的身份存储。必须设置 Samba 服务器并将其用于用户帐户,或者 Samba 必须配置为使用 Active Directory 作为后端身份存储。
Samba 项目文档中介绍了配置 Samba。Windows 集成指南中的"使用 Samba for Active Directory 集成"一节中介绍了将 Samba 配置为 Active Directory 集成 的集成点。
3.4.1. 在 authconfig GUI 中启用 Winbind
- 安装
samba-winbind
软件包。Samba 服务中的 Windows 集成功能需要此功能,但不默认安装。[root@server ~]# yum install samba-winbind
- 打开 authconfig UI。
[root2server ~]# authconfig-gtk
- 在 Identity & Authentication 选项卡中,在 User Account Database 下拉菜单中选择 Winbind。
- 设置连接 Microsoft Active Directory 域控制器所需的信息。
- winbind 域 提供要连接的 Windows 域。这应该为 Windows 2000 格式,如 DOMAIN。
- 安全模型 设置用于 Samba 客户端的安全模型。authconfig 支持四种安全模型:
- ads 将 Samba 配置为充当 Active Directory Server 域中的域成员。若要在此模式下操作,必须安装
krb5-server
软件包,并且必须正确配置 Kerberos。 - 域 具有 Samba 通过 Windows 主或备份域控制器(与 Windows 服务器)进行身份验证来验证用户名和密码。
- 服务器 具有本地 Samba 服务器,方法是通过其他服务器(如 Windows 服务器)进行验证来验证用户名和密码。如果服务器身份验证尝试失败,系统会尝试使用 用户模式 进行身份验证。
- 用户 要求客户端使用有效的用户名和密码登录。此模式支持加密的密码。用户名格式必须是 domain\user,如 EXAMPLE\jsmith。注意当验证给定用户是否在 Windows 域中存在时,始终使用
domain\user_name
格式并转义反斜杠(\)字符。例如:[root@server ~]# getent passwd domain\\user DOMAIN\user:*:16777216:16777216:Name Surname:/home/DOMAIN/user:/bin/bash
这是默认选项。
- winbind ADS Realm 提供 Samba 服务器要加入的活动目录域。这仅用于 ads 安全模型。
- winbind 域控制器 提供用于注册系统的域控制器的主机名或 IP 地址。
- Template Shell 设置用于 Windows 用户帐户设置的登录 shell。
- 允许离线登录 允许将身份验证信息存储在本地缓存中。当用户尝试在系统离线时对系统资源进行身份验证时,会引用缓存。
3.4.2. 在命令行中启用 Winbind
Windows 域具有几种不同的安全模型,域中使用的安全模型决定了本地系统的身份验证配置。对于用户和服务器安全模型,Winbind 配置仅需要域(或工作组)名称和域控制器主机名。
--winbindjoin
参数设置用于连接到 Active Directory 域的用户,-- enablelocalauthorize
设置本地授权操作来检查 /etc/passwd
文件。
运行 authconfig 命令后,加入 Active Directory 域。
[root@server ~]# authconfig --enablewinbind --enablewinbindauth --smbsecurity=user|server --enablewinbindoffline --smbservers=ad.example.com --smbworkgroup=EXAMPLE --update --enablelocauthorize --winbindjoin=admin [root@server ~]# net join ads
注意
用户名格式必须是 domain\user,如 EXAMPLE\jsmith。
验证 Windows 域中是否存在给定用户时,始终使用 domain\user 格式并转义反斜杠(\)字符。例如:
[root@server ~]# getent passwd domain\\user DOMAIN\user:*:16777216:16777216:Name Surname:/home/DOMAIN/user:/bin/bash
对于 ads 和域安全模型,Winbind 配置允许对模板 shell 和 realm(仅限用户)进行额外的配置。例如:
[root@server ~]# authconfig --enablewinbind --enablewinbindauth --smbsecurity ads --enablewinbindoffline --smbservers=ad.example.com --smbworkgroup=EXAMPLE --smbrealm EXAMPLE.COM --winbindtemplateshell=/bin/sh --update
还有许多其他选项可用于配置基于 Windows 的身份验证,以及 Windows 用户帐户的信息,如名称格式、是否需要使用用户名的域名以及 UID 范围。这些选项列在 authconfig 帮助中。