精品samba配置文件解释.docx
《精品samba配置文件解释.docx》由会员分享,可在线阅读,更多相关《精品samba配置文件解释.docx(16页珍藏版)》请在冰豆网上搜索。
精品samba配置文件解释
【关键字】精品
四、配置文件的结构
1、主配置文件smb.conf。
在配置参数有以下几个共性。
(1)参数配置基本采用“参数” = “值”的方式,如果参数有多个值时,多个参数之间用空格分隔。
(2)当使用用户和组作为参数时,值为组时需在组名前加@字符。
(3)以“;”或“#”开始的是注释行。
(4)方括号标识表示为标志,比如[global]为全局配置标识。
(5)一般当全局配置与某个共享资源配置发生冲突时,共享资源配置优先。
(6)关键字对大小写不敏感。
配置文件/usr/local/samba/etc/smb.conf或/etc/samba/smb.conf内容结构
====================GlobalSettings====================
#以[global]开始,该部分主要涉及Samba服务的全局配置。
[global]
-----------NetworkRelatedOptions----------
workgroup =MYGROUP 设置Samba服务所在工作组或域的名称,默认为MYGROUP。
serverstring =SambaServerVersion%v 设置Samba服务器的描述信息,默认为SambaServerVersion%v。
可以使用Samba设定的变量。
netbios name = SambaServer 设置Samba服务器NetBIOS名称,默认使用该服务器的DNS名称的第一部分。
interfaces =loeth0 设置服务器监听本地网络接口(网卡),使用该参数时,推荐保留lo(本地回环地址),参数设置:
网络接口名(eth0/1);IP地址。
hostsallow =127.except 允许连接到Samba服务器的客户端;对应是hostsdeny参数。
usesendfile = no 当设置为yes时,将直接由 kernel 读取数据后发给客户端,大大提高效率;默认no。
getwdcache =yes 是否启用cache功能。
默认yes。
maxconnectons = 0 允许连接到服务器的最大连接数,0表示无限制
maxopenfiles =16404 同一个客户端最多能打开的文件数目。
deadtime =0 设置断开一个没有打开任何文件的链接的时间,单位是分钟,0表示无限制
keepalive =60 服务器每隔多少秒向客户端发送keepalive包用于确认客户端是否工作正常。
timeserver =yes/no 设置让nmbd成为windows客户端的时间服务器
guest account =nobody
fstype =SambaFileSystem 定义Windows客户端显示的文件系统。
usernamemap = 定义用户映射关系的文件
configfile = 使用另外的配置文件来覆盖缺省的配置文件
说明:
hostallow =value设置
Example1:
allowallIPsin150.203.*.*;exceptone
hostsallow=150.203.EXCEPT
Example2:
allowhoststhatmatchthegivennetwork/netmask
hostsallow=
Example3:
allowacoupleofhosts
hostsallow=lapland,arvidsjaur
Example4:
allowonlyhostsinNISnetgroup"foonet",butdenyaccessfromoneparticularhost
hostsallow=@foonet
hostsdeny=pirate
Samba设定的变量:
变量名
作 用
变量名
作 用
%S
当前服务名(如果存在)
%L
Samba服务器的NetBIOS名
%P
当前服务的根目录(如果存在)
%N
NIS服务器主机名
%u
当前服务的用户名(如果存在)
%p
NIS服务器家目录
%g
当前用户的初始组
%R
采用协议等级
%U
当前连接的用户名
%d
Samba服务的进程ID
%G
当前连接用户的初始组
%a
访问Samba服务器的客户端系统
%D
当前用户所属域或工作组名称
%I
访问Samba服务器的客户端IP地址
%H
当前服务用户的家目录
%M
访问Samba服务器的客户端主机名
%v
Samba服务器的版本
%m
访问Samba服务器的客户端NetBIOS名
%h
Samba服务器的主机名
%T
Samba服务器日期及时间
-----------LoggingOptions----------
loglevel =8 设置日志记录等级。
值越大越详细。
参数设置:
0~10。
logfile =/var/log/samba/log.%m 定义Samba日志文件的位置及名称。
默认为每一个与服务器连接的客户端定义一个单独的日志文件。
maxlogsize =50 设置最大的日志文件大小,单位为KB。
-----------StandaloneServerOptions----------
#使用独立服务器作为Samba服务器认证用户来源,也就是当访问Samba服务器时输入的用户名和密码的验证工作由Samba服务器本机系统内账户完成。
security =user 设置安全级别,即客户端访问Samba服务器的验证方式。
此部分中只能设置以下三种参数,参数设置:
share(不推荐)、user、server(不推荐)。
passdbbackend =tdbsam 参数设置:
smbpasswd、tdbsam、ldapsam、mysql。
默认为tdbsam,一般不用修改,除非想使用老版本Samba服务器的smbpasswd文件方式或其它方式。
encryptpasswords =yes/no 认证密码在传输过程中是否加密。
参数说明:
security =share/user/server/domain/ads
以下三种安全级别用在StandaloneServerOptions部分,其中user级别也用于DomainControllerOptions部分。
(1)share:
访问Samba服务器共享资源时不需要输入用户名和密码,属于匿名访问。
(2)user:
访问Samba服务器共享资源时需要输入用户名和密码,认证用户来源为Samba服务器本机。
(3)server:
访问Samba服务器共享资源时需要输入用户名和密码,认证用户来源为另一台Samba服务器或Windows服务器。
以下两种安全级别用在DomainMembersOptions部分:
(4)domain:
Samba服务器在一个基于Windows NT平台的Windows域中,访问共享资源需要输入用户名和密码,认证用户来源为Windows域。
(5)ads:
Samba服务器在一个基于Windows 200X平台的Windows活动目录中,访问共享资源需要输入用户名和密码,认证用户来源为Windows活动目录。
passdbbackend =tdbsam/smbpasswd/ldapsam/mysql
(1)tdbsam:
该方式使用一个数据库文件来建立用户数据库,数据库文件名为passdb.tdb。
可以使用#smbpasswd-a[用户名]来建立Samba用户。
也可以使用pdbedit命令来建立用户。
(2)smbpasswd:
该方式使用Samba提供的工具smbpasswd来给系统用户设置一个用于访问Samba服务的密码,客户端就用这个密码访问Samba共享资源。
此方式还要使用一个 smbpasswdfile=/usr/local/samba/etc/smbpasswd(或/etc/samba/smbpasswd)参数来指定保存用户名和密码的文件,该文件需要手动建立。
不推荐使用此方法。
(3)ldapsam:
该方式基于LADP的账户管理方式来验证用户,先要建立LDAP服务。
(4)mysql:
该方式是将Samba服务器的用户名和密码存储到MySQL数据库中。
pdbedit命令常用参数:
pdbedit–ausername:
新建Samba账户。
pdbedit–xusername:
删除Samba账户。
pdbedit–L:
列出Samba用户列表,读取passdb.tdb数据库文件。
pdbedit–Lv:
列出Samba用户列表的详细信息。
pdbedit–c“[D]”–uusername:
暂停该Samba用户的账号。
pdbedit–c“[]”–uusername:
恢复该Samba用户的账号。
注意:
StandaloneServerOptions、DomainMembersOptions、DomainControllerOptions三部分均与Samba的认证方式及工作角色��关,三部分均需要配置合适的security(安全级别,用于配置Samba的认证方式),此三部分为服务器的三种角色。
-----------DomainMembersOptions----------
#该部分将Samba服务器加入WindowsNT平台域或Windows2000Server/2003/2008活动目录中。
也就是当访问Samba服务器时输入的用户名和密码的验证工作由域控制器完成。
security =domain 在此部分中该参数只能设置为domain、ads。
passdbbackend =tdbsam 默认为tdbsam,不用修改。
realm =MY_REALM
passwordserver = 指定进行身份验证的域控制器IP地址或主机名。
参数说明:
-----------DomainControllerOptions----------
#该部分将Samba服务器配置为一台域控制器。
security =user 在此部分中该参数只能设置为user。
passdbbackend =tdbsam 默认为tdbsam,一般不用修改。
domainmaster =yes 让Samba成为主域控制器(PDC),在此部分中此参数必须为yes。
domainlogons =yes 允许旧的Windows客户端提交验证信息。
logonscript =%m.bat/%u.bat 当用户登录到域时执行的启动脚本,依据机器名或用户名加载脚本(相当于Windows组策略中用户开机脚本)。
logonpath =\\%L\Profiles\%u 当用户登录到域后的配置文件存放的位置,用来初始化工作环境(相当于Windows中的漫游配置文件)。
adduserscript =/usr/sbin/useradd"%u"-n-gusers 指定Windows与Linux中用户信息同步脚本,当Windows域中新建用户后指定脚本会将该用户的信息复制到Linux中。
addgroupscript =/usr/sbin/groupadd"%g" 指定Windows与Linux中组信息同步脚本,当Windows域中新建组后指定脚本会将该组信息复制到Linux中。
addmachinescript =/usr/sbin/useradd-n-c"Workstation(%u)"-M-d/nohome-s/bin/false"%u" 指定Windows与Linux中计算机信息同步脚本,当Windows域中加入新的计算机后指定脚本会将计算机信息复制到Linux中。
deleteuserscript =/usr/sbin/userdel"%u" 指定Windows与Linux中用户信息同步脚本,当Windows域中删除用户后指定脚本会将该用户信息复制到Linux中。
deleteuserfromgroupscript =/usr/sbin/userdel"%u""%g" 指定Windows与Linux中用户信息同步脚本,当Windows域中将用户从组中删除后指定脚本会将信息复制到Linux中。
deletegroupscript =/usr/sbin/groupdel"%g" 指定Windows与Linux中组信息同步脚本,当Windows域中删除组后指定脚本会将该组的信息复制到Linux中。
-----------BrowserControlOptions----------
#配置浏览服务器
localmaster =yes/no 是否允许Samba服务器作为主浏览服务器。
oslevel =33 该数字越大被选举为主浏览服务器的可能性越高。
preferredmaster =yes 当为yes时被选为主浏览服务器的可能性越高。
注:
主浏览服务器的功能主要是实现Windows中的网上邻居。
计算机浏览服务是一系分部式的含有可用的网络资源列表,这些列表分布在一些计算机上,提出浏览请求的计算机充当浏览工作站,面提供浏览列表的计算机充当浏览服务器。
该操作通过计算机从同一个子网中的主浏览服务器获得浏览列表副本完成。
浏览服务器有域主浏览服务器、主浏览服务器、备份浏览服务器、潜在浏览服务器,非浏览服务器之分。
-----------NameResolution----------
#该部分包括Samba服务器名称解析方法相关配置。
winssupport =yes 设置nmbd进程支持WINS服务器。
winsserver = 设置WINS服务器IP地址。
winsproxy =yes 设置Samba服务器是否可作为WINS代理。
dnsproxy =yes 设置Samba服务器是否在无法联系WINS服务器时通过DNS去解析主机的NetBIOS名。
namecachetimeout =660 设置Samba服务器解析主机名缓存的保存时间,单位是秒;默认660。
nameresolveorder =lmhostshostwinsbcast 设置Samba服务器名称解析的方法及顺序。
可指定一个或多个值。
参数说���:
nameresolveorder =lmhostshostwinsbcast
(1)lmhosts:
使用 /etc/samba/lmhosts文件对NetBIOS名称与IP地址对应关系进行解析,此方式用于解析NetBIOS名。
(2)host:
使用主机名方式解析IP地址,该方式可以使用NIS、DNS及/etc/hosts文件三种方法完成解析,这三种方式的使用顺序是在/etc/nsswitch.conf文件中hosts参数定义的。
(3)wins:
使用WINS服务器进行名称解析,使用此方式时winsserver参数必须指明WINS服务器的IP地址。
(4)bcast:
使用广播的方式进行名称解析。
注:
WINS代理:
是为了解决跨网段的非WINS客户端与WINS客户端的NetBIOS名称解析的问题。
-----------PrintingOptions----------
#该部分包括Samba服务器打印机相关设置。
loadprinters =yes 是否自动共享打印机,而不根据[printer]标签内的配置。
cupsoptions =raw
printcapname =/etc/printcap 设置获取打印机描述信息的文件位置。
默认为/etc/printcap。
printing =cups 定义打印机的系统类型,可选项有:
bsd、sysv、plp、lprng、aix、hpux、qnx、cups
-----------FilesystemOptions----------
#该部分包括Samba服务器如何保留从Windows客户端复制或移动到Samba服务器共享目录文件的Windows文件属性的相关配置。
maparchive =no 当Windows客户端将文件复制或移动到Samba服务器共享目录时,是否保留文件在Windows中的存档属性。
默认yes。
maphidden =no 当Windows客户端将文件复制或移动到Samba服务器共享目录时,是否保留文件在Windows中的隐藏文件属性。
默认yes。
mapreadonly =no 当Windows客户端将文件复制或移动到Samba服务器共享目录时,是否保留文件在Windows中的只读属性。
默认为yes。
mapsystem =no 当Windows客户端将文件复制或移动到Samba服务器共享目录时,是否保留文件在Windows中的系统文件属性。
默认为no。
storedosattributes =yes 当Windows客户端将文件复制或移动到Samba服务器共享目录时,是否保留文件在Windows中的相关属性(只读、系统、隐藏、存档属性)。
默认为no。
unixcharset =utf8
displaycharset =utf8
doscharset =utf8
注意:
设置与系统所使用的字符集相同。
-----------PerformanceOptions----------
#服务器性能调优
readraw =yes
writeraw =yes
aioreadsize =16384
aiowritesize =16384
writecachesize =262144
maxxmit =65536
getwdcache =yes
strictlocking =no
注:
此部分本人加入,待继续整理……
====================ShareDefinitions====================
#该部分主要涉及Samba服务器需要共享的资源。
默认已设置用户家目录(从[home]标识开始)、打印机共享(从[printers]标识开始)、登录脚本及登录域中有关用户家目录的配置,用户自定义配置信息也在此处定义。
[homes]
comment =HomeDirectories
browseable =no
writable =yes
; validusers =%S
; validusers =MYDOMAIN\%S
[printers] 共享名,即客户端访问Samba服务器时浏览到的目录名,该名称不要求与本地目录名相同,但在当前Samba服务器必须唯一。
comment =AllPrinters 共享目录的描述信息,该参数不是必须的。
path =/var/spool/samba 需要共享的本地目录路径,必须使用绝对路径。
browseable =no
guestok =no
writable =no
printable =yes
[print$] 打印机驱动
comment =Printerdrivers
path =/etc/samba/drivers
browseable =yes
readonly =yes
writelist =gongxiaoli
[cdrom] 共享光驱
commnet =thisiscdrom
path =/mnt/cdrom
root preexec =/bin/mount-tiso9660/dev/cdrom/mnt/cdrom 连接时用root用户运行mount命令。
root postexec =/bin/umount/mnt/cdrom 断开时用root用户运行umount命令。
……
在编辑Samba主配置文件时,smb.conf文件中并不要求参数缩进。
但推荐在编写时对参数进行缩进,以便以后阅读。
对用户自定义的共享资源配置内容放在smb.conf文件的末尾,也是为了便于以后阅读。
【内容导航】
▪
∙
此文档是由网络收集并进行重新排版整理.word可编辑版本!