10、配置NFS服务

在server0配置NFS服务,要求如下:
  以只读的形式共享目录/public同时只能被example.com域中的系统访问。
  以读写的形式共享目录/protected同时只能被example.com域中的系统访问。
  访问/protected需要通过Kerberos安全加密,您可以使用下面提供的密钥:
  http://classroom.example.com/pub/keytabs/server0.keytab
  目录/protected应该包含名为project拥有人为ldapuser0的子目录
  用户ldapuser0能以读写形式访问/protected/project

server0
[root@server0 ~]# systemctl restart nfs-server.service
[root@server0 ~]# systemctl enable nfs-server.service [root@server0 ~]# systemctl enable nfs-secure
[root@server0 ~]# systemctl restart nfs-secure
[root@server0 ~]# systemctl restart nfs-secure-server.service (无法重启,无法tab补齐)重启nfs用于安全验证的服务
[root@server0 ~]# systemctl enable nfs-secure-server.service [root@server0 ~]# firewall-cmd --permanent --add-service=nfs
[root@server0 ~]# firewall-cmd --permanent --add-service=rpc-bind 重启开机启动rpc-bind
[root@server0 ~]# firewall-cmd --permanent --add-service=mountd
[root@server0 ~]# firewall-cmd --reload [root@server0 ~]# vim /etc/sysconfig/nfs 辅助配置文件
13 RPCNFSDARGS="-V 4.2"              声明一下nfs版本, [root@server0 ~]# mkdir /public
[root@server0 ~]# mkdir /protected
[root@server0 ~]# chmod 777 /protected/ 读写 [root@server0 ~]# vim /etc/exports nfs的主要配置文件
/public *.example.com(ro)
/protected *.example.com(rw,sec=krb5p) #认证方式sec=krb5p [root@server0 ~]# exportfs -r 重新mount /etc/exports中分享出来的目录 [root@server0 ~]# wget -O /etc/krb5.keytab http://classroom.example.com/pub/keytabs/server0.keytab
                    krb5.keytab 与/etc/exports 同一目录 [root@server0 ~]# id ldapuser0
[root@server0 ~]# mkdir -pv /protected/project
[root@server0 ~]# ll /protected/project/ -d
[root@server0 ~]# chown ldapuser0:ldapuser0 /protected/project/ 用户,组为ldapuser0 [root@server0 ~]# systemctl restart nfs-server.service
[root@server0 ~]# systemctl restart nfs-secure
[root@server0 ~]# systemctl restart nfs-secure-server.service (重启成功)
[root@server0 ~]# showmount -e 172.25.0.11

  

nfs加密的方式,一共有三种方式krb5,krb5i,krb5p:
krb5 基于Kerberos票据的认证;
krb5i 挂载时校验数据完整性;
krb5p通过kerberos认证,并且对数据进行加密

  

11、挂载一个NFS共享

在desktop0上挂载一个来自server0上的NFS共享,并符合下列要求:
  /pulbic共享挂载到本地的/mnt/nfsmount。
  /protected挂载到本地的/mnt/nfssecure,并使用安全的方式,密钥下载地址:
  http://classroom.example.com/pub/keytabs/desktop0.keytab
  用户ldapuser0能够在/mnt/nfssecure/project上创建文件。
  这些文件系统在系统启动时自动挂载

[root@server0 ~]# showmount -e 172.25.0.11

[root@desktop0 ~]# mkdir /mnt/nfsmount
[root@desktop0 ~]# mkdir /mnt/nfssecure [root@desktop0 ~]# mount server0.example.com:/public /mnt/nfsmount/
[root@desktop0 ~]# mount server0.example.com:/protected /mnt/nfssecure/ [root@desktop0 ~]# vim /etc/fstab
server0.example.com:/public /mnt/nfsmount nfs defaults 0 0
server0.example.com:/protected /mnt/nfssecure nfs defaults,sec=krb5p,v4.2 0 0 [root@desktop0 ~]# wget -O /etc/krb5.keytab http://classroom.example.com/pub/keytabs/desktop0.keytab [root@server0 ~]# systemctl restart nfs
[root@server0 ~]# systemctl enable nfs
[root@server0 ~]# systemctl enable nfs-server
[root@server0 ~]# systemctl restart nfs-server
[root@desktop0 ~]# systemctl enable nfs-secure (nfs两个用于安全验证的服务)
[root@desktop0 ~]# systemctl restart nfs-secure (tab无法补齐)
[root@desktop0 ~]# systemctl enable nfs-secure-server.service
[root@desktop0 ~]# systemctl restart nfs-secure-server.service [root@desktop0 ~]# mount -a
[root@desktop0 ~]# df -h

  

测试
[root@desktop0 ~]# su - ldapuser0
[ldapuser0@desktop0 nfsmount]$ ll /mnt
[ldapuser0@desktop0 nfsmount]$ cd /mnt/nfssecure
-bash: cd: /mnt/nfssecure: Permission denied ##提示被拒绝
[ldapuser0@desktop0 nfsmount]$ exit kerbero登录
[root@desktop0 ~]# ssh ldapuser0@localhost
Are you sure you want to continue connecting (yes/no)? yes
ldapuser0@localhost's password: ##密码为kerberos [ldapuser0@desktop0 nfssecure]$ cd /mnt/nfssecure/project/
[ldapuser0@desktop0 project]$ ll /mnt/nfssecure/project/ -d
[ldapuser0@desktop0 project]$ touch 3333
[ldapuser0@desktop0 project]$ exit
[ldapuser0@desktop0 project]$ exit

  

[root@server0 ~]# systemctl restart nfs
[root@server0 ~]# systemctl enable nfs
[root@server0 ~]# systemctl restart nfs-server.service
[root@server0 ~]# systemctl enable nfs-server.service [root@server0 ~]# firewall-cmd --permanent --add-service=nfs
[root@server0 ~]# firewall-cmd --permanent --add-service=rpc-bind
[root@server0 ~]# firewall-cmd --permanent --add-service=mountd
[root@server0 ~]# firewall-cmd --reload [root@server0 ~]# vim /etc/sysconfig/nfs
RPCNFSDARGS="-V 4.2" [root@server0 ~]# mkdir /public
[root@server0 ~]# mkdir /protected [root@server0 ~]# chmod 777 /protected/
[root@server0 ~]# ll /protected/ -d
drwxrwxrwx. 2 root root 6 Oct 19 21:39 /protected/ [root@server0 ~]# vim /etc/exports
/public *(ro)
/protected *(rw) /public *.example.com(ro)
/protected *.example.com(rw) [root@server0 ~]# exportfs -r [root@server0 ~]# systemctl restart nfs
[root@server0 ~]# systemctl restart nfs-server [root@server0 ~]# showmount -e 172.25.0.11

  

[root@desktop0 ~]# showmount -e 172.25.0.11

[root@desktop0 ~]# systemctl restart nfs
[root@desktop0 ~]# systemctl restart nfs-server
[root@desktop0 ~]# systemctl enable nfs
[root@desktop0 ~]# systemctl enable nfs-server.service [root@desktop0 ~]# mkdir -pv /mnt/nfssmount
[root@desktop0 ~]# mkdir -pv /mnt/nfssecure [root@desktop0 ~]# mount 172.25.0.11:/public /mnt/nfsmount/
[root@desktop0 ~]# mount 172.25.0.11:/protected /mnt/nfssecure/ [root@desktop0 ~]# mount server0.example.com:/public /mnt/nfsmount/
[root@desktop0 ~]# mount server0.example.com:/protected /mnt/nfssecure/ [root@desktop0 ~]# mount -a
[root@desktop0 ~]# df -h
172.25.0.11:/public 10G 3.1G 7.0G 31% /mnt/nfsmount [root@desktop0 ~]# mount
172.25.0.11:/protected on /mnt/nfssecure
172.25.0.11:/public on /mnt/nfsmount [root@desktop0 mnt]# cd nfsmount/
[root@desktop0 nfsmount]# touch 3
touch: cannot touch ‘3’: Read-only file system [root@desktop0 ~]# cd /mnt/nfssecure/
[root@desktop0 nfssecure]# touch 4
[root@desktop0 nfssecure]# ll
total 0
-rw-r--r--. 1 nfsnobody nfsnobody 0 Oct 19 21:46 4

  

[root@server0 ~]# cd /protected/
[root@server0 protected]# mkdir project [root@server0 ~]# chown ldapuser0:ldapuser0 /protected/project/
[root@server0 ~]# ll /protected/project/ -d
drwxr-xr-x. 2 ldapuser0 root 6 Oct 19 21:50 /protected/project/ [root@desktop0 ~]# su - ldapuser0
[ldapuser0@desktop0 ~]$ cd /mnt/nfssecure/project [ldapuser0@desktop0 project]$ touch 4
[ldapuser0@desktop0 project]$ ll
total 0
-rw-rw-r--. 1 ldapuser0 ldapuser0 0 Oct 19 21:52 4

  

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

[root@server0 ~]# vim /etc/exports
/public *.example.com(ro)
/protected *.example.com(rw,sec=krb5p)
[root@server0 ~]# exportfs -r [root@server0 ~]# systemctl restart nfs-secure
[root@server0 ~]# systemctl enable nfs-secure [root@server0 ~]# systemctl restart nfs-secure-server
[root@server0 ~]# systemctl enable nfs-secure-server [root@desktop0 ~]# wget -O /etc/krb5.keytab http://classroom.example.com/pub/keytabs/desktop0.keytab [root@desktop0 ~]# systemctl restart nfs-secure
[root@desktop0 ~]# systemctl restart nfs-secure-server
[root@desktop0 ~]# systemctl enable nfs-secure-server
[root@desktop0 ~]# systemctl enable nfs-secure [root@desktop0 ~]# systemctl restart nfs-server
[root@desktop0 ~]# systemctl enable nfs-server [ldapuser0@desktop0 ~]$ vim /etc/fstab
server0.example.com:/public /mnt/nfsmount nfs defaults 0 0
server0.example.com:/protected /mnt/nfssecure nfs defaults,sec=krb5p,v4.2 0 0 [root@desktop0 ~]# mount -a
[root@desktop0 ~]# df -h

  

[root@desktop0 ~]# su - ldapuser0
[ldapuser0@desktop0 ~]$ ll /mnt/
ls: cannot access /mnt/nfssecure: Operation not permitted
total 4
drwxr-xr-x. 3 root root 4096 Oct 19 21:20 data
drwxr-xr-x. 2 root root 6 Oct 19 21:39 nfsmount
??????????? ? ? ? ? ? nfssecure [root@desktop0 ~]# ssh ldapuser0@loaclhost
kerberos
[ldapuser0@desktop0 ~]$ ll /mnt

  

day3 RHCE的更多相关文章

  1. 红帽RHEL7版本RHCE认证学习及考试经历

    RHCE是红帽公司推出的Linux系统的中级认证,考试全部采取上机形式,在考察考生的基础理论知识的同时还能考察实践动手操作能力,在Linux领域的价值是不可否认的,所以对于期望从事相关行业的同学们在上 ...

  2. 【转】RHCE 7系列—RHCE考试

    本篇主要以RHCE练习题为线索,介绍其中涉及的知识点. 红色引用的字为题目要求(不是正式题目,难度略低于正式题目) In serverX or desktopX 1. (lab teambridge ...

  3. RHCE 系列(二):如何进行包过滤、网络地址转换和设置内核运行时参数

    正如第一部分(“设置静态网络路由”)提到的,在这篇文章(RHCE 系列第二部分),我们首先介绍红帽企业版 Linux 7(RHEL)中包过滤和网络地址转换(NAT)的原理,然后再介绍在某些条件发生变化 ...

  4. RHCE 系列(一):如何设置和测试静态网络路由

    RHCE(Red Hat Certified Engineer,红帽认证工程师)是红帽公司的一个认证,红帽向企业社区贡献开源操作系统和软件,同时它还给公司提供训练.支持和咨询服务. 这个 RHCE 是 ...

  5. 冲刺阶段day3

    day3 项目进展 今天周三,我们五个人难得的一整个下午都能聚在一起.首先我们对昨天的成果一一地查看了一遍,并且坐出了修改.后面的时间则是做出 登录界面的窗体,完善了登录界面的代码,并且实现了其与数据 ...

  6. python笔记 - day3

    python笔记 - day3 参考:http://www.cnblogs.com/wupeiqi/articles/5453708.html set特性: 1.无序 2.不重复 3.可嵌套 函数: ...

  7. python_way,day3 集合、函数、三元运算、lambda、python的内置函数、字符转换、文件处理

    python_way,day3 一.集合 二.函数 三.三元运算 四.lambda 五.python的内置函数 六.字符转换 七.文件处理 一.集合: 1.集合的特性: 特性:无序,不重复的序列 如果 ...

  8. Spark菜鸟学习营Day3 RDD编程进阶

    Spark菜鸟学习营Day3 RDD编程进阶 RDD代码简化 对于昨天练习的代码,我们可以从几个方面来简化: 使用fluent风格写法,可以减少对于中间变量的定义. 使用lambda表示式来替换对象写 ...

  9. Spark Tungsten揭秘 Day3 内存分配和管理内幕

    Spark Tungsten揭秘 Day3 内存分配和管理内幕 恭喜Spark2.0发布,今天会看一下2.0的源码. 今天会讲下Tungsten内存分配和管理的内幕.Tungsten想要工作,要有数据 ...

随机推荐

  1. Java基础知识强化之集合框架笔记76:ConcurrentHashMap之 ConcurrentHashMap简介

    1. ConcurrentHashMap简介: ConcurrentHashMap是一个线程安全的Hash Table,它的主要功能是提供了一组和Hashtable功能相同但是线程安全的方法.Conc ...

  2. Java对文件的读取方式以及它们的优缺点

    Java常用的对文件的读取方式基本包括: BufferedReader -> readLine(): 按行读取文件,直到读取内容==null FileInputStream -> read ...

  3. 点击键盘上的“Next”button实现文本框焦点跳转

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/quanqinayng/article/details/24405431 - (BOOL)textFi ...

  4. gluoncv rpn 正负样本

    https://github.com/dmlc/gluon-cv/blob/master/gluoncv/model_zoo/rpn/rpn_target.py def forward(self, i ...

  5. vue-scroll 底部无数据时,底部出现大片的空白

    vue-scroll放在vue的项目中,实现下拉刷新的效果,但是发现,不能上拉的bug,上拉了之后,底部出现了一大段的空白,参照GitHub的问题,算是暂时解决了. 不能上拉的原因是:滑动标签里边的内 ...

  6. ERDAS IMAGINE 2014 32位 破解安装

    1.        安装Install ERDAS Foundation 2014 2.        安装ERDAS IMAGINE 2014  32位 3.        安装Intergraph ...

  7. Shell笔记-01

    打开文本编辑器,新建一个文件,扩展名为sh(sh代表shell),扩展名并不影响脚本执行,见名知意就好,如果你用php写shell 脚本,扩展名就用php好了. 输入一些代码: #!/bin/bash ...

  8. 【题解】洛谷P1080 [NOIP2012TG] 国王游戏(贪心+高精度)

    次元传送门::洛谷P1080 思路 我们模拟一下只有两个大臣的时候发现 当a1​∗b1​<a2​∗b2​是ans1<ans2 所以我们对所有大臣关于左右手之积进行排序 得到最多钱的大臣就是 ...

  9. MyBatis配置数据库连接

    <environments default="default"> <environment id="default"> <tran ...

  10. Java接口和抽象类详解

    父类定义了相关子类的共有属性和行为.而接口可以定义类的共同行为(包括非相关的类). 了解接口前,先来说说抽象类.抽象类介乎于普通类和接口之间,提供部分实现方法以及未实现方法,可以看作为一个半成品. 抽 ...