配置SMB共享,跨平台的共享,Windows与Linux的共享

• Samba 软件项目

用途:为客户机提供共享使用的文件夹

协议:SMB(TCP 139)、CIFS(TCP 445)

• 所需软件包:samba

• 系统服务:smb

Samba共享帐号:专门用于访问Samba共享时验证的用户与密码,默认情况下,访问Samba共享必须通过用户验证

pdbedit -a 用户名  :添加用户,与系统用户为同一个用户,但是密码时samba独立密码

pdbedit -L [用户名] :查询用户

pdbedit -x 用户名  :删除用户

• 修改 /etc/samba/smb.conf

[自定共享名]

path = 文件夹绝对路径

; public = no|yes //默认no

; browseable = yes|no //默认yes

; read only = yes|no //默认yes

; write list = 用户1 .. .. //默认无

; valid users = 用户1 .. .. //默认任何用户

; hosts allow = 客户机地址 .. ..

; hosts deny = 客户机地址 .. ..

服务端,虚拟机Server:

1.安装可以提供smb共享功能的软件

[root@server0 ~]# yum -y install samba

2.建立Samba共享验证的用户

[root@server0 ~]# useradd harry

[root@server0 ~]# useradd kenji

[root@server0 ~]# useradd chihiro

[root@server0 ~]# pdbedit -a harry   #添加为Samba共享帐号

[root@server0 ~]# pdbedit -a kenji   #添加为Samba共享帐号

[root@server0 ~]# pdbedit -a chihiro #添加为Samba共享帐号

[root@server0 ~]# pdbedit  -L       #查看所有Samba共享帐号

3.创建共享目录与文件

[root@server0 ~]# mkdir /common

[root@server0 ~]# echo 123 > /common/123.txt

4.修改配置/etc/samba/smb.conf

[global]

89行  workgroup = STAFF       #指定工作组名

[common]                      #指定共享名

path = /common       #指定共享文件夹的实际绝对路径

5.重起smb服务,刷新配置

[root@server0 ~]# systemctl restart smb   #重起服务

[root@server0 ~]# systemctl enable smb    #设置为开机自起

6. 查看samba 布尔值

[root@server0 ~]# getsebool -a  | grep samba

7.修改SELinux策略的布尔值

[root@server0 ~]# setsebool samba_export_all_ro on

8. 查看samba 布尔值

[root@server0 ~]# getsebool -a  | grep samba

客户端虚拟机Desktop:

samba-client访问

1.安装客户端软件,访问samba共享

[root@desktop0 ~]# yum -y install samba-client

2. 查看服务端samba共享,目的看 共享名

[root@desktop0 ~]# smbclient -L //172.25.0.11

Enter root's password:   #直接敲回车

Sharename

common

3.以harry身份,访问服务端samba共享

[root@desktop0 ~]# smbclient -U harry //172.25.0.11/common

Enter harry's password:   #输入密码

Domain=[STAFF] OS=[Unix] Server=[Samba 4.1.1]

smb: \>

使用 mount 挂载访问

• 所需软件包:cifs-utils    #支持cifs协议

临时挂载

# yum -y install cifs-utils 安装cifs

# mkdir /mnt/samba  创建挂载目录

# mount -o user=harry,pass=123   //172.25.0.11/common  /mnt/samba/ 挂载

# df  -h

开机自动挂载

_netdev : 网络设备,先启动网络服务,具备网络参数后,再进行挂载

[root@desktop0 ~]# yum -y install cifs-utils

[root@desktop0 ~]# mkdir  /mnt/samba

[root@desktop0 ~]# vim  /etc/fstab

//172.25.0.11/common  /mnt/samba  cifs   defaults,user=harry,pass=123,_netdev  0  0

[root@desktop0 ~]# mount  -a

[root@desktop0 ~]# df  -h       #查看是否挂载成功

读写的Samba共享

服务端虚拟机Server:

1.部署共享

[root@server0 ~]# mkdir  /devops

[root@server0 ~]# echo nsd > /devops/test.txt

[root@server0 ~]# ls /devops

[root@server0 ~]# vim /etc/samba/smb.conf  #修改配置文件,追加写入

[devops]                       #共享名

path = /devops               #路径为/devops

write list = chihiro         #允许chihiro用户可写

[root@server0 ~]# systemctl restart smb

2.修改SELinux策略

[root@server0 ~]# getsebool -a | grep samba

[root@server0 ~]# setsebool samba_export_all_rw on

[root@server0 ~]# getsebool -a | grep samba

3.用户本身的本地权限

[root@server0 ~]# setfacl -m u:chihiro:rwx /devops

[root@server0 ~]# getfacl /devops

[root@server0 ~]# ls -l /devops

客户端虚拟机desktop

实现开机自动挂载

[root@desktop0 ~]# mkdir /mnt/pub

[root@desktop0 ~]# vim  /etc/fstab

//172.25.0.11/devops  /mnt/pub    cifs    defaults,user=chihiro,pass=123,_netdev  0 0

[root@desktop0 ~]# mount -a

[root@desktop0 ~]# df -h

总结:客户端访问服务端资源

1.服务本身的访问控制

2.本的目录的权限

3.防火墙

4.SELinux

multiuser机制,专门为普通用户设计,专为客户端设计,必要的时候,任何普通用户都可以通过命令切换成权限较大的用户来临时获取写的权限

multiuser,提供对客户端多个用户身份的区分支持

sec=ntlmssp,提供NT局域网管理安全支持

客户端虚拟机Desktop:

[root@desktop0 ~]# vim  /etc/fstab

//172.25.0.11/devops  /mnt/pub   cifs    defaults,user=kenji,pass=123,_netdev,multiuser,sec=ntlmssp    0   0

[root@desktop0 ~]# umount  /mnt/pub

[root@desktop0 ~]# mount -a

[root@desktop0 ~]# su - student

[student@desktop0 ~]$ cifscreds add -u chihiro 172.25.0.11   切换高权限用户访问

[student@desktop0 ~]$ ls /mnt/pub

[student@desktop0 ~]$ exit

Samba 服务基础的更多相关文章

  1. linux基础-第十七单元 Samba服务

    Samba的功能 Samba的安装 Samba服务的启动.停止.重启 Samba服务的配置 Samba服务的主配置文件 samba服务器配置实例 Samba客户端设置 windows客户端 Linux ...

  2. SAMBA服务和FTP服务讲解(week3_day1)--技术流ken

    samba服务 Smb主要作为网络通信协议; Smb是基于cs架构: 完成Linux与windows之间的共享:linux与linux之间共享用NFS 第一步:安装samba [root@ken ~] ...

  3. 末学者笔记——SAMBA服务、FTP服务讲解

    samba服务 一.概念: Smb主要作为网络通信协议; Smb是基于cs(client,sever)架构: 完成Linux与windows之间的共享:linux与linux之间共享用NFS   二. ...

  4. 使用Samba服务实现文件共享

    1.在虚拟机上安装Samba服务安装包 (在下载之前检查客户机与服务器是否能够ping通) (鼠标右击桌面,打开终端,测试和yum是否能够ping通,下面的命令行是我的yum的IP地址) [root@ ...

  5. SAMBA服务和FTP服务讲解

    rz sz window和Linux之间小文件的传输 yum install lrzsz -y rz:window文件传送到linux中 sz:把Linux文件传送到window 防火墙: 立即关闭但 ...

  6. Linux网络配置 RPM命令 samba服务 Linux目录结构

    第一种方法: (1)用root身份登录,运行setup命令进入到 text mode setup utiliy对网络进行配置,这里可以进行ip,子网掩码,默认网关,dns的设置.(2)这时网卡的配置没 ...

  7. 搭建SAMBA服务

    说明:这里是Linux服务综合搭建文章的一部分,本文可以作为单独搭建SABMA服务的参考. 注意:这里所有的标题都是根据主要的文章(Linux基础服务搭建综合)的顺序来做的. 如果需要查看相关软件版本 ...

  8. samba服务

    安装samba服务步骤ps -e 查看进程ps -e | grep 文件名 管道符的使用rpm -qa 安装包的查看rpm -qa | grep samba 抓Samba安装包 注释:包与包之间有依赖 ...

  9. OpenWrt中开启usb存储和samba服务

    在从官网安装的WNDR3800 15.05.1版本OpenWrt中, 不带usb存储支持以及samba, 需要另外安装 1. 启用usb支持 USB Basic Support https://wik ...

随机推荐

  1. node-Get&POST

    Node.js GET/POST请求 var http = require('http'); var url = require('url'); var util = require('util'); ...

  2. openstack虚拟机从数据库修改卷虚拟机backend操作

    由于意外故障,volume-type其中一个backend后段出现性能问题,客户云主机出现卡顿. 因此临时从ceph将系统卷导出,并导入至同一个backend的另一个后端,并启动虚拟机. Nova C ...

  3. spring和mybatis整合时Access denied for user '***'@'localhost' (using password: YES)错误的解决方案

    参考文章:博客园文章 参考解决办法: 将数据库配置文件格式 key=value 改为 jdbc.key=value 以下为问题分析 使用Spring + Mybatis + Mysql整合时,测试报错 ...

  4. mysql-创建用户并授权,设置允许远程连接

    一.创建用户并授权 1.登录mysql mysql -u root -q 2.创建数据库 create database dbdata;//以创建dbdata为例 3.创建用户 创建user01,只能 ...

  5. HelloGitHub 小程序上线了,蛋只有一个搜索功能

    作者:HelloGitHub-卤蛋 我是...蛋蛋啊,本文是我从零开发「HelloGitHub 小程序」的开发日记,不要把这个系列当作技术文章来读,你将会收获更多的乐趣.‍♂️ 我只是个 Python ...

  6. C# 多线程技术

    这节讲一下多线程(Thread)技术. 在讲线程之前,先区分一下程序,进程,线程三者的区别,大体上说,一个程序可以分为多个进程,一个进程至少由一个线程去执行,它们是层层包含的关系.我们写的程序,就是一 ...

  7. [在学习Django框架之前所需要了解的知识点]

    [在学习Django框架之前所需要了解的知识点] Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现 ...

  8. where优先级

    select name from emply where id >5; 先找表from emply 再找条件 where id >5 最后打印 你想打印的字段 可以把select看成打印 ...

  9. 10.Debug

    1.Debug模式 1.1 什么是Debug模式 是供程序员使用的程序调试工具,它可以用于查看程序的执行流程,也可以用于追踪程序执行过程来调试程序. 1.2 Debug介绍与操作流程 Debug调式, ...

  10. 列表 元组 sort

    列表 增append insert extend 迭代增加删 remove delete pop clear改 li[索引]="被修改的内容":切片"" 列表 ...