阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

CentOS 6.4安装和配置Samba服务

198次阅读
没有评论

共计 4643 个字符,预计需要花费 12 分钟才能阅读完成。

0. 环境说明
 
samba 服务端系统:CentOS 6.4 x86_64
samba 服务端 IP:192.168.4.211
samba 客户端系统:CentOS 6.4 x86_64
samba 客户端 IP:192.168.4.212
 
1. 安装 samba 服务端
 
Step-1:为 samba 打开防火墙上的相应端口,运行以下命令:
iptables  -I INPUT -p tcp –dport 137 -j ACCEPT
iptables  -I INPUT -p udp –dport 137 -j ACCEPT
iptables  -I INPUT -p tcp –dport 138 -j ACCEPT
iptables  -I INPUT -p udp –dport 138 -j ACCEPT
iptables  -I INPUT -p tcp –dport 139 -j ACCEPT
iptables  -I INPUT -p udp –dport 139 -j ACCEPT
iptables  -I INPUT -p tcp –dport 445 -j ACCEPT
iptables  -I INPUT -p udp –dport 445 -j ACCEPT
service iptables save
service iptables restart
 
Step-2:将 SELinux 配置为 permissive 模式,运行以下命令:
setenforce 0
vi /etc/selinux/config

将上述文件中的

SELINUX=enforcing
替换为
SELINUX=permissive
 
Step-3:安装 samba 服务端,运行以下命令:
yum install -y samba
 
Step-4:配置 smb.conf 文件,运行以下命令:
mv /etc/samba/smb.conf /etc/samba/smb.conf.bak
vi /etc/samba/smb.conf

上述配置文件的内容如下所示:

[global]

        ##samba 服务器的工作组为 WORKGROUP

        workgroup = WORKGROUP

        ##samba 服务器的描述信息

        server string = Samba Server Version %v

        ##samba 服务器的 NetBIOS 名称

        netbios name = CentOS.Server

        ##samba 服务器的客户端访问日志

        log file = /var/log/samba/log.%m

        ## 日志的最大尺寸为 50 KB

        max log size = 50

        ## 使用 tdbsam 存储用户信息

        passdb backend = tdbsam

        ## 使用用户验证的方式确保安全性
        security = user

        ## 映射匿名用户访问
        map to guest = bad user
        guest account = nobody

[homes]
        ## 共享目录说明
        comment = Home Directories

        ## 有效用户,此目录在 /home 目录中

        valid users = %S

        ## 在 Windows 的网络共享中看不到此目录

        browseable = No

        ## 此目录可写

        writable = Yes

[private]
        ## 共享目录说明
        comment = Demo Directory

        ## 共享目录路径
        path = /samba/private

        ## 有效用户
        valid users = @user1

        ## 在 Windows 的网络共享中能够看到此目录
        browseable = Yes

        ## 此目录不能匿名公开访问
        public = No

        ## 此目录可写
        writable = Yes

[public]
        ## 共享目录说明
        comment = Public Stuff

        #共享目录路径
        path = /samba/public

        ## 在 Windows 的网络共享中能够看到此目录

        browseable = Yes

        ## 此目录可以公开匿名访问
        public = Yes

        ## 此目录可写
        writable = Yes

 
Step-5:在系统中建立两个用户组和用户,分别是 user1 和 user2,运行以下命令:
groupadd user1
useradd -g user1 user1
passwd user1
groupadd user2
useradd -g user2 user2
passwd user2

注意:user1 和 user2 的密码都为 password。

 
Step-6:在 samba 服务端建立两个用户,运行以下命令:
smbpasswd -a user1
smbpasswd -a user2

注意:user1 和 user2 的 samba 访问密码都为 password。

 
Step-7:建立相应的目录,并且设置访问权限,运行以下命令:
mkdir -p /samba/public

mkdir -p /samba/private
chmod -R 777 /samba
 
 
Step-8:配置和启动 samba 服务,运行以下命令:
chkconfig smb on
chkconfig nmb on
service smb start
service nmb start
 
通过上述 8 个步骤的配置,在客户端便能访问共享目录了。user1 和 user2 都能够访问 public 目录,具有读写权限;只有 user1 能够访问 private 目录,具有读写权限;user1 和 user2 的个人目录不可见,只能通过 url 进行访问,各自都具有读写权限。
 
2. 安装 samba 客户端
 
Step-1:安装 samba 客户端,运行以下命令:
yum install -y samba-client
 
Step-2:连接服务端上的共享目录,运行以下命令:
## 连接公开目录
smbclient //192.168.4.211/public -U user1

## 连接个人目录

smbclient //192.168.4.211/user1 -U user1
 
若登录成功,Shell 命令就会变为这样的提示符:
smb: \>
 
Step-3:使用完之后,断开连接,在 samba 命令行中运行以下命令:
quit
 
通过上述 3 个步骤,samba 客户端便能够使用 samba 共享了。
 
3. 手动挂载 samba 共享目录
 
Step-1:挂载 user1 的个人目录至 samba 客户端的 /samba 目录下,运行以下命令:
mkdir -p /samba
mount -t cifs //192.168.4.211/user1 /samba -o user=user1,password=password,workgroup=WORKGROUP
 
Step-2:个人目录用完之后,卸载挂载,运行以下命令:
umount /samba
 
4. 开机自动挂载 samba 共享目录
 
向 fstab 文件中添加共享目录的挂载条目,即可实现开机自动挂载,但是随后与 samba 服务端的连接将始终处于活动状态。运行以下命令:
mkdir /samba
vi /etc/fstab

在上述文件末尾加入共享目录的挂载条目,如下所示:
//192.168.4.211/user1 /samba cifs defaults,username=user1,password=password 0 0

其中,第 5 个字段设置为 0 表示共享目录的文件系统不需要使用 dump 命令进行转储,第 6 个字段设置为 0 表示共享目录的文件系统不需要使用 fsck 命令进行检查。

 
除此之外,还可以使用自动挂载器(autofs)实现按需自动挂载网络共享目录。当共享不再使用,并处于不活动状态一定时间之后,自动挂载器会对共享解除挂载。
 
5. 按需自动挂载 samba 共享目录
 
Step-1:修改不活动状态的超时时间,运行以下命令:
vi /etc/sysconfig/autofs

将上述文件中的
TIMEOUT=300
替换为
TIMEOUT=600
也就是将不活动状态的超时时间由 5 分钟修改为 10 分钟。

 
Step-2:建立共享目录挂载点的父目录,运行以下命令:
mkdir -p /samba
 

Step-3:配置共享目录挂载点的父目录,运行以下命令:

vi /etc/auto.master

在上述文件的最后新增一行,如下所示:
/samba    /etc/auto.samba

其中,/samba 是挂载点的父目录,这个目录在系统中始终可见,并由 autofs 服务监控,以确定是否“需要”挂载 / 创建子目录挂载点。/etc/auto.samba 为单个配置文件,包含由 autofs 服务在此父目录下管理的子目录挂载点的列表。

 

Step-4:配置共享目录挂载点目录,运行以下命令:

vi /etc/auto.samba

上述文件的内容如下所示:

user1 -fstype=cifs,username=user1,password=password ://192.168.4.211/user1

其中,user1 为子目录挂载点,此目录通常不可见,只有当 autofs 服务创建此目录和挂载共享之后对其进行直接命名 / 访问时,它才会变为可见。

 

Step-5:重新启动 autofs 服务,运行以下命令:

service autofs restart
 

Step-6:访问网络共享目录,运行以下命令:

cd /samba/user1

运行上述命令之后,autofs 将自动创建挂载点目录,并且挂载共享目录。

 

Step-7:卸载网络共享目录,详情如下所示:

在 /samba/user1 之下的所有文件和目录停止使用且超时期满之后(10 分钟),autofs 将卸载共享目录。

———————————— 分割线 ————————————

如何在 Ubuntu 14.04 中使用 Samba 共享文件  http://www.linuxidc.com/Linux/2014-07/104894.htm

VMWare 虚拟机 Ubuntu 双网卡 访问 samba 速度 翻倍 http://www.linuxidc.com/Linux/2013-06/85445.htm

Samba 文件共享服务器加入 Windows Server 2003 域 http://www.linuxidc.com/Linux/2013-06/86391.htm

Samba 安装配置 http://www.linuxidc.com/Linux/2013-06/86101.htm

CentOS 6.2 下 Samba 服务的配置 http://www.linuxidc.com/Linux/2013-01/78390.htm

Samba 服务器安装和配置  http://www.linuxidc.com/Linux/2014-12/110459.htm

Win7+VMware+Fedora18 Samba 服务器的搭建图解 http://www.linuxidc.com/Linux/2013-01/78234.htm

———————————— 分割线 ————————————

Samba 的详细介绍:请点这里
Samba 的下载地址:请点这里

更多 CentOS 相关信息见CentOS 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=14

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-20发表,共计4643字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中