一.samba的概述

熟悉Linux的用户可能常常在Linux上安装Samba服务来实现与Windows系统的文件共享和打印机共享,

他们之间的数据传输使用 SMB(Service Message Block)协议.这是一个在传输层之上的协议,

所以他可以支持很多不同异构系统的网络互联(比如,Linux,Solaris,Windows 等),

Samba之所以能够工作,因为SMB协议模仿了Windows内核的文件和打印共享协议。

微软已经将SMB改名为公共因特网文件系统(CIFS,Common Internet File System ),

并打算把它设计为Internet的标准协议。这在一定程度上是由于它想与最初的基于NetBIOS的SMB保持一定的距离。

NetBIOS是 Windows 网络的一个伟大的工具,Microsoft使用NetBIOS实现了一个网络文件/打印服务系统,

但是为LAN设计的它却注定了不能路由。 Samba执行了SMB/CIFS的一个版本,这个版本在很大程度上与大多数的Windows版本兼容。

我们可以通过Windows的网络邻居来轻松访问安装了Samba的UNIX/LINUX服务器。

二.samba服务器的搭建

使用Samba服务器需要防火墙开放一下端口

UDP 137  UDP 138   TCP 139 TCP 445

vi /etc/sysconfig/iptables--------------------配置防火墙端口

-A INPUT -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 137 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 138 -j ACCEPT
/etc/rc.d/init.d/iptables restart--------------重启防火墙,使规则生效

1.检查Samba服务包是否安装

说明已经安装,如没安装,可yum -y install samba-*

2.配置samba

chkconfig smb on--------设置Samba开机自动运行

service smb start --------启动Samba服务

/etc/init.d/smb restart --------重启Samba服务

/etc/init.d/smb stop ----------停止Samba服务

 

cp /etc/samba/smb.conf /etc/samba/smb.confbak-------备份samba的配置

 

[global]---------------全局设置标签

workgroup=WORKGROUP -------工作组为windows网络所定义的工作组名

server string=Samba Server  --------服务器主机的名称

security=user -----------------------设置samba安全级别为user,即以账号和口令登录

 

在配置文件末尾处添加自定义内容

保存配置

3.添加访问Linux共享目录的账号SambaServer
用户家目录为/home/SambaServer, 用户登录终端设为 /bin/false (即使之不能登录系统)
cd /home --------------------------进入/home目录
mkdir SambaServer ---------------建立SambaServer文件夹
useradd SambaServer -d /home/SambaServer -s /bin/false
chown SambaServer:SambaServer /home/SambaServer -R
 

4.smbpasswd -a SambaServer--------------添加SambaServer添加到Samba用户数据库

5.重启Samba服务器

/etc/init.d/smb restart

6.在windows客户端输入\\ip  ,查看是否可以访问共享目录

参考链接http://www.wp31.com/1074.html

             http://snailwarrior.blog.51cto.com/680306/136723

辅助说明

windows报错“不允许一个用户使用一个以上用户名与服务器或共享资源的多重连接”
  
  命令如下 CMD -->
   net use 0: \\10.0.15.17\gho
   输入帐户
   密码
  跳出错误:不允许一个用户使用一个以上用户名与服务器或共享资源的多重连接。
  可以用以下命令解决此问题。
  
   net use * /del /y
  该命令可以中断开所有连接。
   再次做映射
   net use 0: \\10.0.15.17\gho
   输入帐户
   密码
   The command completed successfully.
  问题 解决。