理论部分

samba服务简介

smb服务是微软的网络通讯协议,后来应用到了linux系统上。这款文件共享协议可以使得Linux与windows系统之间进行文件共享与打印功能,由于NFS可以完成linux与linux之间的文件共享,所以smb服务最适用 的场合还是linux与windows系统间的文件共享。


samba:基于smb协议使网络上的计算机能共享文件

samba的核心是smbd和nmbd两个守护进程

smbd:管理samba服务器上的共享目录

nmbd:进行netbios名解析,使客户端能浏览服务器的共享资源

协议端口:

smbd:tcp 445和tcp139

nmbd:udp 137/138

samb服务基础

  软件包:samba

  协议:SMP(TCP139)CIFS(445)

  配置文件路径:/etc/samba/smb.conf

  所需服务器:svr7(ip192.168.4.7)和myhost2

工作流程:

关于smbpasswd命令选项:

    -h:显示smbpasswd的命令格式帮助-a:添加指定的用户帐号-d:禁用指定的用户帐号-e:启用指定的用户帐号-x:删除指定的用户帐号没有添加任何选项时候将改变用户密码。

认识samba服务器主配文件:smb.conf

    [global] 部分是samba服务器的全局设置,对整个服务器有效。[homes] 部分是设置用户共享目录属性。[printers] 部分设置了samba服务器中打印共享资源的属性,samb服务器除了可以提供文件共享,还可以提供打印共享。
[global]部分详解:workgroup 设置samba服务器所在的工作组,默认是:MYGROUPserver string 设置samba服务器的说明,用于描述服务器。log file 设置samba服务器的日志文件,默认是:/var/log/samba/log.%mmax log size 设置日志文件的最大容量,默认是50,单位KB。security 设置samba服务器和客户端的认证方式,默认是user。一共有4种方式:share 表示用户不需要账户及密码即可登录服务器。user 表示登录samba服务器需要用户和密码。server 表示检查账户及密码的工作指定由另一台Windows服务器或者samba服务器负责。domain 指定Windows域控制器来验证用户和密码。

[homes]部分详解:
comment 设置共享的说明信息
browseable 设置为no表示所有samba用户的宿主目录都不能被看到,只有登录用户才能看见自己的宿主目录。
writable 设置为yes表示用户可以对该共享目录写入。

更多享目录常见设置项:

    path 用户设置共享目录对应的linux系统目录路径。public 设置为yes表示该共享目录对于所有samba用户是可见的。only guest 设置为yes表示所有用户在使用该共享目录时的用户身份是guest,就是系统用户nobody。writable 设置为yes表示该共享目录对于用户可写。valid users 允许指定用户访问共享目录。

配置用户共享用户

环境说明

服务端IP 客户端IP
192.168.24.248 192.168.24.145

在服务端操作如下

1.环境准备

关闭防火墙和selinux

[root@linfan ~]systemctl disable firewalld
[root@linfan ~]systemctl stop firewalld
[root@linfan ~]sed -i"s/^SELINUX\=enforcing/SELINUX\=disabled/g" /etc/selinux/config
[root@linfan ~]setenforce 0

2.安装samba服务器:

  yum -y install samba-*

3.共享用户配置

 useradd -M lin

为用户lin创建smb共享密码

 smbpasswd -a lin

将lin用户映射为share用户:

 echo 'lin = share' > /etc/samba/smbusers

在全局变量中添加如下内容:

[root@linfan ~]# vi /etc/samba/smb.conf
# See smb.conf.example for a more detailed config file or
# read the smb.conf manpage.
# Run 'testparm' to verify the config is correct after
# you modified it.[global]workgroup = SAMBAsecurity = userusername map = /etc/samba/smbusers  //在此添加

4. 创建一个共享目录lin

[root@linfan ~]# mkdir -p /opt/lin/
[root@linfan ~]# chown -R lin.lin /opt/lin/

5.配置共享

[root@linfan ~]# cat >> /etc/samba/smb.conf <<EOF
> [lin]       //共享目录名称
> comment = lin   //描述
> path = /opt/lin   //共享目录的路径
> browseable = yes   //设置为可见
> guest ok = yes   //设置允许匿名访问
> writable = yes   //设置可写
> write list = share   //只有share用户拥有读权限
> public = yes  //设置匿名可访问
> EOF
[root@linfan ~]# testparm   //测试是否正确
[root@linfan ~]# tail -8 /etc/samba/smb.conf
[lin]
comment = lin
path = /opt/lin
browseable = yes
guest ok = yes
writable = yes
write list = share
public = yes

6.smb服务配置

启动smb服务

[root@linfan ~]# systemctl start smb

重启smb服务

[root@linfan ~]# systemctl restart smb

重新加载smb服务

[root@linfan ~]# systemctl reload smb

设置smb开机自启动

[root@linfan ~]# systemctl enable smb

在客户端操作

1.查看smb服务器共享了哪些资源

[root@linfan ~]# smbclient -L 192.168.24.248 -U share

2.创建挂载目录

[root@linfan ~]# mkdir -p /opt/smb/

3.将smb服务器上的lin挂载到本地

[root@linfan ~]# mount -t cifs //192.168.24.248/lin /opt/smb -o username=share,password=1[root@linfan ~]# df -h
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root   17G  6.0G   12G  35% /
devtmpfs                 478M     0  478M   0% /dev
tmpfs                    489M     0  489M   0% /dev/shm
tmpfs                    489M  6.9M  482M   2% /run
tmpfs                    489M     0  489M   0% /sys/fs/cgroup
/dev/sda1               1014M  125M  890M  13% /boot
tmpfs                     98M     0   98M   0% /run/user/0
/dev/sr0                 4.3G  4.3G     0 100% /mnt
//192.168.24.248/lin      17G  6.0G   12G  36% /opt/smb

4.进入客户端共享目录创建新文件

[root@linfan opt]# cd /opt/smb[root@linfan smb]# mkdir l
[root@linfan smb]# touch k
[root@linfan smb]# ls
k  l

5.在服务端验证

[root@linfan ~]# cd /opt/lin
[root@linfan lin]# ls
k  l

匿名用户共享

环境说明

服务端IP 客户端IP
192.168.24.248 192.168.24.146

在服务端操作如下

1.环境准备

关闭防火墙和selinux

[root@linfan ~]systemctl disable firewalld
[root@linfan ~]systemctl stop firewalld
[root@linfan ~]sed -i"s/^SELINUX\=enforcing/SELINUX\=disabled/g" /etc/selinux/config
[root@linfan ~]setenforce 0

2.安装smb服务

[root@linfan ~]# yum -y install samba-*  

3.编辑配置文件

[root@linfan ~]# vi /etc/samba/smb.conf#See smb.conf.example for a more detailed config file or#read the smb.conf manpage.#Run 'testparm' to verify the config is correct after#you modified it.[global]workgroup = SAMBAsecurity = usermap to guest = Bad User     //在此添加

4. 创建共享目录

[root@linfan ~]# mkdir /opt/doudou
[root@linfan ~]# chmod 777 /opt/doudou
[root@linfan ~]# ll /opt/
total 0
drwxrwxrwx. 2 root root   6 Aug  6 19:08 doudou
drwxr-xr-x. 8 root root 220 Jul 18 17:09 lin.d

5.编辑共享文件

[root@linfan ~]# cat >> /etc/samba/smb.conf <<EOF
> [doudou]
> comment = doudou
> path = /opt/doudou
> browseable = yes
> guest ok = yes
> writable = yes
> public = yes
> EOF
[root@linfan ~]# tail -7 /etc/samba/smb.conf
[doudou]
comment = doudou
path = /opt/doudou
browseable = yes
guest ok = yes
writable = yes
public = yes

6.启动smb服务


[root@linfan ~]# systemctl start smb 

7.在客户端查看smb服务共享 无需输入密码 直接回车即可

[root@linfan ~]# smbclient -L 192.168.24.248 -U'Bad User' 

8.创建挂载目录

[root@linfan ~]# mkdir -p /opt/smb

9.将smb服务器的共享文件doudou 挂载到本地客户端

[root@linfan ~]# mount -t cifs //192.168.24.248/doudou /opt/smb -o username='Bad User'
[root@linfan ~]# df -h  

10.切换到新的共享目录创建文件

[root@linfan ~]# cd /opt/smb
[root@linfan smb]# mkdir lin
[root@linfan smb]# touch wu
[root@linfan smb]# ls
lin  wu    

11.在服务端验证

[root@linfan doudou]# ls
lin  wu

转载于:https://blog.51cto.com/13858192/2155437

smb服务介绍及配置详解相关推荐

  1. 1 企业实战(3) Redis服务部署和配置详解 (资源)

    前言: 环境介绍: CentOS 7.5 Redis 5.0.0 gcc 下载: http://download.redis.io/releases/ 安装redis: [root@localhost ...

  2. Ansible之playbook(剧本)介绍和配置详解

    前言 在上篇博文中讲解了ansible的多个常用的模块,这些模块让ansible具有了管理,部署后端主机的能力,但是一个一个命令的执行明显很浪费时间,那么能不能有一个文件类似于shell脚本那样可以把 ...

  3. MyBatis(一)MyBatis介绍和配置详解

    在Java程序里面去操作数据库,最原始的办法是使用JDBC的API.需要分为六步: 注册驱动 通过DriverManager获取一个Connection 通过Connection创建一个Stateme ...

  4. redis服务部署及配置详解

    Redis是一种高级key-value数据库.它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富.有字符串,链表,集合和有序集合.支持在服务器端计算集合的并,交和补集(diffe ...

  5. 华为防火墙的NAT介绍及配置详解

    一.华为防火墙NAT的六个分类 华为防火墙的NAT分类: NAT No-PAT:类似于Cisco的动态转换,只转换源IP地址,不转换端口,属于多对多转换,不能节约公网IP地址,使用情况较少. NAPT ...

  6. slf4j介绍及配置详解

    首先maven构建项目,在pom.xml中添加下面代码.<dependency><groupId>org.slf4j</groupId><artifactId ...

  7. win10安装oracle11g 服务端及配置详解

    第一部分:Oracle 11g 的安装 一.准备工作 修改文件cvu_prereq,使之能够通过Oracle的环境检查 文件位置:Database\stage\cvu 文件名称:cvu_prereq. ...

  8. [Samba] Linux(Centos)samba服务安装,Samba文件共享及Samba配置详解

    本片博客主要介绍了[Samba] Linux(Centos)samba文服务器安装案例,samba共享,samba服务,samba配置详解及网页配置samba工具samba-swat 的使用方法等. ...

  9. Tacacs-服务搭建与配置详解

    其他文章: Tacacs+协议原理 Tacacs+服务搭建与配置详解 Tacacs+各厂商交换机配置 Tacacs+协议交互报文抓包示例 简介 tac_plus是TACACS +守护程序.它为网络设备 ...

最新文章

  1. ros创建功能包和编译过程问题处理
  2. linux笔记之 raid
  3. CMDB学习之三数据采集
  4. 前端学习(2154):webpack横幅plugin的使用
  5. 使用DOM4J解析XML时非法字符Exception
  6. super在python中有什么用
  7. (转)shiro权限框架详解06-shiro与web项目整合(下)
  8. 浙大PAT CCCC L3-014 周游世界 ( 最短路变形 )
  9. Clion添加Posix消息队列的-lrt连接
  10. 一种内存泄露检查和定位的方法
  11. python 入门基础-Python入门基础
  12. 以前看书时记得一些笔记(二),很早了,现在再看都有些看不懂了
  13. 2020年日历电子版(打印版)_2020年《故宫日历》(青少版)背后的巧思有多少?...
  14. VS code,Live Server更改默认浏览器
  15. GCKontrol与嵌入式系统:STM32实现电机控制案例
  16. Android Apk 签名方案
  17. 密码学之数字签名是什么
  18. SpringBoot响应式编程(整理一)
  19. VsCode打开终端的方法
  20. yolov5模型pt转wk(HISI3559)

热门文章

  1. 如何操作网站排名能稳中带升
  2. 关于mybatis 的parameterType问题分析
  3. Jetpack支持库CameraX使用入门——相机预览
  4. Python 学习等级(五个阶段)
  5. 修改video标签默认样式问题video播放器样式优化;video播放器默认显示图片
  6. 从 0 到 1,高校“王者”手把手教你做原型设计中最靓的崽
  7. 神经网络学习——图像篡改
  8. 基于Python的指数基金量化投资——指数包含的个股数据获取
  9. 网吧可以用瘦终端加服务器么,带机量:100台的两种无盘网吧服务器配置方案,比较下...
  10. markdown工具对比: 作业部落 vs Typora