配置samba和NFS共享服务

1案例1:配置SMB文件夹共享

1.1问题

本例要求在虚拟机server0上发布两个共享文件夹,具体要求如下:

此服务器必须是STAFF工作组的一个成员

发布目录/common,共享名为common

发布目录/devops,共享名为devops

这两个共享必须是可浏览的,只有example.com域内的客户端可以访问

用户harry对共享common只读,密码是migwhisk

用户kenji对共享devops只读,密码是atenorth

用户chihiro对共享devops可读写,密码是atenorth

1.2方案

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

Samba服务端:软件包samba、系统服务smb

Samba客户端:软件包samba-client和cifs-utils、客户端工具smbclient

传输协议及端口:TCP 139、TCP 445

Samba服务端配置文件:/etc/samba/smb.conf

Samba共享账号:存在独立的账号数据文件里,必须有同名系统账号(方便给权限)

Samba账号管理工具:

Pdbedit -a用户名

Pdbedit -L[用户名]

Pdbedit -x用户名

测试Samba共享资源:

Smbclient -L服务器地址【密码为空(直接回车)】

Smbclient -U用户名//服务器地址/共享名【需要密码】

1.3步骤

实现此案例需要按照如下步骤进行。

步骤一:在服务器server0发布Samba共享文件夹

1)安装软件包samba

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

....

2)创建共享账号

添加共享账号harry,密码为migwhisk:

[root@server0~]#useradd harry

[root@server0~]#pdbedit -a harry//根据提示设好密码migwhisk

new password:

retype new password:

添加共享账号kenji,密码为atenorth:

[root@server0~]#useradd kenji

[root@server0~]#pdbedit -a kenji//根据提示设好密码atenorth

new password:

retype new password:

添加共享账号chihiro,密码为atenorth:

[root@server0~]#useradd chihiro

[root@server0~]#pdbedit -a chihiro//根据提示设好密码atenorth

new password:

retype new password:

确认共享账号:

[root@server0~]#pdbedit -L

harry:1003:

chihiro:1005:

kenji:1004:

3)准备共享文件夹

[root@server0~]#mkdir /common

[root@server0~]#mkdir /devops

[root@server0~]#setfac l-m u:chihiro:rwx/devops//配置写入权限

4)调整SELinux开关策略,允许发布可写的Samba共享资源

[root@server0~]#getsebool -a | grep^samba_exp//默认配置

samba_export_all_ro-->off

samba_export_all_rw-->off

[root@server0~]#setsebool -P samba_export_all_rw=on//永久打开设置

[root@server0~]#getsebool- a | grep^samba_exp//查看结果

samba_export_all_ro-->off

samba_export_all_rw-->on

5)配置共享目录

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

[global]

workgroup=STAFF

....

[common]

path=/common

hosts allow=172.25.0.0/24

[devops]

path=/devops

hosts allow=172.25.0.0/24

write list=chihiro

6)启动系统服务smb,并设置开机自启

[root@server0~]#systemctl restart smb

[root@server0~]#systemctl enable smb

ln-s'/usr/lib/systemd/system/smb.service''/etc/systemd/system/multi-user.target.wants/smb.service'

[root@server0~]#netstat-antpu|grep smb

tcp 0 0 0.0.0.0:445 0.0.0.0:*LISTEN 4709/smbd

tcp 0 0 0.0.0.0:139 0.0.0.0:*LISTEN 4709/smbd

步骤二:在客户机desktop0测试Samba共享资源

1)安装软件包samba-client

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

....

2)浏览目标主机提供了哪些共享资源

[root@desktop0~]#smbclient -L server0.example.com

Enter root's password://此处无需输入密码,直接回车

Anonymous login successful

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

Sharename Type Comment

--------------------

common Disk

devops Disk

IPC$IPC IPC Service(Samba Server Version 4.1.1)

Anonymous login successful

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

Server Comment

----------------

Workgroup Master

----------------

3)连接到目标主机的共享目录

[root@desktop0~]#smbclient -U harry//server0.example.com/common

Enter harry's password://输入harry的密码

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

smb:\>ls//检查是否可列出目录内容

.D 0 Sun Nov 27 03:07:29 2016

..D 0 Sun Nov 27 03:07:32 2016

40913 blocks of size 262144.27826 blocks available

smb:\>quit//退出smb:\>交互环境

[root@desktop0~]#


案例2:多用户Samba挂载

2.1问题

本例要求在虚拟机desktop0上访问server0提供的共享devops,特性如下:

将此共享永久挂载在/mnt/dev目录

挂载时以用户kenji作为认证

必要的时候,任何普通用户都可以通过用户chihiro来临时获取写的权限

2.2方案

Samba客户端的multiuser挂载:支持切换访问Samba共享的用户身份,但不需要重新挂载共享资源。挂载参数需要添加“multiuser,sec=ntlmssp”,客户机上的普通用户可以通过cifscreds命令提交新的身份凭据。

在客户端挂载Samba共享目录,需要软件包cifs-utils的支持。

为访问网络资源配置开机挂载时,注意添加参数“_netdev”,表示等客户机网络配置可用以后才挂载对应资源。

2.3步骤

实现此案例需要按照如下步骤进行。

步骤一:挂载Samba共享目录

1)创建挂载点

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

2)安装cifs-utils软件包

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

....

3)配置开机挂载

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

....

//server0.example.com/devops/mnt/dev cifs username=kenji,password=atenorth,_netdev 0 0

4)测试挂载配置

[root@desktop0~]#mount -a

[root@desktop0~]#df -hT /mnt/dev

Filesystem Type Size Used Avail Use%Mounted on

//server0.example.com/devops cifs 10G 3.2G 6.8G 32%/mnt/dev

步骤二:启用multiuser多用户支持

1)修改挂载配置,添加多用户支持

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

....

//server0.example.com/devops/mnt/dev cifs username=kenji,password=atenorth,multiuser,sec=ntlmssp,_netdev 0 0

[root@desktop0~]#umount  /mnt/dev //卸载此共享

[root@desktop0~]#mount /mnt  /dev/  /重新挂载此共享

2)验证多用户访问

切换到普通用户student验证,无权访问挂载点/mnt/dev:

[root@desktop0~]#su - student

Last login:Sun Nov 27 03:51:32 CST 2016 on pts/0

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

ls:cannot access/mnt/dev:Permission denied

以共享用户chihiro身份提交新的访问凭据,再次验证,对挂载点/mnt/dev可读写:

[student@desktop0~]$cifscreds -u chihiro add server0.example.com

Password://输入共享账号chihiro的密码

[student@desktop0~]$touch /mnt/dev/a.txt

[student@desktop0~]$ls /mnt/dev/a.txt

/mnt/dev/a.txt


案例3:普通NFS共享的实现

3.1问题

本例要求在虚拟机server0上配置NFS服务,完成以下任务:

只读的方式共享目录/public,只能被example.com域中的系统访问

可读写共享目录/protected,能被example.com域中的系统访问

然后在虚拟机desktop0上访问NFS共享目录

将server0的/public挂到本地/mnt/nfsmount

这些文件系统在系统启动时自动挂载

3.2方案

对于普通NFS共享来说:

服务端需要运行系统服务nfs-server.service

客户端不需要运行特定的系统服务

配置NFS共享目录的记录格式:

文件夹绝对路径客户地址1(ro或rw等控制参数)客户地址2(ro或rw等控制参数)....

3.3步骤

实现此案例需要按照如下步骤进行。

步骤一:在server0上发布NFS共享目录

1)准备需要共享的文件夹

[root@server0~]#mkdir /public

[root@server0~]#mkdir /protected

2)建立NFS共享配置

[root@server0~]#vim /etc/exports

/public 172.25.0.0/24(ro)

/protected 172.25.0.0/24(rw)

3)启动系统服务nfs-server,并设置开机自启

[root@server0~]#systemctl restart nfs-server

[root@server0~]#systemctl enable nfs-server

ln-s'/usr/lib/systemd/system/nfs-server.service''/etc/systemd/system/nfs.target.wants/nfs-server.service'

步骤二:在desktop0上挂载NFS共享目录/public

1)创建挂载点

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

2)列出server0上提供的NFS共享资源

[root@desktop0~]#showmount -e server0.example.com

Export list for server0.example.com:

/protected 172.25.0.0/24

/public 172.25.0.0/24

3)配置开机挂载server0的NFS共享目录/public

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

....

server0.example.com:/public  /mnt/nfsmount nfs _netdev 0 0

4)测试挂载配置

[root@desktop0~]#mount -a

[root@desktop0~]#df -hT /mnt/nfsmount/

Filesystem Type Size Used Avail Use%Mounted on

server0.example.com:/public nfs4 10G 3.2G 6.8G 32%/mnt/nfsmount

配置samba和NFS共享服务的更多相关文章

  1. Cluster基础(一):配置iSCSI服务、编写udev规则、配置并访问NFS共享、部署Multipath多路径环境

    一.配置iSCSI服务 目标: 本案例要求先搭建好一台iSCSI服务器,并将整个磁盘共享给客户端: 虚拟机添加新的磁盘 将新添加的磁盘分区并创建两个逻辑卷 逻辑卷名称分别为:/dev/myvg/isc ...

  2. 懂得分享 Linux 配置NFS共享服务

    部署YUM仓库及NFS共享服务一.YUM概述    YUM (Yellow dog Updater Modified)二.准备安装源    ① 软件仓库的提供方式    ② RPM软件包的来源    ...

  3. redhat 安装配置samba实现win共享linux主机目录

    [转]http://blog.chinaunix.net/uid-26642180-id-3135941.html redhat 安装配置samba实现win共享linux主机目录 2012-03-1 ...

  4. NFS共享服务

    一.网络文件系统共享服务 NFS( Network File System,网络文件系统 )是一种基于TCP/IP传输的网络文件系统协议,最初由SUN公司开发,通过使用NFS协议,客户机可以像访问本地 ...

  5. Linux网络服务12——NFS共享服务

    Linux网络服务12--NFS共享服务 一.NFS简介 端口号:TCP.UDP 111端口 NFS(Network File System)网络文件系统,是一种基于TCP/IP传输的网络文件系统协议 ...

  6. 配置并访问NFS共享

    NFS服务器 192.168.2.5 NFS客户机 192.168.2.100 软件包nfs-utils用来提供NFS共享服务及相关工具,而软件包rpcbind用来提供RPC协议的支持 服务器 修改/ ...

  7. Linux网络服务第五章NFS共享服务

    1.笔记 NFS一般用在局域网中,网络文件系统c/s格式 服务端s:设置一个共享目录 客户端c:挂载使用这个共享目录 rpc:111远程过程调用机制 Showmount -e:查看共享目录信息 def ...

  8. 部署yum仓库以及NFS共享服务

    目录: 一.YUM概述 二.准备安装源 三.访问YUM仓库 四.本地YUM仓库 五.YUM工具概述 六.软件包查询.安装.卸载 七.NFS共享 一.YUM概述 YUM(Yellow dog Updat ...

  9. 部署YUM仓库及NFS共享服务

    部署YUM仓库及NFS共享服务 目录 部署YUM仓库及NFS共享服务 一.YUM仓库服务 1. YUM概述 2. 部署YUM软件仓库 (1)准备安装源 ①YUM仓库的种类 ②RPM软件包的来源 ③构建 ...

随机推荐

  1. 关于 服务器ip和域名进行一个绑定

    最近想让人访问我做个一个网站,但是我发现让服务器ip地址直接暴露不是很好 (做着玩) 于是就去阿里云买了一个5块1年的域名 先在网上百度了一下是怎么绑定域名的,发现全是含糊不清的信息,果然是垃圾百度 ...

  2. 如何在国内离线安装Chrome扩展并科学查资料

    国内离线安装Chrome扩展 这些链接是从知乎国内离线安装 Chrome 扩展程序的方法总结 - 知乎看到的, 怕这个链接失效, 在这里自己备一份: Crx4Chrome - Download CRX ...

  3. 结题报告--hih0CoderP1041

    题目:点此 描述 小Hi和小Ho准备国庆期间去A国旅游.A国的城际交通比较有特色:它共有n座城市(编号1-n):城市之间恰好有n-1条公路相连,形成一个树形公路网.小Hi计划从A国首都(1号城市)出发 ...

  4. 在Windows中像Linux里一样使用CMake和make

    1. 安装GCC环境 1.1 安装MinGW(Minimalist GNU for Windows) 首先下载MinGW,并安装.安装完成之后运行MinGW Installer.界面如下.勾选自己需要 ...

  5. GO语言web框架Gin之完全指南(二)

    这篇主要讲解自定义日志与数据验证 参数验证 我们知道,一个请求完全依赖前端的参数验证是不够的,需要前后端一起配合,才能万无一失,下面介绍一下,在Gin框架里面,怎么做接口参数验证的呢 gin 目前是使 ...

  6. Python+Appium实现自动化测试

    一.环境准备 1.脚本语言:Python3.x    IDE:安装Pycharm 2.安装Java JDK .Android SDK 3.adb环境,path添加E:\Software\Android ...

  7. Servlet(简介,请求参数,页面跳转,生命周期,创建,配置,ServletContext,线程)

    1.Servlet简介 servlet是java servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序, 主要功能在于交互式浏览和修改数据,生成动态的web内容 服务端运行的 ...

  8. Android RadioGroup+Fragment 底部导航

  9. 基于Docker搭建Nginx图片服务器

    前言 一般开发中,都会把图片上传到一个目录,然后将目录和文件名拼接存储在数据库中,但是,这种方法如果没弄好的话可能有一定的缺陷. 若项目搬迁,即时这台服务器本身还在用,存放在服务器的跟项目相关的图片也 ...

  10. Linux下反弹shell笔记

    0x00 NC命令详解 在介绍如何反弹shell之前,先了解相关知识要点. nc全称为netcat,所做的就是在两台电脑之间建立链接,并返回两个数据流 可运行在TCP或者UDP模式,添加参数 —u 则 ...