CentOS6.5安装配置Samba

时间:2021-12-21 15:38:56

转自:http://www.tangrucheng.com/centos6-5-setup-configure-samba.html

本文的场景是虚拟机运行CentOS6.5,本机是Win7,现欲把CentOS上的一个文件夹共享出来,Win的机器可以读写。

Samba与window连接需要使用NetBIOS协议,请确认你的Win7系统已经安装了NetBIOS协议。

组成Samba运行的有两个服务,一个是SMB,另一个是NMB;SMB是Samba 的核心启动服务,主要负责建立 Linux Samba服务器与Samba客户机之间的对话, 验证用户身份并提供对文件和打印系统的访问,只有SMB服务启动,才能实现文件的共享,监听139 TCP端口;而NMB服务是负责解析用的,类似与DNS实现的功能,NMB可以把Linux系统共享的工作组名称与其IP对应起来,如果NMB服务没有启动,就只能通过IP来访问共享文件,监听137和138 UDP端口

配置防火墙

使用Samba服务器需在防火墙下开启:UDP 137 UDP 138 TCP 139 TCP 445 ,如果你懒的配置,可以选择关闭防火墙 # service iptables stop  。

TeX
12345 #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

重启防火墙,使规则生效

Shell
1 /etc/rc.d/init.d/iptables restart

 

关闭SELINUX

TeX
12 #vi /etc/selinux/configSELINUX=disabled

使配置生效重启计算机  # reboot

 

安装samba

Shell
1 # yum -y install samba samba-client

 

设置开机启动

Shell
12 # chkconfig smb on# chkconfig nmb on

 

配置samba

开始配置samba之前别忘记备份一下:

Shell
1 # cp /etc/samba/smb.conf /etc/samba/smb.conf.back

接下来我是直接删除smb.conf文件,再创建smb.conf文件自行配置信息 配置信息如下:

INI
1234567891011 [global]workgroup=WORKGROUP            #工作组[可自行设置]servicestring=SambaServer    #设置samba服务器名称[可自行更改]netbiosname=SambaServer      #设置服务器访问别名[可自行更改]security=user                  #设置samba服务器安全级别。user:samba服务器验证; share:无权限验证; server:第三方主机验证;domain[tangrucheng]                    #Windows网上邻居中看到的共享目录的名字path=/data/www/www.tangrucheng.com    #共享文件地址public=no                      #不公开目录writeable=yes                  #共享目录可以读写validuser=apache              #只允许apache用户访问browseable=yes

 

添加smb用户

在添加smb用户之前添加linux用户

Shell
1 # useradd newuser -d /home/newuser -s /bin/false

然后,添加smb用户

Shell
1 # smbpasswd -a newuser

因为上面配置smb的时候我的验证用户为apache,直接执行  # smbpasswd -a apache 就好了。

 

重启服务

Shell
1 # service smb restart

Shell
1 # /etc/init.d/smb restart

 

查看服务是否开启

Shell
12 # pstree |grep smb# netstat -tunpl |grep :13

 

测试

linux客户端:

Shell
1 # mount //192.168.10.1/tangrucheng /mnt -o username=apache

 

window客户端:

TeX
1 \\192.168.10.1\tangrucheng

查看所有会话  net use
清除记录会话  net use * /delete /y