Samba的基本配置

http://blog.csdn.net/xiaoxxcool/article/details/3017569
分类: LINUX 2008-10-0514:37  119人阅读  评论(0)  收藏  举报
1.Samba简介:
Samba主要用做Linux/UNIX系统向Windows客户提供共享服务,它可以做到当Windows访问Linux的文件或打印机的时候,可以像访问其他Windos一样直接用//ip地址 或者 //计算机名 的方式来访问。
所以我建议一般的文件服务器都可以使用Linux来做,既稳定,又快速,而且不怕中毒,因为文件服务器有很多客户机往文件服务器上交换文件,现在Windows上的病毒数不胜数,稍微一台机器中毒,极有可能造成服务器感染病毒,这样文件一来往,就会造成整个局域网都中毒了。我以前就碰到过因为文件服务器造成威金病毒泛滥的事情。

Samba服务器不但可以进行文件,设备(打印机,光驱资料…)的共享,而且还可以根据登陆的身份,来提供不同权限的共享资料。并且可以根据用户,显示不同的共享目录,这点好像Windowsserver做不到呢。
当然了,我这里并不是使用Samba做文件服务器,只是想让我的Linux与公司其他机器实现简单的文件共享交换。

现在我们可以用 rpm -qa | grep samba命令来看看服务器有没有安装samba组件,一般安装Linux的时候,最好能够安装上常用的服务,如果没有安装,可以去 http://www.samba.org下载安装。现在最新版好像是samba-3.0.28。RHEL 5.0自带的是samba-3.0.23c-2。
另外,你的Linux的核心要支持smbfs,一般各种发布已经把smbfs的支持包含进去,如果没有包含的话,就要重新编译核心,获得smbfs支持,编译的方法以后会学习到。(*^__^*) 

2.Samba配置:
samba是一个服务套件,安装之后会有一些命令和配置文件,下面我把常用的列出来。

samba会用到的一些命令:
service smb start | restart |stop:这个是系统自带的samba的启动|重启|停止的命令。
smbpasswd:这个是samba用户管理命令。这个命令是把Linux已经存在的用户加入到samba用户里面,来实行权限分配。一定要在系统里存在,已经列在了/etc/passwd里面,否则需要事先用useradd来建立。samba不像vsftp等服务,是直接调用系统的用户。
smbpasswd有很多参数,我们可以用 smbpasswd--?来查看所有参数说明。
程序代码 程序代码
这几个samba用户管理参数主要是root用户才能使用的:
-aUSER    加入用户,输入此命令后,会要求你输入2次密码,以后此用户就一此密码登录samba服务器
-x    删除用户
-n    删除用户密码,这样这个用户以后登录就只需要输入用户名。
-d    禁用用户
-e    启用用户

testparm:每次配置完smb.conf之后,用此命令可以检查一下,有没有配置错误。
smbclient:此命令就是连接smb/cifs服务器的客户端命令。也有很多参数,具体看另外一篇文章。

Samba的几个配置文件:
/etc/samba/smb.conf  这个是samba的主要配置文件。一般的设置都在这里面了。
/etc/samba/smbpasswd      这个是存储samba用户密码的文档,smbpasswd命令的操作体现在这个文档中
/etc/samba/lmhosts      这个是LAN内netBIOSname与计算机对应的文档,有点跟/etc/hosts,但是现在好像不需要配置了,所以也没什么用了。


我们配置samba服务器只要是配置/etc/samba/smb.conf就了以了。
smb.conf文件的共享项目用[name]来开头。

第一个 [global]是必须选项,这个不是共享项目,是全局配置:
程序代码 程序代码
我写的都是默认的文档,如果前面加了;号,别是注释掉了。如果你想配置该项,把前面的;号去掉就可以了。

workgroup =mygroup  #这个是windows下看到此samba服务器的工作组
server string = sambaserver  #这个是在用windos打开samba服务器的时候,标题栏显示的标题。
security =user  #认证等级。
share---不需要提供用户名和密码
user----需要提供用户名和密码,而且身份验证由 sambaserver 负责
server--需要提供用户名和密码,可指定其他机器(winNT/2000/XP)或另一台samba server作身份验证
domain--需要提供用户名和密码,指定winNT/2000/XP域服务器作身份验证
;  hosts allow = 192.168.1. 192.168.2.127.     #表示允许访问的IP或者网段。默认前面加了;号,就是注释掉了,表示允许任何计算机。
load printers =yes  #开机的时候就自动共享打印机。
;  printcap name =/etc/printcap    #打印机配置文件地址
;  printing =cups    #打印机类型
cups options = raw
;  guest account =pcguest    #表示来宾帐户名称,既匿名时候的用户权限
log file =/var/log/samba/%m.log    #日志文件地址
max log size =50    #日志文件最大容量,单位为KB。如果是0,表示不做限制。
;   password server =<NT-Server-Name>    #指定ip或计算机名,以此台计算机的用户密码为认证服务器。

…………
…………
……下面还有N多参数,不一一列出,自己去看看。


之后就是共享项目了,格式为:
程序代码 程序代码
[共享项目]
指令1 = 参数
指令2 = 参数
指令3 = 参数


比如:
[share]
conmengt = This is a test share
path = /root/test
public = yes
browseable = yes
writable = no
这样就在Linux共享了一个名为“share”的目录了。

下面列出所有共享的指令:
程序代码 程序代码
comment---------注释说明
path------------分享资源的完整路径名称,除了路径要正确外,目录的权限也要设对
browseable------是yes/否no在浏览资源中显示共享目录,若为否则必须指定共享路径才能存取
printable-------是yes/否no允许打印
hide dot ftles--是yes/否no隐藏隐藏文件
public----------是yes/否no公开共享,若为否则进行身份验证(只有当security= share 时此项才起作用)
guestok--------是yes/否no公开共享,若为否则进行身份验证(只有当security= share 时此项才起作用)
readonly-------是yes/否no以只读方式共享当与writable发生冲突时也writable为准
writable--------是yes/否no不以只读方式共享当与readonly发生冲突时,无视read only
validusers-----设定只有此名单内的用户才能访问共享资源(拒绝优先)(用户名/@组名)
invalidusers---设定只有此名单内的用户不能访问共享资源(拒绝优先)(用户名/@组名)
readlist-------设定此名单内的成员为只读(用户名/@组名)
writelist------若设定为只读时,则只有此设定的名单内的成员才可作写入动作(用户名/@组名)
veto files = /*.exe/*.com/------限制共享的文件类型(此处限制exe和com这2种文件),支持通配符*和?,每个类型以斜线(/)区分开。
create mask-----建立文件时所给的权限
directory mask--建立目录时所给的权限
forcegroup-----指定存取资源时须以此设定的群组使用者进入才能存取(用户名/@组名)
forceuser------指定存取资源时须以此设定的使用者进入才能存取(用户名/@组名)
allowhosts-----设定只有此网段/IP的用户才能访问共享资源
allwo hosts = 网段 except IP
denyhosts------设定只有此网段/IP的用户不能访问共享资源
allow hosts=本网段指定IP指定IP
deny hosts=指定IP本网段指定IP


3.配置实例:
这个是我配置samba的实例,摘录如下:

[root@sounix01 ~]# rpm -qa | grep samba
samba-3.0.23c-2
samba-common-3.0.23c-2
system-config-samba-1.2.39-1.el5
samba-client-3.0.23c-2
[root@sounix01 ~]# service smb start
启动 SMB服务:                                            [确定]
启动 NMB服务:                                            [确定]
[root@sounix01 ~]# smbpasswd -a zmt
New SMB password:
Retype new SMB password:
Added user zmt.
[root@sounix01 ~]# ls -l / |grep data1
drwxrwxr-x   14zmt  zmt   4096 01-18 11:41data1
[root@sounix01 ~]# vi /etc/samba/smb.conf
[root@sounix01 ~]# service smb restart
关闭 SMB服务:                                            [确定]
关闭 NMB服务:                                            [确定]
启动 SMB服务:                                            [确定]

转载于:https://www.cnblogs.com/leeeee/p/7276674.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值