阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

使用Windows 2003 Server R2给RHEL和SLES提供身份验证

191次阅读
没有评论

共计 4208 个字符,预计需要花费 11 分钟才能阅读完成。

一、前言

在企业的 IT 环境中,通常既有 Windows 也有 Unix/Linux 服务器,传统情况下,每一台机器有自己的帐号和密码,对用户和管理员来说,要记住自己在 N 台机器上的账号、密码密码是件超级麻烦和恶心的事情,因此我们需要一个集中的、支持异构系统的身份管理解决方案。

Win/Linux 的身份整合方案大多数人会想到 samba+winbind,但这是一个费力而效果不是很理想的方案,微软在 Windows 2003 R2 上集成了基于活动目录的 Identity Management for UNIX,该组件提供 Windows 域用户的 UNIX 账号属性,因此我们在 Linux 系统上不需要 winbind 就能实现域用户的 LDAP 身份验证了。

如果您想要基于 Linux 充当服务器其他 win/linux 机器充当客户端的方案,我暂时还不知道,但无论如何不建议使用 samba(PDC)+winbind。

在实施本方案前,请先了解什么是 LDAP,什么是 AD,什么是 ObjectClass,什么是 DN,知道 ldapsearch 的用法,了解这些有助于诊断在实施过程中遇到的问题。

二、Windows 2003 Server R2 安装与配置

在开始之前,需要注意一件事:从 windows 2003 Server R2 开始才有 Identity Management for UNIX。安装完 Windows 2003 R2 之后,必须给网卡配置一个静态 IP 和指定 DNS。接下来,我们需要配置域控制器和 AD, 打开 开始 -> 管理工具 -> 配置您的服务器向导

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

选择配置”域控制器 (Active Directory)“,接下一步

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

以上只是启用和配置了域控制器

更多详情见请继续阅读下一页的精彩内容 :http://www.linuxidc.com/Linux/2015-01/111168p2.htm

第二步是安装 Active Directory Services,进入控制面板 -> 添加删除程序 -> 添加删除 Windows 组件,出现如下

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

把 Active Directory 服务打钩,接着出错提示,选择是,别管太多。

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

运行 Microsoft Identity Management for UNIX

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

选择 Password Synchronization 的属性

在出现的对话框中,把 UNIX to Computers that run on Windows 勾上,下面的 port Number 不改,一定要点 New Key。

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

还是在上述对话框中,选择 Configuration 标签,把最后一项,Enable Windows to NIS(AD) Password Sync 打钩。

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

以上是密码同步属性配置,第三步是创建域用户和组:

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

首先,需要把 Domain Users 用户组的 UNIX 账号属性打开

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

选择 UNIX Attributes 标签,选择 NIS Domain 为 myad,GID 为 10000

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

接下来我们才能创建一个可以打开 UNIX 属性的域用户

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

在本例中,创建的用户登录名为 helloworld

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

完成后,回去看 helloworld 的用户属性,能够看到标签页 UNIX Attributes

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

设置 helloworld 用户的 UNIX 账号属性

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

为了能让用户从客户端登录,必须重置密码,至此 Windows AD 端配置完成

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

一、前言

在企业的 IT 环境中,通常既有 Windows 也有 Unix/Linux 服务器,传统情况下,每一台机器有自己的帐号和密码,对用户和管理员来说,要记住自己在 N 台机器上的账号、密码密码是件超级麻烦和恶心的事情,因此我们需要一个集中的、支持异构系统的身份管理解决方案。

Win/Linux 的身份整合方案大多数人会想到 samba+winbind,但这是一个费力而效果不是很理想的方案,微软在 Windows 2003 R2 上集成了基于活动目录的 Identity Management for UNIX,该组件提供 Windows 域用户的 UNIX 账号属性,因此我们在 Linux 系统上不需要 winbind 就能实现域用户的 LDAP 身份验证了。

如果您想要基于 Linux 充当服务器其他 win/linux 机器充当客户端的方案,我暂时还不知道,但无论如何不建议使用 samba(PDC)+winbind。

在实施本方案前,请先了解什么是 LDAP,什么是 AD,什么是 ObjectClass,什么是 DN,知道 ldapsearch 的用法,了解这些有助于诊断在实施过程中遇到的问题。

二、Windows 2003 Server R2 安装与配置

在开始之前,需要注意一件事:从 windows 2003 Server R2 开始才有 Identity Management for UNIX。安装完 Windows 2003 R2 之后,必须给网卡配置一个静态 IP 和指定 DNS。接下来,我们需要配置域控制器和 AD, 打开 开始 -> 管理工具 -> 配置您的服务器向导

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

选择配置”域控制器 (Active Directory)“,接下一步

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

以上只是启用和配置了域控制器

更多详情见请继续阅读下一页的精彩内容 :http://www.linuxidc.com/Linux/2015-01/111168p2.htm

三、Linux 客户端的配置与测试

1、RHEL 5.5 篇

(1) 首先确保如下有关 LDAP 的组件已经安装 (32bit 版的略有不同)

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

(2) 接下来,编辑 /etc/hosts 文件,加入 adserver.myad.com 的 IP 解析,或者也可以编辑 /etc/resolv.conf 文件指定 namesever 为 adserver.myad.com 的 IP 地址。

(3) 第三步,编辑 /etc/nsswitch.conf 文件,把 passwd,shadow,group 的查找指定如下图:

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

(4) 第四步,编辑 /etc/openldap/ldap.conf 文件,内容如下:

URI ldap://adserver.myad.com

BASE dc=myad,dc=com

(5) 第五步,编辑 /etc/ldap.conf 文件,在编辑之前,首先把自带的备份。新建的 /etc/ldap.conf 文件内容如下

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

为了安全起见,不使用 Administrator 来查询,而是创建一个 adbind 域用户,并加入 Domain User、Account Operator 组, 如果不加入 Account Operator 组,用 ldapsearch 查询 DN 无法获取 unixUserPassword 属性值。

上图中的 cn=adbind,cn=users,dc=myad,dc=com 是查询用户 / 组账号的 LDAP 用户 DN。

(6) 关闭 nscd 服务以避免信息缓存的影响

# chkconfig nscd off

# service nscd stop

(7) 验证是否已经成功配置 AD 域验证 UNIX/Linux 用户

执行如下命令:

[root@rhcs1 ~]# id helloworld

uid=10000(helloworld) gid=10000(Domain Users) groups=10000(Domain Users)

[root@rhcs1 ~]# getent group | grep ‘Domain Users’

Domain Users:*:10000:

如果能够看到账户和组的信息,说明身份能够获取,只是身份信息能够获取,我们还需要测试一下登录。在第一次登录之前,helloworld 在当前机器的家目录没有创建,其他没有登录的域用户也是一样,为了在第一次登录时自动创建家目录,需要配置一个文件 /etc/pam.d/system-auth,在末尾加上一行:

session    optional  pam_mkhomedir.so

现在首先测试 ssh 登录本地来验证 ssh 服务

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

接下来测试从本地键盘登录:

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

2、SLES 11 SP1 篇

(1) 检查 LDAP 组件是否已经安装

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

(2) 修改 /etc/pam.d/common-session,加入一行

session    optional  pam_mkhomedir.so

(3) 以下配置文件与 RHEL 5.5 的配置相同

/etc/nsswitch.conf

/etc/ldap.conf

/etc/openldap.conf

(4)SLES 11 SP1 的系统服务启动顺序有些问题,缺省先启动 dbus 再启动 network,这会造成一个阻塞:dbus 试图去查找 passwd,group 信息,而这时 nss_ldap 会因为 network 服务没有启动而一直不断尝试连接 AD 服务器,系统启动到 dbus 就会挂住。所以我们要分别到 /etc/init.d/rc3.d 和 /etc/init.d/rc5.d 下把 dbus,network 服务改成如下顺序:

lrwxrwxrwx 1 root root 10 Jul 20 03:54 S00network -> ../network

lrwxrwxrwx 1 root root  7 Jul 20 03:52 S01dbus -> ../dbus

lrwxrwxrwx 1 root root  7 Jul 20 03:56 K07dbus -> ../dbus

lrwxrwxrwx 1 root root 10 Jul 20 03:56 K08network -> ../network

(5)关闭 nscd 服务以避免信息缓存的影响

# chkconfig nscd off

# service nscd stop

(6)SLES 10 的配置方法同上

(7)SLES 9 的配置方法基本和 SLES 10/11 一样,但要修改两个文件成如下内容:

/etc/pam.d/login

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

/etc/pam.d/sshd

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

四、配置使用 web 修改域用户密码

Linux 客户端上的 passwd 命令还不能修改域用户的密码,因为域用户的密码会涉及三种加密方式:windows 系统密码,NTLM 密码,UNIX 密码。Windows 2003 R2 包含了修改域用户密码的 web 程序,以下是该程序的配置步骤。

1、安装远程管理组件,从控制面板 -> 添加删除程序 -> 添加 Windows 组件选择“应用程序服务器”,然后在详细信息里依次选择如下图组件:

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

2、打开 IIS 管理器

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

3、新建虚拟目录

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

4、输入虚拟目录的别名

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

5、输入虚拟目录的本地路径

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

6、查看虚拟目录的属性

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

7、启用默认内容文档

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

8、打开设置页面修改密码

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

使用 Windows 2003 Server R2 给 RHEL 和 SLES 提供身份验证

更多 RedHat 相关信息见 RedHat 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=10

  本文永久更新链接地址 :http://www.linuxidc.com/Linux/2015-01/111168.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-20发表,共计4208字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中