samba服务器配置

来源:互联网 发布:python中文 编辑:程序博客网 时间:2024/04/29 03:23
Samba主要用于windows和linux之间的通信
Samba服务器配置命令解释:
workgroup = MYGROUP 设置Samba服务所在工作组或域的名称,默认为MYGROUP。这个工作组只要和要连接的windows的工作组名称保持一致,MAC平台的工作组名称:位置在系统设置->网络->高级->WINS

server string = Samba Server Version %v 
设置Samba服务器的描述信息,默认为Samba Server Version %v。可以使用Samba设定的变量。

netbios name = Samba Server 
设置Samba服务器NetBIOS名称,默认使用该服务器的DNS名称的第一部分。

security = user
介绍说明:设置用户访问Samba Server验证方式共有 4种验证方式
1. share:用户访问Samba Server不需要提供用户名和口令, 安全性能较低
2. user:Samba Server共享目录只能被授权用户访问,由Samba Server负责检查账号和密码正确性账号和密码
要在本Samba Server中建立
3. server:依靠其他Windows NT/2000或Samba Server来验证用户账号和密码,是种代理验证此种安全模式下
,系统管理员可以把所有Windows用户和口令集中到个NT系统上,使用Windows NT进行Samba认证, 远程服务
器可以自动认证全部用户和口令,如果认证失败,Samba将使用用户级安全模式作为替代方式
4. do:域安全级别,使用主域控制器(PDC)来完成认证

passdb backend = tdbsam
介绍说明:passdb backend就是用户后台意思目前有 3种后台:smbpasswd、tdbsam和ldapsam应该是
security account manager(安全账户管理)简写
1.smbpasswd:该方式是使用smb自己工具smbpasswd来给系统用户(真实
用户或者虚拟用户)设置个Samba密码客户端就用这个密码来访问Samba资源smbpasswd文件默认在
/etc/samba目录下不过有时候要手工建立该文件
2.tdbsam:该方式则是使用个数据库文件来建立用户数据库数据库文件叫passdb.tdb默认在/etc/samba目录下
passdb.tdb用户数据库可以使用smbpasswd –a来建立Samba用户不过要建立Samba用户必须先是系统用户
我们也可以使用pdbedit命令来建立Samba账户pdbedit命令参数很多我们列出几个主要
pdbedit –a username:新建Samba账户
pdbedit –x username:删除Samba账户
pdbedit –L:列出Samba用户列表读取passdb.tdb数据库文件
pdbedit –Lv:列出Samba用户列表详细信息
pdbedit –c “[D]” –u username:暂停该Samba用户账号
pdbedit –c “” –u username:恢复该Samba用户账号
3.ldapsam:该方式则是基于LDAP账户管理方式来验证用户首先要建立LDAP服务然后设置“passed backend =  ldapsam:ldap://LDAP Server”

encrypt passwords = yes/no
介绍说明:是否将认证密码加密现在windows操作系统都是使用加密密码所以般要开启此项不过配置文件默认已
开启

smb passwd file = /etc/samba/smbpasswd
介绍说明:用来定义samba用户密码文件smbpasswd文件如果没有那就要手工新建

username map = /etc/samba/smbusers
介绍说明:用来定义用户名映射比如可以将root换成administrator、admin等不过要事先在smbusers文件中定
义好比如:root = administrator admin这样就可以用administrator或admin这两个用户来代替root登陆
Samba Server更贴近windows用户习惯

options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
介绍说明:用来设置服务器和客户端的间会话Socket选项可以优化传输速度

do master = yes/no 
介绍说明:设置Samba服务器是否要成为网域主浏览器网域主浏览器可以管理跨子网域浏览服务 

local master = yes/no 
介绍说明:local master用来指定Samba Server是否试图成为本地网域主浏览器如果设为no则永远不会成为本
地网域主浏览器但是即使设置为yes也不等于该Samba Server就能成为主浏览器还需要参加选举 

preferred master = yes/no 
介绍说明:设置Samba Server开机就强迫进行主浏览器选举可以提高Samba Server成为本地网域主浏览器机会
如果该参数指定为yes时最好把do master也指定为yes使用该参数时要注意:如果在本Samba Server所在子网
有其他机器(不论是windows NT还是其他Samba Server)也指定为首要主浏览器时那么这些机器将会争夺主浏
览器而在网络上大发广播影响网络性能 
如果同个区域内有多台Samba Server将上面 3个参数设定在台即可 

os level = 200 
介绍说明:设置samba服务器os level该参数决定Samba Server是否有机会成为本地网域主浏览器os level从0到
255winNTos level是32win95/98os level是1Windows 2000os level是64如果设置为0则意味着SambaServer将失去浏览选择如果想让Samba Server成为PDC那么将它os level值设大些 

do logons = yes/no 
介绍说明:设置Samba Server是否要做为本地域控制器主域控制器和备份域控制器都需要开启此项 

logon script = %u.bat 
介绍说明:当使用者用windows客户端登陆那么Samba将提供个登陆档如果设置成%u.bat那么就要为每个用户
提供个登陆档如果人比较多那就比较麻烦可以设置成个具体文件名比如start.bat那么用户登陆后都会去执行
start.bat而不用为每个用户设定个登陆档了这个文件要放置在[netlogon]path设置目录路径下 

wins support = yes/no 

介绍说明:设置samba服务器是否提供wins服务 

wins server = wins服务器IP地址 
介绍说明:设置Samba Server是否使用别wins服务器提供wins服务 

wins proxy = yes/no 
介绍说明:设置Samba Server是否开启wins代理服务 

dns proxy = yes/no 
介绍说明:设置Samba Server是否开启dns代理服务 

load prers = yes/no 
介绍说明:设置是否在启动Samba时就共享打印机 

prcap name = cups 
介绍说明:设置共享打印机配置文件

Share Definitions 
[共享名] 

comment = 任意串 
介绍说明:comment是对该共享描述可以是任意串 

path = 共享目录路径 
介绍说明:path用来指定共享目录路径可以用%u、%m这样宏来代替路径里unix用户和客户机Netbios名用宏表
示主要用于[homes]共享域例如:如果我们不打算用home段做为客户共享而是在/home/share/下为每个
Linux用户以他用户名建个目录作为他共享目录这样path就可以写成:path = /home/share/%u; 用户在连接到
这共享时具体路径会被他用户名代替要注意这个用户名路径定要存在否则客户机在访问时会找不到网络路径同
样如果我们不是以用户来划分目录而是以客户机来划分目录为网络上每台可以访问samba机器都各自建个以它
netbios名路径作为区别机器共享资源就可以这样写:path = /home/share/%m 

browseable = yes/no 

介绍说明:browseable用来指定该共享是否可以浏览 

writable = yes/no 
介绍说明:writable用来指定该共享路径是否可写 

available = yes/no 
介绍说明:available用来指定该共享资源是否可用 

admin users = 该共享管理者 
介绍说明:admin users用来指定该共享管理员(对该共享具有完全控制权限)在samba 3.0中如果用户验证方式设
置成“security=share”时此项无效 
例如:admin users =bobyuanjane(多个用户中间用逗号隔开) 

valid users = 允许访问该共享用户 
介绍说明:valid users用来指定允许访问该共享资源用户 
例如:valid users = bobyuan@bob@tech(多个用户或者组中间用逗号隔开如果要加入个组就用“@ 组名
”表示) 

invalid users = 禁止访问该共享用户 
介绍说明:invalid users用来指定不允许访问该共享资源用户 
例如:invalid users = root @bob(多个用户或者组中间用空格隔开) 

public = yes/no 
介绍说明:public用来指定该共享是否允许guest账户访问 

guest ok = yes/no 
介绍说明:意义同“public” 

几个特殊共享: 
[homes] 
comment = Home Directories 
browseable = no 
writable = yes 
valid users = %S 
; valid users = MYDOMAIN\%S 

[prers] 
comment = All Prers 
path = /var/spool/samba 
browseable = no 
guest ok = no 
writable = no 
prable = yes 

[netlogon] 
comment = Network Logon Service 
path = /var/lib/samba/netlogon 

guest ok = yes 
writable = no 
share modes = no 

[Profiles] 
path = /var/lib/samba/profiles 
browseable = no 
guest ok = yes

添加Samba服务器用户:

添加的Samba用户首先必须是Linux用户!
smbpasswd命令的常用方法

smbpasswd -a 增加用户(要增加的用户必须以是系统用户)
smbpasswd -d 冻结用户,就是这个用户不能在登录了
smbpasswd -e 恢复用户,解冻用户,让冻结的用户可以在使用
smbpasswd -n 把用户的密码设置成空.
             要在global中写入 null passwords -true
smbpasswd -x  删除用户

参考链接:
http://blog.csdn.net/lan120576664/article/details/50396511
http://www.linuxidc.com/Linux/2012-02/54422p2.htm
http://www.cnblogs.com/liulipeng/p/3406352.html
0 0