标题 :搭建Samba服务器

一、 选题背景

在早期的网络世界中,文件数据在不同主机之间的传输大多是使用ftp,但是使用ftp服务传输档案使得我们无法直接修改主机上面的档案数据。NFS服务可以实现在客户端的机器上直接使用服务器上面的文件,但是NFS主要在unix系列操作系统上使用。windows上面也有类似的文件系统,那就是cifs(Common Internet File system,通用internet文件系统),cifs的最简单的用途就是“网上邻居”,但是cifs只能让windows机器沟通。所以,为了实现windows和unix系列系统之间能够相互沟通,就产生了samba服务。

samba是架构在NetBIOS(Network Basic Input/Output System,网上基本输入输出系统)这个通信协议上面所开发出来的。NetBIOS是由IBM发展出来,目的是要让局域网络内少数计算机进行网络连接的一个通信协议,因此NetBIOS是无法跨越路由的,而现在Samba不仅能与局域网主机分享资源,还能与全世界的电脑分享资源,就是由NetBIOS over TCP/IP技术解决。由于NetBIOS在局域网内实在是很好用,所以微软的网络架构就使用了这个协议。而samba最早发展的时候,其实是想要让linux系统可以加入windows的系统当中来共享使用彼此的文件数据,所以samba就架构在NetBIOS发展出来了。

Samba服务程序可以让我们在Linux系统与Windows系统之间共享文件,区别于FTP,Samba重于共享文件,而非传输文件,因此我们可以通过客户端直接在服务器上修改文件内容。在配置Samba服务程序之前,我们需要先配置yum软件仓库,然后使用yum来安装服务程序以及客户端。yum仓的配置方法跟前边讲过的一样,这里不再多做叙述,我们直接开始安装配置samba。然后我们需要用另外一台主机进行验证,可以直接再克隆一台虚拟机,然后根据需要修改主机名以及网络配置、IP地址等。

二、方法论证

需求:

(1)设置公共目录,所有人可以访问,权限为只读;

(2)为结算中心(Sale)和技术部(Technology)分别建立单独的目录,只允许公司总经理(Manager)和对应部门员工访问;

(3)公司员工无法在“网络邻居”中查看到非本部门的共享目录。

samba功能

1、进行文件共享;

2、可以提供使用者登入samba主机时的身份认证,以提供不同身份的个别资料;

3、可以进行windows网络上的主机名称解析(NetBIOS name);

NetBIOS当初发展就着眼在局域网内的快速数据交流,而因为是定义在局域网内,因此它并没有使用类似TCP/IP之类的传输协议,也就不需要IP的设置。这样一来数据如何在两台主机间交流呢?其实主机在NetBIOS协议当中的定义为使用“NetBIOS Name”,每一台主机必须要有不同的NetBIOS Name才行。假设使用网上邻居来设置文件数据的访问,想要登录某台计算机使用它所提供的文件数据时,必须要加入该计算机的工作组,并且需要给自己的机器设置一个NetBIOS Name,在同一个组中,NetBIOS Name是独一无二的。是否能登录对方主机或者是使用对方主机所提供的资源,还要看对方主机有没有提供我们使用的权限。

samba通过两个服务来控制管理工作组和samba主机共享的目录,分别是:

nmbd:这个服务是来管理工作组、NetBIOS Name等的解析。主要利用UDP协议开启port137、port138来负责名称解析的任务。

smbd:这个服务的主要功能是用来管理samba主机共享的目录、文件与打印机等。主要利用可靠的TCP协议来传输数据,开放的端口为139和445(不一定存在)。

samba服务器的搭建

samba服务的相关软件包说明

samba:该软件主要提供了smb服务器所需的各项服务程序(smbd及nmbd)、相关的文件。

samba-client:这个软件提供了当linux作为samba client时,所需要的工具命令。例如挂载samba文件格式的mount.cifs。

samba-common:这个软件提供的则是服务器与客户端都会使用到的数据包括samba的主要配置文件(smb.conf)等。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oWOu1kWa-1653989366185)(未命名.assets/image-20220531171129999.png)]

三、过程论述

此处服务端主机名为beer,IP为192.168.108.137

1.Samba共享服务的匿名访问

(1)安装Samba服务器软件包

yum install samba -y ##安装Samba

服务截图:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KwAuUgMz-1653989366186)(未命名.assets/image-20220531144928085.png)]

(2)关闭SELinux

[root@Server ~]# vim /etc/selinux/config

[root@Server ~]# cat /etc/selinux/config | grep -v “#” | grep -v “^$”

SELINUX=disabled

SELINUXTYPE=targeted

[root@Server ~]# getenforce

Disabled

[root@Server ~]#

(3)防火墙放行Samba服务

[root@Server ~]# firewall-cmd --permanent --add-service=“samba”

success

[root@Server ~]# firewall-cmd --reload

success

[root@Server ~]# firewall-cmd --list-all

public (default, active)

interfaces: eno16777736

sources:

services: dhcp dhcpv6-client samba ssh

ports:

masquerade: no

forward-ports:

icmp-blocks:

rich rules:

[root@Server ~]#

(4)配置开机自启动Samba服务

[root@Server ~]# systemctl enable smb nmbln -s '/usr/lib/systemd/system/smb.service' '/etc/systemd/system/multi-user.target.wants/smb.service'ln -s '/usr/lib/systemd/system/nmb.service' '/etc/systemd/system/multi-user.target.wants/nmb.service'[root@Server ~]# systemctl restart smb nmb

(5)创建相关的文件夹,并创建用户和组

1. 创建目录

mkdir /Public
mkdir /Sale
mkdir /Technology

2.添加用户和组

groupadd Sale
groupadd Technology

3.创建Manager用户

useradd Manager

4.添加用户到用户组

useradd -g Sale Sale1useradd -g Technology Technology1useradd Manager

5.修改用户密码

passwd Manager
passwd Sale1
passwd Technology1

6.修改权限

chmod 777 /Public
chmod 777 /Sale
chmod 777 /Technology

7.创建samba用户

smbpasswd -a Manager
smbpasswd -a Sale1
smbpasswd -a Technology1

(6)配置Samba配置文件信息

[root@localhost~]# cd /etc/samba/ ##切换到Samba配置文件目录

[root@localhost samba]# mv smb.conf smb.conf.bak ##备份
[root@localhost samba]# grep -v “#” smb.conf.bak > smb.conf ##重新创建一个配置文件(除去注释的)
[root@localhost samba]# vim smb.conf ##修改配置文件

1.创建独立配置文件

cd /etc/samba

sudo vim smb.conf

配置公共目录,再末尾添加:

[public]
conment = “Public Stuff”
path = /share
writable=yes
public=yes

2. 复制文件

sudo cp smb.conf Manager.smb.conf
sudo cp smb.conf Sale.smb.conf
sudo cp smb.conf Technology.smb.conf

3.在[global]后面添加包含文件配置

vim /etc/samba/smb.conf

在[global]中加入:

include=/etc/samba/%U.smb.conf
include=/etc/samba/%G.smb.conf

4.编辑总经理Manager文件,末尾添加

sudo vim /etc/samba/Manager.smb.conf

[sales]
conment = sales
path = /sales
writable=yes
valid users = master
[tech]
comment = tech
path = /tech
writable=yes
valid users = master

5.编辑Sale,末尾添加

sudo vim /etc/samba/Sale.smb.conf

[Sale]
conment = Sale
path = /Sale
writable=yes
valid users = @Sale, Manager

6.编辑tech,末尾添加

sudo vim /etc/samba/tech.smb.conf

[Technology]
comment = Technology
path = /Technology
writable=yes
valid users = @Technology, Manager

7.放行smaba TCP服务端口

iptables -I INPUT -p tcp --dport 445 -j ACCEPT
iptables -I INPUT -p tcp --dport 139 -j ACCEPT

8.重启smb服务

systemctl restart smb

2.在windows上测试

Windows客户端进行测试

在Windows客户端进行访问测试

在此电脑中输入\192.168.108.137,进行访问测试

或Win + R输入\192.168.108.137,进行访问测试

以不同的身份登入到Samba服务器,分别在不同的文件夹中创建文件,查看是否具有权限

创建完成后,可以在服务端,查看相应的目录下是否存在该文件,以及该文件的所有者信息

在Windows客户端访问后,需要切换账户登录,则需要退出登录

在CMD中执行net use * /del /y命令,以清除所有远程

四、结果分析

进入smb.conf配置文件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9UDsoFL2-1653989366187)(未命名.assets/image-20220531151919872.png)]

主机Manager账号登录服务器:

Manager账号可对public文件进行读写操作

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-I3mgyAwH-1653989366188)(未命名.assets/image-20220531153254060.png)]

Manager账号可对Sale文件进行读写操作:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-S0RRAfqR-1653989366189)(未命名.assets/image-20220531153758754.png)]

Manager账号可对Technology文件进行读写操:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dQ9bH4OX-1653989366189)(未命名.assets/image-20220531153829256.png)]

本地账号Sale使用Sale1账号登录服务器:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FyLXdAXw-1653989366190)(未命名.assets/image-20220531160651459.png)]

Sale1账号对public文件只能读不能写

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-348JhRYS-1653989366191)(未命名.assets/image-20220531161959546.png)]

Sale1账号对Sale文件可读写

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xgndH22m-1653989366191)(未命名.assets/image-20220531162023038.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iwtEqaSl-1653989366192)(未命名.assets/image-20220531165924160.png)]

Technology1账号对public文件只能读不能写

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6OJKkVbZ-1653989366193)(未命名.assets/image-20220531165949149.png)]

Technology1账号对Technology文件能读写

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FcWi7wlq-1653989366193)(未命名.assets/image-20220531170018643.png)]

五、课程设计总结

​ 本次实验遇到许许多多小问题,先在网上查阅大量资料,回来一步步的参考配置。其中最难的还是samba的配置文件smb.conf,在这上面花了大量的时间,从配置文件里学习了配置文件的很多语法配置与逻辑思维,同时还复习了liunx的操作命令,用户组的增删改查等等。最后就是遇到报错信息一定要学会查资料,要多翻阅,注意好文件的备份处理。

*参考文献*

REHL7.4配置Samba服务实验
原文链接:https://blog.csdn.net/qq_21007661/article/details/116616468

Samba只对某一用户显示共享目录的设置

https://wenku.baidu.com/view/a0937ff2a68da0116c175f0e7cd184254b351bb4.html

linux命令中的%U是什么意思

https://zhidao.baidu.com/question/1431606369299384659.html?qbl=relate_question_0&word=liunx%D6%D0%25U%20%CE%C4%BC%FE%D2%FD%D3%C3

Linux Samba服务主配文件smb.conf中文详解【转】

处理。

*参考文献*

REHL7.4配置Samba服务实验
原文链接:https://blog.csdn.net/qq_21007661/article/details/116616468

Samba只对某一用户显示共享目录的设置

https://wenku.baidu.com/view/a0937ff2a68da0116c175f0e7cd184254b351bb4.html

linux命令中的%U是什么意思

https://zhidao.baidu.com/question/1431606369299384659.html?qbl=relate_question_0&word=liunx%D6%D0%25U%20%CE%C4%BC%FE%D2%FD%D3%C3

Linux Samba服务主配文件smb.conf中文详解【转】

https://www.bbsmax.com/A/WpdK7BpodV/

搭建Samba服务器相关推荐

  1. ubuntu samba服务器的安装文件,在Ubuntu16.04中搭建samba服务器并用win10连接实现共享文件...

    通过搭建samba能和局域网络主机共享资源,还能和其它的电脑共享资源.以下在Ubuntu16.04系统中搭建samba服务器,并且用Windows10系统连接实现电脑共享文件的过程. 一.安装samb ...

  2. RHEL4- SAMBA服务(四)在x-window下图形界面简单搭建samba服务器

    RHEL4- SAMBA服务(四)在x-window下图形界面简单搭建samba服务器       在<RHEL4- SAMBA服务(一)samba服务的安装与启动>中我讲了如何安装和启动 ...

  3. 阿里云搭建 samba服务器

    前言: 我搭建samba服务器,只是想通过window系统的映射网络驱动器,将阿里云服务器的开发目录挂在到window系统上,这样就可以在window系统上编写代码,然后通过Xshell终端上编译运行 ...

  4. 2-4-RHEL6.3搭建samba服务器案例分析与总结(Red Hat Enterprise Linux Server6.3)@树袋飘零...

    本节介绍内容: 1.  samba概述 2.  samba服务器的搭建 3.  samba服务主配置文件的详解 4.  samba服务器搭建案例分析 1.  samba概述 samba是linux以及 ...

  5. 【samba】Wodows同步Linux文件|搭建samba服务器共享文件——在windows上映射网络驱动器...

    目录 Linux做samba服务器 Linux上的操作 windows上的操作 windows做samba服务器 windows上的操作 linux上的操作 错误记录 Linux Samba服务主配文 ...

  6. 在本地Win10系统映射云服务器为网络驱动器——阿里云搭建samba服务器

    目的: 通过window系统的映射网络驱动器,将阿里云服务器的开发目录映射到window系统上,这样就可以在window系统上编写代码,然后通过Xshell终端上编译运行,极大提高码代码方便性! 方法 ...

  7. RHEL 5搭建Samba服务器详细过程

    RHEL 5下Samba的搭建相对于其他系统来说是比较轻松的,下面就对RHEL 5下Samba的搭建过程做一简单的描叙,并且与其它系统的Samba服务器的搭建进行一下简单的比较. 在RHEL 5操作系 ...

  8. Ubuntu环境搭建二:搭建samba服务器

    之前看大家搭建的samba服务器,虽然可以共享文件,但是需要管理员权限才能修改,很不方便,这里我教大家一个不需要登录就可以进去的samba服务器,修改文件也不需要其他权限. 1.安装samba: su ...

  9. Linux 小白笔记第八弹,手把手教你Ubuntu(乌班图)搭建samba服务器,从安装到配置。

    引子: 安装在Ubuntu中samba服务器,实现Windows与Ubuntu的文件传输,是非常有必要的.我们直接开始吧! 安装: 第一步: 输入安装命令: sudo apt-get install ...

最新文章

  1. Leetcode (396 旋转函数)
  2. 《深入浅出Ext JS(第2版)》获专家好评
  3. IEEE技术领域大奖公布:ML先驱上榜,大陆唯一获奖学者来自清华
  4. 如何在生产环境部署K2的流程
  5. 【错误记录】Android 分区存储 错误 ( 文件格式不匹配 )
  6. 最小生成树(prime算法、kruskal算法) 和 最短路径算法(floyd、dijkstra)
  7. Django_前端显示Matplotlib画的图(亲测)
  8. 一起学习C语言:函数(三)
  9. 案例解读:深入理解浏览器的缓存机制
  10. 【java】高并发之限流 RateLimiter使用
  11. Django 博客开发教程 6 - 真正的 Django 博客首页视图
  12. NSNotFound
  13. 由VB的KeyCode和KeyAscii到扫描码、虚拟码的思考
  14. 计算机模态分析计算法,ANSYS 入门教程 (33) - 分析类型与求解控制选项 (b)   转自...
  15. library genesis (libgen)及Book系列网站的使用方法,外文图书下载神器,Springer学术书籍免费下载
  16. 程序员如何规划自己的职业生涯
  17. 怎样安装android设备驱动,如何在电脑安装安卓手机驱动
  18. 泊松分布分布与Python图解
  19. Mac升级系统后,Android Studio 不能用问题
  20. Java job interview:项目架构研发京东大数据价值最大化的应用实践

热门文章

  1. 哥几个哦,今天 我为我们感动了
  2. python urlopen 乱码_Python 2.7.3 urllib2.urlopen 获取网页出现乱码解决方案
  3. Android风格与主题(style and theme)
  4. 图像处理算法工程师面试题(后续问题答案持续更新)
  5. ws协议 服务器,Node.js WebSocket 协议
  6. css:去除滚动条样式(隐藏滚动条)
  7. vue2 扩展雪碧图
  8. 远程服务器如何创建分支,Git 创建分支提交远程分支详解
  9. PHP - 应用实例 - nfo2image - NFO转图片
  10. Git 安装配置全流程