PDC(Primary Domain Controller)
实验环境:RHEL6.0
PDC应用于SAMBA的主控模式,管理整个局域网里面的各个主机的账号与密码信息。适合大型企业!
1.设置NetBIOS与IP对应的数据:设置lmhosts与/etc/hosts
#vim /etc/samba/lmhosts
***************************************************************************************************
添加:
192.168.0.1 samba_server #Linux的NetBIOS Name
192.168.0.2 samba_client #Linux的NetBIOS Name
192.168.0.8 JJF1 #Windows XP pro. 的主机名
192.168.0.10 JJW #Windows XP pro. 的主机名
***************************************************************************************************
#vim vim /etc/hosts
***************************************************************************************************
添加:
192.168.0.1 Server1.example.com samba_server
192.168.0.2 Server2.example.com samba_client
192.168.0.8 JJF1
192.168.0.10 JJW
***************************************************************************************************
2.PDC主设置:处理smb.conf
#vim /etc/samba/smb.conf
***************************************************************************************************
[global]
workgroup = workgroup
netbios name = samba_server
server string = This is 192.168.0.1
unix charset = utf8
display charset = utf8
dos charset = cp936
log file = /var/log/samba/log.%m
max log size = 50
security = user
passdb backend = tdbsam
load printers = yes
cups options = raw
printcap name = cups
printing = cups
unix password sync = yes #让SAMBA与Linux密码同步
passwd program = /usr/bin/passwd %u #以root呼叫修改密码的命令
pam password change = yes #支持pam模块
#与PDC有关的一些设置值
#下面几个设置值处理成为本局域网内的主要名称解析器
preferred master = yes
domain master = yes
local master = yes
wins support = yes
#操作系统等级越高才能成为主网络的控制者,一般NT为32
#Windows 2000为64,所以这里我们设置高一点,但请不要超过255
os level = 100
#下面设置能否利用PDC登录,且登录需要进行哪些操作
domain logons = yes
logon drive = K: #登录后用户主目录挂载成Windows的哪一分区
logon script = startup.bat #每个用户登录后会自动执行的程序
time server = yes #自动调整Windows时间与SAMBA同步
admin users = root #PDC默认的管理员帐号、root
logon path = \\%N\%U\profile #用户的个人化环境设置(%N代表PDC服务器的位置,%U代表用户的Linux用户主目录)
logon home = \\%N\%U #用户主目录位置
#这个在指定登录用户能够进行的工作,里面主要是具有许多执行程序
[netlogon] #指定利用网络登录时首先去查询的目录资源。与前面的logon script有关,该程序放置在这里
comment = Network Logon Service
path = /winhome/netlogon #须手动建立此目录
writable = no
write list = root
follow symlinks = yes
guest ok = yes
[homes]
comment = Home Directories
browseable = no
writable = yes
create mode = 0664
directory mode = 0775
[project]
comment = smbuser's project
path = /home/project
browseable = yes
writable = yes
write list = @user
*******************************************************************************************************
3.建立Windows客户端登录时所需的设置数据netlogon目录
#mkdir -p /winhome/netlogon
#vim /winhome/netlogon/startup.bat
*******************************************************************************************************
net time \\samba_server /set /yes
net use K: /home
#这个文件的格式为:net use [device:] [directory]
*******************************************************************************************************
#yum install unix2dos -y
#unix2dos /winhome/netlogon/startup.bat #将.bat文件转化成DOS的断行格式
#cat -A /winhome/netlogon/startup.bat #查看转换后的文件断行格式,多了“^M”
4.建立Windows专用的用户
#mkdir /etc/skel/profile
(利用/etc/skel这个样本目录,当系统内增加新用户时,该目录下的所有文件都将被自动复制到该用户的主目录下默认)
#useradd -d /winhome/dmtsai dmtsai
#useradd -d /winhome/nikky nikky
#smbpasswd -a root (自动创建帐号并修改密码)
#smbpasswd -a dmtsai
#smbpasswd -a nikky
#pdbedit -L (查看smb用户)
5.建立机器码帐号
主机帐号则在该帐号最后加上一个"$"即可;
使用smbpasswd增加的用户必须要在/etc/passwd当中;
#useradd -M -s /sbin/nologin -d /dev/null JJF1$ (-M表示不建立使用者目录)
#useradd -M -s /sbin/nologin -d /dev/null JJW$
#smbpasswd -a -m JJF1$ (-m代表主机账户)
#smbpasswd -a -m JJW$
6.修改SELinux安全性相关数据
#chcon -R -t samba_share_t /winhome
客户端配置:
Linux系统挂载SAMBA文件没有改变
#mount -t cifs //192.168.0.1/nikky /mnt -o username=nikky,password=1234,codepage=cp936 (cp936是简体中文,cp950是繁体中文)
Windows XP pro.客户端的配置: 【仅适用于windows2000和Windows XP pro.】
1.右击“我的电脑”——>属性——>计算机名——>确认主机名与工作组都正确
2.右击“我的电脑”——>属性——>计算机名——>网络ID——>下一步——>本机是商业网络的一部分...——>下一步——>公司使用带有域的网络——>下一步——>填写SAMBA主机上面的管理员账户及密码和SAMBA工作组(root、westos、WORKGROUP)——>下一步——>填入此计算机的NetBIOS和等待加入的Samba域(JJF1、WORKGROUP)——>输入管理员的帐号密码和域(root、westos、WORKGROUP)——>目前不添加用户——>完成
3.重启XP系统
4.进入登录界面,按提示对话框,按Ctrl-Alt-Delete组合键进入登录对话框
5.“选项”——>用户名(root、或nikky或dmtsai)——>输入对应密码——>登录到(选择SAMBA的域)——>确定
6.K盘即为Linux中/winhome下对应的用户目录
注:
1,至于权限的管理,也可以采用ACL的方法进行控制
2,如果发生错误“使用的账户是计算机账户。请使用你的通用账户或本机用户账户来访问这台服务器”时,一般做如下处理:
1>查看/var/log/samba里面的日志文件信息,尤其是log.jjf1关于这台主机的信息;
2>如果还是无法解决,可以在lmhosts里面增加jjf1的IP与主机名的对应,然后将SAMBA整个关掉:/etc/init.d/smb stop,等待一段时间让NetBIOS的名称解析时间超时,再重新启动SAMBA:/etc/init.d/smb start,然后再重新做一次root密码的输入操作即可。