配置NFS共享(Linux与Linux之间)

Network Flie System 网络文件系统

协议:NFS(TCP/UDP 2049),RPC(TCP/UDP 111)

所需软件包:nfs-utils (默认会装)

系统服务:nfs-server

搭建基本只读NFS服务

1.检测是否装包

[root@server0 ~]# rpm -q nfs-utils

nfs-utils-1.3.0-0.el7.x86_64

2.修改配置文件 /etc/exports

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

...

/public 172.25.0.0/24(ro)

...

[root@server0 ~]# mkdir /public

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

3.重启nfs-server服务,设置开机自启

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

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

4.客户端 访问nfs-server服务

[root@desktop0 ~]# showmount -e 172.25.0.11

Export list for 172.25.0.11:

/public 172.25.0.0/24

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

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

...

172.25.0.11:/public /mnt/nfs nfs _netdev 0 0

...

[root@desktop0 ~]# mount -a

[root@desktop0 ~]# df -h

文件系统              容量  已用  可用 已用% 挂载点

/dev/vda1              10G  3.1G  7.0G   31% /

devtmpfs              906M     0  906M    0% /dev

tmpfs                 921M   80K  921M    1% /dev/shm

tmpfs                 921M   17M  904M    2% /run

tmpfs                 921M     0  921M    0% /sys/fs/cgroup

172.25.0.11:/public    10G  3.1G  7.0G   31% /mnt/nfs

[root@desktop0 ~]# ls /mnt/nfs/

nsd.txt

搭建root用户的读写NFS

[root@server0 ~]# mkdir /abc

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

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

...

/abc 172.25.0.0/24(rw)

...

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

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

...

172.25.0.11:/abc /mnt/test nfs _netdev 0 0

...

[root@desktop0 ~]# mount -a

[root@desktop0 ~]# df -h

文件系统              容量  已用  可用 已用% 挂载点

/dev/vda1              10G  3.1G  7.0G   31% /

devtmpfs              906M     0  906M    0% /dev

tmpfs                 921M   80K  921M    1% /dev/shm

tmpfs                 921M   17M  904M    2% /run

tmpfs                 921M     0  921M    0% /sys/fs/cgroup

//172.25.0.11/common   10G  3.1G  7.0G   31% /mnt/samba

//172.25.0.11/devops   10G  3.1G  7.0G   31% /mnt/dev

172.25.0.11:/abc       10G  3.1G  7.0G   31% /mnt/test

[root@desktop0 test]# touch 123.txt

touch: 无法创建"123.txt": 权限不够

第一种

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

...

/abc 172.25.0.0/24(rw,no_root_squash)  #no_root_squash 不压榨客户端root的权限

...

[root@server0 ~]# systemctl restart nfs

[root@desktop0 test]# systemctl restart nfs#重启客户端服务

[root@desktop0 test]# touch 123.txt

[root@desktop0 test]# ls /mnt/test/

123.txt  a.txt

第二种 提权方法

[root@server0 ~]# setfacl -m u:nfsnobody:rwx /abc

[root@server0 ~]# getfacl /abc

getfacl: Removing leading '/' from absolute path names

# file: abc

# owner: root

# group: root

user::rwx

user:nfsnobody:rwx

group::r-x

mask::rwx

other::r-x

普通用户

客户端普通用户访问服务器端nfs-server服务,服务端会以客户端相同UID身份的本地用户进行权限判定

[root@server0 ~]# useradd -u 1666 test01

[root@server0 ~]# setfacl -m u:test01:rwx /abc

[root@desktop0 ~]# useradd -u 1666 li

[root@desktop0 ~]# su - li

[li@desktop0 ~]$ cd /mnt/test/

[li@desktop0 test]$ touch 10.txt

[li@desktop0 test]$ ls

10.txt  123.txt  1.txt  3.txt  a.txt

安全NFS服务

LDAP : 网络用户,提供用户名

kerberos:密码验证

1.服务端修改配置文件,创建读写的共享

[root@server0 ~]# mkdir /protected

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

...

/protected *(rw,sec=krb5p)

...

2.服务端和客户端部署加密密钥    这里是使用在网上下载的密钥

[root@server0 ~]# wget http://172.25.254.254/pub/keytabs/server0.keytab -O /etc/krb5.keytab

[root@desktop0 ~]# wget http://172.25.254.254/pub/keytabs/desktop0.keytab -O /etc/krb5.keytab

3.服务端 nfs-server nfs-secure-server 重启

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

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

4.保证ldapuser0用户有写权限,设置本地权限

[root@server0 ~]# chown ldapuser0 /test  #备用

[root@server0 ~]# setfacl -m u:ldapuser0:rwx /protected

5.客户端访问与挂载

[root@desktop0 ~]# showmount -e 172.25.0.11

Export list for 172.25.0.11:

/test *

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

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

...

172.25.0.11:/protected /mnt/nfs nfs _netdev,sec=krb5p 0 0

...

6.重启相关服务

[root@desktop0 ~]# systemctl restart nfs nfs-secure

7.验证挂载

[root@desktop0 ~]# mount -a

[root@desktop0 ~]# df -h

文件系统           容量  已用   可用    已用% 挂载点

/dev/vda1         10G  3.1G  7.0G   31% /

devtmpfs           906M     0  906M    0% /dev

tmpfs             921M   80K  921M    1% /dev/shm

tmpfs              921M   17M  904M    2% /run

tmpfs             921M     0  921M    0% /sys/fs/cgroup

172.25.0.11:/protected  10G   3.1G  6.9G   31% /mnt/nfs

8.验证写入

[root@desktop0 ~]# ssh ldapuser0@127.0.0.1

ldapuser0@127.0.0.1's password: kerberos

[ldapuser0@desktop0 ~]$ cd /mnt/nfs/

[ldapuser0@desktop0 nfs]$ touch 1.txt

[ldapuser0@desktop0 nfs]$ ls

1.txt

在RHCE7的考试中有两道题是关于nfs的:

配置NFS共享服务

在 server0 配置 NFS 服务,要求如下:

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

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

访问 /protected 需要通过 Kerberos 安全加密,您可以使用下面 URL 提供的密钥:http://cla***oom.example.com/pub/keytabs/server0.keytab

目录 /protected 应该包含名为 project 拥有人为 ldapuser0 的子目录

用户 ldapuser0 能以读写方式访问 /protected/project

[root@system1 ~]#mkdir -p /public /protected/project

[root@system1 ~]#chown ldapuser0 /protected/project/

[root@system1 ~]#wget -O /etc/krb5.keytab http://cla***oom/pub/keytabs/server0.keytab

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

/public172.25.0.0/24(ro)

/protected172.25.0.0/24(rw,sec=krb5p)

[root@system1 ~]#systemctl start nfs-secure-server nfs-server

[root@system1 ~]#systemctl enable nfs-secure-server nfs-server

挂载NFS共享

在 desktop0 上挂载一个来自 server0.example.com 的共享,并符合下列要求:

/public 挂载在下面的目录上 /mnt/nfsmount

/protected 挂载在下面的目录上 /mnt/nfssecure 并使用安全的方式,密钥下载 URL:http://cla***oom.example.com/pub/keytabs/desktop0.keytab

用户 ldapuser0 能够在/mnt/nfssecure/project 上创建文件

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

[root@system2 ~]#mkdir -p /mnt/nfsmount /mnt/nfssecure

[root@system2 ~]#wget -O /etc/krb5.keytab http://cla***oom/pub/keytabs/desktop0.keytab

[root@system2 ~]#systemctl start nfs-secure

[root@system2 ~]#systemctl enable nfs-secure

[root@system2 ~]#showmount -e server0

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

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

server0.example.com:/protected  /mnt/nfssecure  nfs     sec=krb5p,_netdev       0 0

[root@system2 ~]#mount -a

[root@system2 ~]#ssh ldapuser0@system2

经常遇见的问题:

# mount  -a

.... Permission Denied。

可能的原因:

1)服务端的 /etc/exports配置没有给权限(比如忘记写掩码长度)

2)服务端的 nfs-secure-server 服务没开启

3)客户端的 nfs-secure 服务没开启

4)密钥部署的名称不对、内容不对

转载于:https://blog.51cto.com/13558754/2058748

全面分析RHCE7(红帽认证工程师)考试题目之 ----NFS文件共享 篇相关推荐

  1. 全面分析RHCE7(红帽认证工程师)考试题目之 ----Samba文件共享篇

    samba 文件共享(共享文件夹) 完成了windows和linux的文件共享 配置SMB共享 Samba软件项目 用途:为客户机提供共享使用的文件夹 协议:SMB(TCP 139),CIFS(TCP ...

  2. RHCE7 试题 linux 公社,全面分析RHCE7(红帽认证工程师)考试题目之 ----Samba文件共享篇...

    samba 文件共享(共享文件夹) 完成了windows和linux的文件共享 配置SMB共享 Samba软件项目 用途:为客户机提供共享使用的文件夹 协议:SMB(TCP 139),CIFS(TCP ...

  3. RHCE7 试题 linux 公社,全面分析RHCE7(红帽认证工程师)考试题目之 ----Samba文件共享篇(示例代码)...

    samba 文件共享(共享文件夹) 完成了windows和linux的文件共享 配置SMB共享 Samba软件项目 用途:为客户机提供共享使用的文件夹 协议:SMB(TCP 139),CIFS(TCP ...

  4. 想考红帽认证工程师常见问题解答

    其实一直以来就想考个RHCE,但是没对考试有系统的了解.通过查找资料,得到这编文章可以解答 1. 红帽认证工程师及红帽认证技师认证考试是开卷考试吗? 不是.红帽认证工程师及红帽认证技师认证考试为闭卷考 ...

  5. 红帽认证工程师常见问题解答(转)

    红帽认证工程师常见问题解答(转)[@more@]红帽企业Linux 3的发布对红帽认证工程师课程和红帽公司提供的其它课程有什么影响? 红帽认证工程师操作考试是开卷考试吗? 0.我听说红帽认证工程师考试 ...

  6. 红帽认证工程师和红帽认证技师应试指南

    这是我在红帽官网上看到的关于红帽人证的介绍,有对红帽认证感兴趣的可一参考下: 红帽认证工程师及红帽认证技师应试指南 概述 --> 在本指南中,主要对红帽认证技师(RHCT)或红帽认证工程师(RH ...

  7. 红帽认证工程师及红帽认证技师应试指南

    红帽认证工程师及红帽认证技师应试指南 概述 --> 在本指南中,主要对红帽认证技师(RHCT)或红帽认证工程师(RHCE)应试过程中可能会用到的信息进行了介绍.对于红帽全球培训服务(Red Ha ...

  8. Red Hat 宣布新的红帽认证工程师计划

    开发四年只会写业务代码,分布式高并发都不会还做程序员? >>>   红帽公司近日在博客公布了关于红帽认证工程师(RHCE)的新计划. 红帽方面表示,随着行业本身的发展和变化,新技术应 ...

  9. 红帽认证工程师(RHCE)的发展前景

    Linux位居操作系统产品增长之首,市场同比增长率达到30.9%,市场价值达到357亿美元.继续保持较快增长态势.在三年时间内, Linux可望在1700万PC中使用,使其安装规模达到4260万,达到 ...

最新文章

  1. 51CTO独家调查:谁是十年最具影响力厂商
  2. 单片机串口发送数据很慢?这种方法帮助你提高!
  3. exe msdt 无法上网_软网推荐:可装EXE程序的ReactOS
  4. css 文本两端对齐终极解决方案--一丝冰凉
  5. 2010全国导游大赛总决赛现场调试及比赛抓图
  6. 为什么说GO语言,是最重要的编程语言
  7. 阿里云云计算ACP学习(六)---阿里云负载均衡服务SLB
  8. 「ZigBee模块」基础实验(2)按键
  9. html静态网站基于游戏网站设计与实现共计10个页面 (仿地下城与勇士游戏网页)
  10. 佳能相机G7 Mark Ⅱ (测光与对焦)
  11. Android高德地图marker和InfoWindow的使用
  12. 论文笔记:Auto-Encoding Scene Graphs for Image Captioning
  13. 编程作业(python)| 吴恩达 机器学习(6)支持向量机 SVM
  14. 《指数基金投资指南》读书笔记_2022002
  15. python利器app可以运行python嘛_python利器app_python利器安卓版v3.0
  16. 扫地机器人路径规划算法
  17. Google BERT 中文应用之《红楼梦》中对话人物提取
  18. 手机故障手机通讯录被删除了怎么恢复
  19. 经典回顾:福禄克FLUKE DTX-1800如何配合DTX-LABA测试6A,7类跳线patchcord
  20. python 调用qrcode库实现二维码识别

热门文章

  1. Windows下React Native开发01 -- Android开发环境搭建
  2. swift 如何在IOS应用图标上添加消息数
  3. ios笔记-单例文字代码详解
  4. Linux之cp命令
  5. linux mysql c语言 api_linux连接MySQL数据库(C语言 API 分析,动态插入修改数据)
  6. VC遍历窗口上的控件
  7. Python Day17 Django 03
  8. docker入门实践之数据卷管理
  9. 共享内存之——system V共享内存
  10. 微软发布ASP.NET 5路线图