首页 » Linux » CentOS » Samba主配置文件/etc/samba/smb.conf介绍

Samba主配置文件/etc/samba/smb.conf介绍

 

Samba是用来实现SMB(Server Message Block服务信息块)的一种软件,它是由澳大利亚国立大学计算机科学实验室的研究生Andrew Tridgell开发的。

SMB的工作原理是让NetBIOS与SMB这两种协议运行在TCP/IP的通信协议上,使用NetBIOS name server让用户的Linux机器可以在Windows的网络邻居里被看到,所以就可以和windows主机在网络上相互沟通,共享文件与服务了。

监听端口:137/udp,138/udp,139/tcp,445/tcp。

下面开始samba主配置文件介绍:/etc/samba/smb.conf

samba:跨平台访问文件系统

smb.conf分成两类配置段:

全局配置

#================ Global Settings ================

[global]

# ----------- Network-Related Options ----------

网络相关配置

workgroup = MYGROUP 工作组,用来设定服务器所要加入的工作组或者域。

server string = Samba Server Version %v 服务器简单介绍字符串,%v显示samba版本号(鼠标悬停时候的提示)。

interfaces = lo eth0 192.168.12.2/24 192.168.13.2/24 服务器所监听的网卡名、IP地址。

hosts allow = 127. 192.168.12. 192.168.13. 访问控制白名单,可以用一个IP表示,也可以用一个网段表示,多个参数以空格隔开。

# ---------- Logging Options ----------

日志相关配置

log file = /var/log/samba/log.%m 设置服务器日志文件的存储位置以及存储日志文件名称,%m(宏)表示主机名,表示对每台访问服务器的机器都单独记录一个日志文件。如果whsir访问过服务器,则就会在/var/log/samba目录下生成一个名为log.whsir的日志文件。

max log size = 50 设置服务器日志文件的最大存储量,默认50,表示最大存储50KB,0表示不限制。

# ---------- Standalone Server Options ----------

独立运行服务器

security = user 定义安全级别

一共由四种级别:

share:匿名共享,用户访问服务器不需要提供用户名和口令。

user:使用samba服务自我管理的帐号和密码进行用户认证,用户必须是本系统用户,但密码非/etc/shadow中的密码,而由samba自行管理的文件,其密码文件的格式由passdb bachend进行定义。

server:由第三方服务进行统一认证。

domain:使用主域控制器进行认证,基于kerberos协议进行。

passdb backend = tdbsam tdbsam使用一个数据库文件来建立用户数据库。可以使用smbpasswd命令建立samba用户,不过要建立的samba用户必须先是系统用户。我们也可以使用pdbedit命令来直接建立Samba账户。

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

域成员选项,此项几乎用不到,略过即可。

# ---------- Domain Controller Options ----------

浏览器控制选项

#---------- Name Resolution ----------

名称解析服务

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

打印相关选项

load printers = yes 是否加载打印机

#---------- File System Options ----------

文件系统相关选项

共享文件系统配置

#============= Share Definitions ===============

共享名字有三类

[homes]:为每个samba用户定义其是否能够通过samba服务访问自己的家目录

[printers]:定义打印服务

[shared_fs]:定义共享的文件系统

常用的指令:

comment = 共享的注释信息(描述)

browseable = 是否可浏览,指是否可被用户查看

writable = 该共享路径是否可写

write list = 拥有写权限的用户列表(和writable不能同时使用)

用户名
@组名
+组名

path = 当前共享所映射的文件系统路径

guest ok = 是否允许来宾帐号访问

public = 是否公开所有用户

补充:

可用的宏列表(能用字符串替换的位置都可以使用这些宏):

%m:客户端主机的NetBIOS名称;

%M:客户端的Internet主机名,即HOSTNAME;

%H:当前用户的家目录;

%U:当前用户的用户名;

%g:当前用户所属的组名;

%h:当前samba主机的HOSTNAME;

%I:客户端主机IP;

%T:当前的日期时间;

 

原文链接:Samba主配置文件/etc/samba/smb.conf介绍,转载请注明来源!

5