1。安装samba,这个很简单了,如果你是fedora,就可以从光盘直接安装samba的rpm包。
rpm-ivhsamba-3.0.0-15.i386.rpm
大家也可以直接到samba的官方网站(http://www.samba.org)去下载最新的软件包
或者下载最新的tar包,http://us1.samba.org/samba/ftp/samba-3.0.0.tar.gz
那就最好按下面的方法编译
tarzvxfsamba-3.0.0.tar.gz
cdsamba-3.0.0
./configure--prefix=/usr--bindir=/usr/bin--sbindir=/usr/sbin--libexecdir=/usr/libexec--datadir=/usr/share/samba--sysconfdir=/etc/samba--localstatedir=/usr/local/samba/var--libdir=/usr/lib--with-lockdir=/var/locks/samba--with-swatdir=/usr/share/samba/swat--with-codepagedir=/etc/samba/codepages--with-configdir=/etc/samba--with-smbwrapper--with-automount--with-smbmount--with-pam--with-pam_smbpass--with-winbind
make
makeintall
ok!安装完以后,下面才是我们的重点,修改/etc/samba/smb.conf,大家最好在原来的基础上修改。
[global]
workgroup=bmit
netbiosname=proxy
serverstring=SambaPDCrunning%v
socketoptions=TCP_NODELAYIPTOS_LOWDELAYSO_SNDBUF=8192SO_RCVBUF=8192
#这里的workgroup=bmit就代表bmit域,当然如果用bmit.com那就更加规范,但为了客户端输入的方便,还是直接bmit的好,netbiosname=proxy表示这台服务器的netbios名,socketoptions选项设置控制TCP/IP性能。所显示的设置就可以与基于Linux的系统一起很好地工作了。
oslevel=64
preferredmaster=yes
localmaster=yes
domainmaster=yes
#domainmaster选项是一个“开关”,通告Samba将成为主域控制器。(localmasterbrowser)是维护局域网机器列表的服务器被称为本地主浏览器。
security=user
encryptpasswords=yes
domainlogons=yes
logfile=/var/log/samba/log.%m
loglevel=2
maxlogsize=50
hostsallow=127.0.0.1192.168.1.0/255.255.255.0
#这里我们还是使用user验证方式,不要悬在所谓的domain,至于hostsallow大家可以根据自己的需求写那些网段可以访问你的服务器,或者索性不写也行。
logonhome=\\%L\%U\.profile
logondrive=H:
logonpath=\\%L\profiles\%U
logonscript=netlogon.bat
#以上是漫游设置和登录脚本,logonpath=\\%L\profiles\%U,会于下面我们要说的[profiles]共享成对应关系。
[homes]
comment=HomeDirectories
browseable=no
writeable=yes
[profiles]
path=/home/samba/profiles
writeable=yes
browseable=no
createmask=0600
directorymask=0700
[netlogon]
comment=NetworkLogonService
path=/home/netlogon
readonly=yes
browseable=no
writelist=root
以上是关于共享的手腕子,其中profile是用来存放每个登录用户的设置文件,以便用户以后登录可以从服务器读取以前的桌面设置,netlogon是用来存放登录脚本的,所以要限制写的权限,假设这里只有root用户可以有权限。
至于其他共享,完全可以参照《Samba3.0服务器实战调试》(http://www.5ilinux.com/samba.html)这篇文章共享设置,我就不再重复讲了
接着是将用户和机器帐户添加到域控制器。
先建立创建了下列各组以及创建两个必要目录,并设置正确的所有权。
groupaddadmin
groupaddmachines
mkdir-m0775/home/netlogon
chownroot.admins/home/netlogon
mkdir/home/samba/home/samba/profiles
chown1757/home/samba/profiles
对上述目录设置正确的权限和所有权是保护服务器的关键一步哦:)
手工添加机器帐号
比如我的客户端的机器名是ibm240,那么我们可以这么做
useradd-gmachines-d/dev/null-c"machineid"-s/bin/falseibm240$
passwd-libm240$
输入两遍密码;
不要忘记标上美元符号;这是必需的,它将该项标识为信任帐户
创建linux帐户后,我们现在可以将该机器添加到/etc/samba/smbpasswd
smbpasswd-a-mibm240
当然你也可以让系统自动添加机器帐号,用下面的方法,不过大家最好先试手动添加,成功后再试验系统自动添加
自动添加只要在[global]添加
adduserscript=/usr/sbin/useradd-d/dev/null-gmachines-s/bin/false-M%u
添加用户帐号
首先添加的是root帐户,把root加入到smb帐户中
smbpasswd-croot
这一步很重要,因为后面的加入域要用到有管理员的帐号加入域的权限,否则用普通用户好像不能顺利加入域
然后添加普通用户
useraddfrank
passwdfrank
smbpasswd-afrank
为了方便以后的管理,最好smb的用户密码和unix系统密码一样,这样我们还可以用到samba的密码同步功能
#下面的选项语句将允许用户从Windows客户机上更改他们的Samba密码,这样会随即更新他们的UNIX密码以与新的Samba项相匹配。但是如果更改了UNIX密码,那么同一技术不能逆向工作;必需手工同步更改Samba密码。也是在[global],初学者可以先不做这个工作。
unixpasswordsync=yes
passwdprogram=/usr/bin/passwd%u
passwdchat=*New*UNIX*password*%n\n*Retype*new*UNIX*password*%n\n*Enter*new*UNIX*password*%n\n*Retype*new*UNIX*password*%n\n*passwd:*all*authentication*tokens*updated*successfully*
#上述语句中唯一值得一提的是passwdchat选项,不管这里如何显示它,都要将它输入成一行。还要注意有些选项使用“password”,而有些使用“passwd”。
SambaPDC的配置就这样完成了。剩下唯一要做的是将客户机加入到域中。记得重启samba服务哦!
客户端的设置,这里由于条件的限制,我只试验了windows2000客户端加入域,至于winxp和win98的加入大家自己去试验。
(win200机器最好先重启一下,可以避免一些不必要的问题)然后转至控制面板->网络->网络标示,如果机器目前被配置在工作组选项下,那么选中域单选按钮并输入域名bmit。
现在,通过使用用户名root和相应的密码登录到域。必需初始化服务器和客户机机器之间的“秘密”。从此时起,任何已认证的用户都可以从这台机器登录。
应该出现一个欢迎您来到XX域的消息
恭喜你已经成功将samba配置成PDC
据说xp加入samba建立的域有点复杂,我没试验过,大家有兴趣的话,最好去samba的老家看看文档,好像是要设置安全选项,并修改注册表,好麻烦哦,幸亏我没有xp:)