Linux 版 (精华区)

发信人: ken (大胡子), 信区: Linux
标  题: Samba 3.0 结合活动目录之初体验  
发信站: 哈工大紫丁香 (2003年10月14日12:59:32 星期二), 站内信件

 由 徐永久 发表于 09月17日 20:15。   

Samba 3.0 正在紧张的开发之中,本文是 Samba 3.0 和 Windows 2000 的活动目录集成的
经验。对于需要在异构环境下工作的读者而言,也是先睹为快的一个过程。
Windows 2000 和 XP 采用 Kerberos 认证协议来使用活动目录,在带有 NT 的环境下,我
们需要 Windows 2000 的混合域模型才能让 NT 和 2000 互操作,Samba 被认为是 NT 
4.0 类型的域控制器。(这里需要一些微软认证工程师的知识,如果各位看官不懂那就跳
过作罢)

要让 Samba 3.0 跑起来,我们需要下面的环境:

Windows 2000 Server 作为域控制器
OpenLDAP 的 Linux 开发库,目前最新版本为: 2.0.23-4 ,下载地点:
ftp://ftp.redhat.com/pub/redhat/linux/7.3/en/os/i386/RedHat/RPMS/openldap-devel
-2.0.23-4.i386.rpm

MIT Kerberos 的 Linux 开发库,目前最新版本为1.2.4-1。
krb5-devel 下载地点:ftp://ftp.redhat.com/pub/redhat/linux/7.3/en/os/i386/RedHa
t/RPMS/krb5-devel-1.2.4-1.i386.rpm
\\krb5-libs 下载地点:ftp://ftp.redhat.com/pub/redhat/linux/7.3/en/os/i386/RedH
at/RPMS/krb5-libs-1.2.4-1.i386.rpm
krb5-workstation 下载地点:ftp://ftp.redhat.com/pub/redhat/linux/7.3/en/os/i386
/RedHat/RPMS/krb5-workstation-1.2.4-1.i386.rpm
最新 alpha 版本的 Samba 源代码,目前最新为 build 17 ,下载地点:http://us4.samb
a.org/samba/ftp/alpha/


如果不知道是否有安装过以上开发库,可以用 rpm -qa 命令来检查:

rpm -qa |grep openldap 来检查 openldap-devel 库
rpm –qa | grep krb 来检查 Kerberos 库
如果没有就用 rpm -i 来安装了。

Red Hat Linux 7.3 缺省安装模式下缺少 krb5-workstation 库。

-------------------------------------------------------------------------------
-
两台服务器的 IP 地址分别为:
Win2K - 10.109.10.133
Linux - 10.109.10.132
-------------------------------------------------------------------------------
-

Samba 3.0 的安装比较简单:

gunzip -cd samba-3.0-alpha17.tar.gz | tar xvf -
cd samba-3.0-alpha17/source
./configure -prefix=/usr/local/samba 
检查 include/config.h 文件包含下面两行:
#define HAVE KRB5 1 
#define HAVE LDAP 1 
然后就是 make;make install 

配置 Kerberos
下面配置参数让 Kerberos 进程知道处理活动目录服务器,对 /etc/krb5.conf 做适当的
修改,修改时需要注意的是 Kerberos 是大小写敏感的。

另外一个需要检查的地方是,两台服务器的时钟同步问题,如果时间超过5分钟他们将不能
通信。
测试连接正常的一个命令是:
/usr/kerberos/bin/kinit nuser@SLOWE.COM

Kerberos 的 kinit 命令将测试服务器间的通信,后面的域名 SLOWE.COM 是你的活动目录
的域名,必须大写,否则会收到错误信息:
kinit(v5): Cannot find KDC for requested realm while getting initial 
credentials.

如果通信正常,你会提示输入口令,口令正确的话,就返回 bash 提示符,如果错误则报
告:
kinit(v5): Preauthentication failed while getting initial credentials.

配置 Samba
Samba 使用 /usr/local/samba/lib/smb.conf 作为配置文件,我们先配置一个十分简单的
文件:

realm = SLOWE.COM // 活动目录服务器域名
ads server = 10.109.10.133 // 活动目录地址
security = ADS // 采用活动目录加密
encrypt passwords = yes // 采用加密的口令

配置完 Samba 和 Kerberos 后,需要在 Windows 2000 活动目录下建立一个计算机帐号,
如果需要在 Linux 上来完成的话,运行:
/usr/kerberos/bin/kinit administrator@SLOWE.COM 
输入口令后,建立帐号:
/usr/local/samba/bin/net ads join 
如果成功的话,会看到如下提示:
Joined 'LDAPS' to realm 'SLOWE.COM.

去 Windows 2000 服务器检查上面的工作:打开活动目录用户和计算机,查看其中的条目
,如果成功的话,就可以看到你的 Linux 服务器。

然后在 Linux 机器上,你就可以采用 smbclient 命令连接到 Windows 的共享文件夹,而
不需要输入口令(因为采用了Kerberos )。
/usr/local/samba/bin/smbclient //w2k/c\$ -k 

这个命令可能会产生一些错误信息,但是不要紧它能工作的。

由于 Samba 3.0 还是 Alpha 版本,所以在安装和配置过程中产生很多错误。所以,如果
你足够勇敢的话,可以去迎接这种挑战的,如果能看到成功的喜悦,为什么不拿出来和我
们共享呢?

Samba 3.0 的未来之路: http://us6.samba.org/samba/development.html 
--
□太空服(Pifeng)
□激光剑(Fazhang)
□航空母舰(Motor)
□绣花小鞋(Shoes)
□轻纱长裙(Skirt)

※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: 202.118.250.101]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:1.964毫秒