samba 共享服务器 安装 配置

张映 发表于 2012-07-14

分类目录: 服务器相关

标签:, , , ,

一,什么是samba

samba是一个工具套件,在Unix上实现SMB(Server Message Block)协议,或者称之为NETBIOS/LanManager协议。SMB协议通常是被windows系列用来实现磁盘和打印机共享。

简单的说,samba可以搭建一个共享服务器,windows用户可以共享linux的文件。

二,安装配置samba

1,安装

yum install samba system-config-samba samba-client samba-common

如果找不到包,请换epel源,我博客里面搜一下就行了。

2,配置

[root@samba etc]# mv /etc/samba/smb.conf /etc/samba/smb.conf_bak //备份
[root@samba etc]# vim /etc/samba/smb.conf  //添加以下内容

[global]
workgroup = SMBGROUP
netbios name=samba
server string = Samba Server
log file = /var/log/samba/%m.log
max disk size =300000
security = user
encrypt passwords = yes  

[homes]
comment = Private Directories
browseable = no
writable = yes
valid users = %S
create mode = 0755
directory mode = 0755  

[public]
comment = Public
path = /var/www/public
create mode = 0777
directory mode = 0777
public = yes
writable = yes

参数说明:

[global]参数说明

1,workgroup 这是设置服务器所要加入的工作组的名称
2,netbios name 主机名,代替IP用,例如\\192.168.1.108\public可以换成\\smb-server\public
3,server string 这是设置服务器主机的说明信息
4,log file 这一选项要求Samba服务器为每一个连接的机器使用一个单独的日志文件
5,max log size 指定日志文件的最大容量(以KB为单位),设置为0,表示没有限制。默认值为5000
6,max disk size 设置能够共享的最大磁盘空间,单位为MB,默认值为0,表示不作任何限制。
7,security 设置Samba服务器的安全等级。默认情况下,使用user等级。

#Samba服务器一共有四种安全等级。
share: 使用此等级,用户不需要帐号及密码可以登陆Samba服务器。
user: 使用此等级,由提供服务的Samba服务器检查用户帐号及密码。
server: 使用此等级,检查帐号及密码的工作可指定另一台Samba服务器负责。
domain: 使用此等级,需要指定一台Windows NT/2000/XP服务器(通常为域控制器),以验证用户输入的帐号及密码。

8,encrypt passwords 是否采取密码加密的方式
9,smb passwd file 设置在Samba服务器上存放加密的密码文件的位置

[public],[homes]共享目录参数说明

1,comment 针对共享资源所作的说明、注释部分
2,browseable 设置用户是否可以看到此共享资源,默认值为yes
3,writable 设置共享的资源是否可以写入
4,create mode 设置文件的访问权限,默认值为0744。
5,directory mode 设置目录的访问权限,默认值为0755。
6,path 若共享资源是目录,则指定目录的位置;若为打印机,则指定打印机队列的位置。
7,read only 设置共享资源是否只读或可以写入,默认值为yes
8,Public 是否允许用户不使用帐号和密码便能访问此资源
9,avalible 设置是否启用此共享资源。默认值为yes。若将此参数设置为no,则不管其他参10,数设置为什么,所有人均不得使用此资源。
11,valid users 可访问的用户局限于用户自己。%S会被自动转换为登录帐号。

三,设置共享目录

[root@samba etc]# mkdir -p /var/www/public
[root@samba etc]# chmod -R  777 /var/www/public

[homes]我并没有指定path,可登录的linux用户都有一个自己的根目录。

四,samba密码文件设定,以及用户密码设置

[root@samba  etc]# user add zhangy
[root@samba  etc]# smbpasswd -a zhangy

将未加密的/etc/passwd文件转换成加密的smbpasswd文件。基于保密的原则,将/etc/samba目录的权限设为500,该文件的权限设为600,以避免他人取得密码文件。

zhangy这个用户是系统用户,本来有一个linux密码,但是连接samba的时候不能用,所以要用smbpasswd重新设置一下密码。

五,启动samba服务端,客户端连接

[root@samba etc]# /etc/init.d/smb start

客户端连接有【开始】=》【运行】=》【cmd】回车中输入:\\192.168.1.108\public就可以了。如果只输入\\192.168.1.108,这样默认进入个人用户目录需要输入用户和密码。

六,samba共享目录,映射windows盘符

下面用win7的机子,做的映射。security=user的情况下做的,也就是说要密码的。

【计算机】=》右键网络=》【映射网络驱动器(N)...】=》

win7 映射网络驱动器

win7 映射网络驱动器

其后在输入用户名和密码,如果是security=share下面这一步就可以省去。

win7映射samba输入密码

win7映射samba输入密码

看一下映射成功后的

win7 映射成功

win7 映射成功



转载请注明
作者:海底苍鹰
地址:http://blog.51yip.com/server/1429.html