接着上篇博客继续:

Samba 基本配置

[root@server2 ~]# rpm -qc samba-common             //查看smb的配置文件

1、黑、白名单的设定

默认白名单,设置的ip是黑名单用户:hosts deny = ip
默认黑名单,设置的ip是白名单用户:hosts allow = ip

黑名单 :

        假设不允许ip为172.25.1.2的的主机登陆

服务器端 :

[root@server1 ~]# vim /etc/samba/smb.conf           //编辑配置文件

hosts deny = 172.25.1.2

[root@server1 ~]# systemctl restart smb.service         //服务重启

此时,客户端:

[root@server2 ~]# smbclient -L //172.25.1.1/ -U student                 //服务被拒绝

白名单:

假设只允许ip为172.25.1.2的的主机登陆

服务器端:

[root@server1 samba]# vim /etc/samba/smb.conf             //将黑名单注释掉,并添加白名单

[root@server1 ~]# systemctl restart smb.service        //重启服务

此时,客户端:

[root@server2 ~]#  smbclient //172.25.1.1/student -U student               //可以登陆

2、smb 共享目录

非系统目录的共享

服务器端:

[root@server1 ~]# mkdir /westos

[root@server1 ~]# touch /westos/file{1..5}           //目录下创建文件

修改安全上下文,这里出现了点问题;

[root@server1 ~]# semanage fcontext -a -t samba_share_t '/westos(/.*)?'              //提示没有semanage这个命令
-bash: semanage: command not found

[root@server1 ~]# yum install -y semanage

Loaded plugins: product-id, search-disabled-repos, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
No package semanage available.
Error: Nothing to do

[root@server1 ~]# yum provides semanage

Loaded plugins: product-id, search-disabled-repos, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
rhel7.5/filelists_db                                              | 3.4 MB  00:00:00     
policycoreutils-python-2.5-22.el7.x86_64 : SELinux policy core python utilities
Repo        : rhel7.5
Matched from:
Filename    : /usr/sbin/semanage

[root@server1 ~]# yum -y install policycoreutils-python

[root@server1 ~]# semanage fcontext -a -t samba_share_t '/westos(/.*)?'               //此时修改安全上下文

[root@server1 ~]# restorecon -FvvR /westos/                     //刷新

[root@server1 ~]# semanage fcontext -l | grep /westos           //过滤查看/westos的安全上下文修改是否成功

[root@server1 ~]# vim /etc/samba/smb.conf

[DIR]                      //可以看到的共享目录的名称
comment = westos file   //对共享目录的描述
path = /westos                //共享目录的绝对路径

[root@server1 ~]# systemctl restart smb.service              //重启服务

客户端:

[root@server2 ~]# smbclient //172.25.1.1/DIR               //匿名登陆
Enter SAMBA\root's password:
Anonymous login successful
tree connect failed: NT_STATUS_ACCESS_DENIED             //登录失败,则匿名用户不可以登陆
[root@server2 ~]# smbclient //172.25.1.1/DIR -U student        //student登陆
Enter SAMBA\student's password:
Try "help" to get a list of possible commands.                  //登陆成功
smb: \> ls
  .                                   D        0  Tue Mar  5 07:17:42 2019
  ..                                 DR        0  Tue Mar  5 07:16:09 2019
  file1                               N        0  Tue Mar  5 07:17:42 2019
  file2                               N        0  Tue Mar  5 07:17:42 2019
  file3                               N        0  Tue Mar  5 07:17:42 2019
  file4                               N        0  Tue Mar  5 07:17:42 2019
  file5                               N        0  Tue Mar  5 07:17:42 2019

17811456 blocks of size 1024. 16542024 blocks available
smb: \> quit                 //退出

系统目录的共享

服务端:

[root@server1 ~]# vim /etc/samba/smb.conf

[root@server1 ~]# systemctl restart smb.service                
[root@server1 ~]# setsebool -P samba_export_all_ro on              //打开该布尔值后可以共享所有目录,比安全上下文的级别高

[root@server1 ~]# ls /mnt
westos

客户端:

[root@server2 ~]# smbclient //172.25.1.1/DIR -U student

smb 权限管理

browseable = no | yes ——更改此参数,不用重启服务
no ——将该共享目录设置为隐藏
yes——将该共享目录设置为显示
writable = yes|no ——更改此参数,需要重启服务

no | yes —— 设置用户是否可写(所有用户)
write list = student ——更改此参数,需要重启服务

允许用户 student 进行写操作(相当于白名单)
write list = @student ——更改此参数,需要重启服务

只允许属于 student 组的用户进行写操作
admin users = 用户名 ——更改此参数,需要重启服务

1.隐藏该共享目录

服务端:

[root@server1 ~]# vim /etc/samba/smb.conf

[root@server1 ~]# systemctl restart smb.service

客户端:

[root@server2 ~]#  smbclient -L //172.25.1.1

2.显示该共享目录,且可写

服务器端:

[root@server1 ~]# vim /etc/samba/smb.conf

[root@server1 ~]# systemctl restart smb.service

[root@server1 ~]# chmod 777 /mnt

客户端:

[root@server2 ~]# mount //172.25.1.1/DIR /mnt -o username=student,password=redhat

[root@server2 ~]# mount //172.25.1.1/DIR /mnt -o username=student,password=redhat
[root@server2 ~]# cd /mnt/
[root@server2 mnt]# ls
westos
[root@server2 mnt]# touch file1
[root@server2 mnt]# ls
file1  westos

[root@server2 mnt]# cd
[root@server2 ~]# umount /mnt/

**************************************

以此类推。。。。。。

smb 多用户挂载

客户端:

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

[root@server2 ~]# vim /root/smbpass               //根据挂载规则编写认证所需的文件

[root@server2 ~]# mount -o credentials=/root/smbpass,sec=ntlmssp,multiuser //172.25.1.1/DIR /mnt

//挂载,其中,credentials=/root/smbpass文件指定的用户名、密码,sec=ntlmssp 认证方式认证方式是ntlmssp;查询方式:rpm -ql | grep samba, multiuser为多用户挂载

[root@server2 ~]# df

[root@server2 ~]# cd /mnt/
[root@server2 mnt]# ls
file1  westos
[root@server2 mnt]# useradd file2        //创建用户file2
[root@server2 mnt]# su - file2         //切换到普通用户file2
[file2@server2 ~]$ cd /mnt             
[file2@server2 mnt]$ ls         //无法查看 ,必须指定用户挂载通过smb认证才可以查看

ls: reading directory .: Permission denied
[file2@server2 mnt]$ exit
logout

[root@server2 mnt]# cifscreds --help          //查看相关命令

cifscreds: unrecognized option '--help'
Usage:
    cifscreds add [-u username] [-d] <host|domain>
    cifscreds clear [-u username] [-d] <host|domain>
    cifscreds clearall
    cifscreds update [-u username] [-d] <host|domain>

[root@server2 mnt]# su - file2
Last login: Tue Mar  5 10:02:55 EST 2019 on pts/0
[file2@server2 ~]$ cifscreds add -u student 172.25.1.1                //需要通过smb认证
Password:
[file2@server2 ~]$ cd /mnt/
[file2@server2 mnt]$ ls            //此时可以查看mnt下面的文件

file1  westos

smb 匿名用户访问

服务器端:

[root@server1 ~]# vim /etc/samba/smb.conf

[root@server1 ~]# systemctl restart smb.service

客户端:

[root@server2 mnt]$ smbclient //172.25.1.1/DIR

//即匿名用户此时可以访问到

[root@server2 ~]# mount //172.25.1.1/DIR /mnt -o username=guest,password=""

cifs------网络文件系统(2)相关推荐

  1. 【unit7 unit9】cifs网络文件系统访问;vsftp服务

    ****************************** ******7.访问网络文件系统********* ****************************** ****cifs网络文件 ...

  2. cifs网络文件系统

    搭建实验环境:创建两台虚拟机,确保两台虚拟机的网络互通,给虚拟机1添加大小为10G的硬盘,在虚拟机2中安装samba-client, 1.samba服务简介 smb = Server Message ...

  3. 《Linux菜鸟入门2》访问网络文件系统

    1.cifs网络文件系统访问 1.安装共享访问客户端 yum install samba-client -y 2.识别共享服务器共享目录 smbclient -L //172.25.254.253 3 ...

  4. CIFS(通用网络文件系统)

    一,smb服务概述 CIFS(通用网络文件系统)也称为SMB(服务器消息块),是一种网络协议,最常见的用途是共享局域网的文件.允许客户端对文件进行操作. samba服务程序:为了解决linux系统与w ...

  5. 网络文件系统访问与ftp服务

    [**cifs网路文件系统访问**] 1.安装共享访问客户端 yum install sssd krb5-workstation.x86_64 -y 2.识别共享服务器共享目录 smbclient - ...

  6. NFS(网络文件系统)简介及搭建

    NFS简介及搭建 网络文件系统 定义 演化 特点 工作原理 网络文件系统架构 网络文件系统协议 网络文件系统中的创新 网络文件系统的替代物 部署NFS 实验环境 安装nfs.rpcbind服务 在no ...

  7. samba,nfs,iscsi网络文件系统

    目录 一.samba服务介绍 二.windows系统下实现文件共享 二.Linux中用samba服务实现文件共享 1.samba 的安装与启用 1. 添加samba用户(samba用户必须是本地用户) ...

  8. Linux自动挂载网络文件系统

    一.NFS NFS是基于UDP/IP协议的应用,其实现主要是采用远程过程调用RPC机制,RPC提供了一组与机器.操作系统以及低层传送协议无关的存取远程文件的操作. yum -y install nfs ...

  9. SMB小传 —— SMB网络文件系统协议介绍

    SMB网络文件系统协议, 全名服务器消息块(Server Message Block),曾用名CIFS(通用互联网文件系统 Common Internet File System), 公元1983年诞 ...

  10. Samba服务器访问CIFS网络共享文件

    Samba服务器访问CIFS网络共享文件 一.基础信息 用Internet文件系统CIFS(Common Internet File System)也称为服务器信是适用于MicrosoftWindow ...

最新文章

  1. datatable数据插入mysql_DataTable 数据更新、删除、插入 数据库 操作
  2. POJ2337 欧拉路径字典序输出
  3. Netty详解(七):Netty 编解码以及消息头编解码器
  4. 网络学习云平台 计算机基础应用,计算机应用基础网络自主学习平台使用说明.doc...
  5. 没有基础的人可以学python吗-今天就来告诉你,没有编程基础的人适不适合学python...
  6. 番茄助手破解找到VA_X.dll的位置
  7. 泛微E9 获取附件内容,泛微Ecology9获取附件范例,Ecology9附件、E9 附件下载及上传集成平台
  8. Unity3D协程介绍以及使用
  9. 先是艾瑞咨询后是腾讯,永洪科技把客户变成了投资人
  10. 原win7系统迁移到SSD固态硬盘
  11. 关于AI,值得推荐的五本好书
  12. 日常开发用到的谷歌浏览器插件
  13. 例2-22 正弦信号的微分运算和积分运算
  14. Excel 下拉多选的设置
  15. mysql 8.0 初识
  16. 推荐几个9月爆火的 GitHub 电商项目
  17. iOS App处于后台/被杀死的状态仍可进行语言播报的实现 (适配iOS12.1 ,iOS15的本地通知功能)
  18. 如何理解矩阵的「秩」?
  19. XML Guest Book
  20. 【akka】Akka源码分析-local-DeathWatch

热门文章

  1. [微信小程序]单选框以及多选框实例代码附讲解
  2. Swift iOS : 字体图标
  3. iOS - APP任意push新页面那些事
  4. ie9下console不兼容的问题
  5. 如果有电脑——计算机达人成长之路(36)
  6. 【Cocos2d开发】Cocos2d下安卓环境的搭建
  7. java 产生的固体物的基础上 增删改的SQL声明
  8. postfix邮件服务器搭建
  9. [K/3Cloud]关于数据库sa密码更改,管理中心登录不上的问题。
  10. 关于服务器启动慢的问题