Linux的samba服务器在Windows 2003域环境中的配置

更新时间:2023-10-08 06:36:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

Linux的samba服务器在Windows 2003域环境中的配置

工作需求,需要samba服务器使用Active Directory来进行身份认证。折腾了一段时间,终于配置起来了。

Windows 2003域环境的搭建不多说了,网上很多教程,而且都是点鼠标的操作,没啥技术含量,着重讨论Linux的Samba服务器支持域认证的配置过程。

Win 2003 Server作为域控制器,客户端提交的认证请求和授权的过程是通过Kerberos5协议来完成的,所以要让Linux的samba服务器支持域认证,首先需要将Kerberos配置好。看我的配置文件 [logging]

default = FILE:/var/log/krb5libs.log kdc = FILE:/var/log/krb5kdc.log

admin_server = FILE:/var/log/kadmind.log [libdefaults]

default_realm = MNKW.COM #指定域 dns_lookup_realm = false dns_lookup_kdc = true ticket_lifetime = 24h forwardable = yes [realms] MNKW.COM = {

kdc = 192.168.6.37:88 #设置密钥分发中心的接口,即域控制器的IP admin_server = 192.168.6.37:749 default_domain = MNKW.COM }

[domain_realm]

.mnkw.com = MNKW.COM #指定域

- 1 -

mnkw.com = MNKW.COM #指定域

[appdefaults] pam = { debug = false

ticket_lifetime = 36000 renew_lifetime = 36000 forwardable = true krb4_convert = false }

在配置好以上之后,需要执行kinit来验证和初始化kerberos协议是否可以正常运行。 遇到的一些问题: 一、

[root@Gh0st CentOS]# kinit test111@mnkw.com

kinit(v5): Cannot find KDC for requested realm while getting initial credentials 原因:客户端主DNS未指向域控制器 解决:

编辑文件/etc/resolv.conf,将nameserver的值修改成域控制器的IP地址。 二、

[root@Gh0st CentOS]# kinit test111@mnkw.com Password for test111@mnkw.com:

kinit(v5): Clock skew too great while getting initial credentials 原因:

客户端与认证服务器的时间差距太大,将客户端与认证服务器的时间同步即可 解决:

- 2 -

安装ntp软件,执行ntpdate –b 192.168.6.37(域控制器的IP),时间被同步 [root@Gh0st CentOS]# ntpdate -b 192.168.6.37

17 Sep 12:32:05 ntpdate[10302]: step time server 192.168.6.37 offset 2537.194742 sec 三、

[root@Gh0st CentOS]# kinit test111@mnkw.com Password for test111@mnkw.com:

kinit(v5): KDC reply did not match expectations while getting initial credentials 解决:使用大写的域名

[root@Gh0st CentOS]# kinit administrator@MNKW.COM Password for administrator@MNKW.COM: [root@Gh0st CentOS]#

至此,kerberos的协议已经配置完成。

下面,需要将samba服务器加入域,看配置过程: 首先配置/etc/nsswitch,使之作为winbind组建运行。 passwd: files winbind shadow: files group: files winbind

编辑samba服务的配置文件/etc/samba/smb.conf [global]

workgroup = MNKW #指定工作组名

server string = Samba Server Version %v # Insert Start --snowkey display charset = gb2312 dos charset = gb2312 unix charset = gb2312

- 3 -

# Insert End --snowkey

# logs split per machine log file = /var/log/samba/%m.log # max 50KB per log file, then rotate max log size = 50

# ----------------------- Domain Members Options ------------------------ #

# Security must be set to domain or ads #

security = domain #设置安全等级,只能为domain或者ads

realm = MNKW.COM #认证服务器域名,所有认证信息都将由该服务器来提供。 password server = 192.168.6.37 #密码服务器地址,用于存放身份信息 encrypt passwords = yes

# ----------------------- Browser Control Options ---------------------------- os level = 20

#----------------------------- Name Resolution ------------------------------- # DNS Proxy - tells Samba whether or not to try to resolve NetBIOS names # via DNS nslookups. dns proxy = no

# --------------------------- Printing Options ----------------------------- #

# Load Printers let you load automatically the list of printers rather # than setting them up individually #

- 4 -

load printers = yes cups options = raw

# ----------------- winbind drinkey added----------------#

netbios name = KWSystem-S #设置NetBIOS名称,注意不能重名,其他都可使用如下值 idmap uid = 15000-20000 idmap gid = 15000-20000 winbind enum groups = yes winbind enum users = yes winbind separator = /

template homedir = /data1/file/smbs/%U template shell = /bin/bash

#============= Share Definition================ [homes]

comment = Home Directories

path= /data1/%U #通过身份认证的用户的家目录 browseable = no #是否能够浏览其他用户的共享 writable = yes #是否可写 valid users = %D/%U #允许的用户 create mode = 0777 directory mode = 0777

root preexec = /shell/mkhome.sh %U %G #登录成功后,执行该脚本,用于给第一次登录成功的用户创建家目录。

打印机配置,可以不用管,不需要的话可以删掉 或者注释掉。 [printers]

comment = All Printers

- 5 -

本文来源:https://www.bwwdw.com/article/aaud.html

Top