前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CentOS 6.4安装和配置Samba服务

CentOS 6.4安装和配置Samba服务

作者头像
星哥玩云
发布2022-07-04 10:02:53
5880
发布2022-07-04 10:02:53
举报
文章被收录于专栏:开源部署

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 ACCEPTiptables  -I INPUT -p udp --dport 137 -j ACCEPTiptables  -I INPUT -p tcp --dport 138 -j ACCEPTiptables  -I INPUT -p udp --dport 138 -j ACCEPTiptables  -I INPUT -p tcp --dport 139 -j ACCEPTiptables  -I INPUT -p udp --dport 139 -j ACCEPTiptables  -I INPUT -p tcp --dport 445 -j ACCEPTiptables  -I INPUT -p udp --dport 445 -j ACCEPTservice iptables saveservice iptables restart

Step-2:将SELinux配置为permissive模式,运行以下命令:

setenforce 0vi /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.bakvi /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 user1useradd -g user1 user1passwd user1groupadd user2useradd -g user2 user2passwd user2 注意:user1和user2的密码都为password。

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

smbpasswd -a user1smbpasswd -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 onchkconfig nmb onservice smb startservice 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 /sambamount -t cifs //192.168.4.211/user1 /samba -o user=user1,password=password,workgroup=WORKGROUP

Step-2:个人目录用完之后,卸载挂载,运行以下命令:

umount /samba

4. 开机自动挂载samba共享目录

向fstab文件中添加共享目录的挂载条目,即可实现开机自动挂载,但是随后与samba服务端的连接将始终处于活动状态。运行以下命令:

mkdir /sambavi /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分钟。

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

vi /etc/auto.samba 上述文件的内容如下所示: user1 -fstype=cifs,username=user1,password=password ://192.168.4.211/user1 其中,user1为子目录挂载点,此目录通常不可见,只有当autofs服务创建此目录和挂载共享之后对其进行直接命名/访问时,它才会变为可见。

service autofs restart

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

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

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档