一、实验专题:更改目录的角色类型等级,开启selinux且不影响网站的正常访问
### --- 更改目录的角色类型等级,开启selinux且不影响网站的正常访问
### --- 开启selinux[root@server11 ~]# vim /etc/sysconfig/selinux
SELINUX=disabled
#     enforcing -开启
#     permissive -特权模式:若是出现错误会给我提醒,但不会拒绝。
#     disabled -关闭
SELINUXTYPE=targeted
#     targeted - 基础类型;把常见的进程涵盖到。若是开启的话,基础类型就够用了。
#     mls -  多类型匹配强制;会有更多的类型。

### --- 重启生效;速度会非常的慢;关闭selinux表示把selinux从内核中摘除,屏蔽掉,不让其运行。开启需要重新加载到内核之中,所以速度会较慢。[root@server11 ~]# reboot
[root@server11 ~]# getenforce
Enforcing
[root@server11 ~]# setenforce 0                                         // 临时关闭
[root@server11 ~]# setenforce 1                                         // 临时开启

### --- 验证:开启web服务器[root@server11 ~]# service httpd start
[root@server11 ~]# chkconfig httpd on
[root@server11 ~]# echo "This is HA-server11 SElinux" >>/var/www/html/index.html
[root@server11 ~]# curl localhost
This is HA-server11 SElinux

~~~     通过Chrome访问http://10.10.10.11/可以正常访问
[root@server11 ~]# mkdir /www
[root@server11 ~]# vim /etc/httpd/conf/httpd.conf
DocumentRoot "/www/"
<Directory "/www/">
[root@server11 ~]# service httpd restart
[root@server11 ~]# echo "This is HA-server11 SElinux" >>/www/index.html
[root@server11 ~]# chown  777 -R /www/ ~~~     通过Chrome访问http://10.10.10.11/反馈信息为Apache主页,Apache主页在找不到主页文件的时候会显示出来。
~~~     在www目录下写入了访问文件,并赋予777权限,理论上是没有问题的,是selinux的限制。
[root@server11 ~]# setenforce 0                                             // 临时关闭selinux发现主页可以正常访问了。

### --- 查看selinux的角色类型[root@server11 ~]# ll -Z
-rw-------. root root system_u:object_r:admin_home_t:s0 anaconda-ks.cfg     // system_u:用户object_r:角色admin_home_t:类型s0:权重等级,不需要去管理
-rw-r--r--. root root system_u:object_r:admin_home_t:s0 install.log
-rw-r--r--. root root system_u:object_r:admin_home_t:s0 install.log.syslog
[root@server11 ~]# ll -Z /var/www/html/                                     // 查看Apache默认的目录角色类型等级
-rw-r--r--. root root unconfined_u:object_r:httpd_sys_content_t:s0 index.html
[root@server11 ~]# ll -Z /www/                                              // 查看自己创建的Apache目录角色类型等级
-rw-r--r--. 777 root unconfined_u:object_r:default_t:s0 index.html          // 发现它的类型是不一致,只要把类型更改为一致即可。

### --- 修改自己创建的Apache目录为Apache默认的目录角色类型等级[root@server11 ~]# chcon -t httpd_sys_content_t -R /www/
[root@server11 ~]# ll -Z /www/                                              // 和Apache默认目录角色类型等级一致
-rw-r--r--. 777 root unconfined_u:object_r:httpd_sys_content_t:s0 index.html
~~~     通过Chrome访问http://10.10.10.11/可以正常访问写入的网站
~~~     在生产环境中慎重使用-R递归,递归是非常消耗CPU资源的,若是有上万个子文件,递归可能导致设备直接宕机。

### --- 还原selinux之前的配置[root@server11 ~]# restorecon -Rv /www/                                     // 还原之前的设置
[root@server11 ~]# ll -Z /www/
-rw-r--r--. 777 root unconfined_u:object_r:default_t:s0 index.html
### --- 通过Chrome访问http://10.10.10.11/访问被拒绝

二、selinux布尔值
### --- Managing Boole    (管理SELinux布尔值)
### --- Selinux布尔值就相当于一个开关,精确控制selinux对某个服务器的某个选项的保护,比如Samba服务
~~~     getsebool    -a    命令列出系统中可用的SELinux布尔值
~~~     setsebool    命令用来改变SELinux布尔值
~~~     setsebool    -p    Samba_enable_home_dirs=1
~~~     开启夹目录是否能访问的控制[root@server11 ~]# getsebool -a |grep samba
bacula_use_samba --> off
samba_create_home_dirs --> off
samba_domain_controller --> off
samba_enable_home_dirs --> off
samba_export_all_ro --> off
samba_export_all_rw --> off
samba_load_libgfapi --> off
samba_portmapper --> off
samba_run_unconfined --> off
samba_share_fusefs --> off
samba_share_nfs --> off
sanlock_use_samba --> off
tmpreaper_use_samba --> off
use_samba_home_dirs --> off
virt_use_samba --> off

三、实验专题
1、selinux布尔值

### --- HA-server1:10.10.10.11:服务端
### --- HA-server2:10.10.10.12:客户端
### --- 开启selinux后可以正常访问samba服务
### --- 安装samba[root@server11 ~]# yum install -y samba

### --- 创建2个用户:zhangsan/lisi[root@server11 ~]# useradd zhangsan
[root@server11 ~]# passwd zhangsan
[root@server11 ~]# useradd lisi
[root@server11 ~]# passwd lisi

### --- 转换为samba用户;可以正常被samba访问[root@server11 ~]# pdbedit -a zhangsan
[root@server11 ~]# pdbedit -a lisi

### --- 创建samba并授予777权限[root@server11 ~]# mkdir /samba
[root@server11 ~]# chmod 777 /samba/

### --- 修给samba配置文件[root@server11 ~]# vim /etc/samba/smb.conf
[public]                                                                    // 最后开启配置文件
comment = Public share
path = /samba
public = yes
writable = yes
printable = no
write list = +staff
[root@server11 ~]# service smb start
[root@server11 ~]# chkconfig smb on

### --- 拷贝一些文件到/samba目录[root@server11 ~]# cp -a /var/log/*.log /samba/

### --- 验证:张三用户下访问samba服务[root@server12 ~]# yum install -y smbclient                                 // 安装一下smbclient,默认是已经安装了
[root@server12 ~]# smbclient -U zhangsan -L 10.10.10.11                     // 通过张三用户访问10.10.10.11访问samba服务,发现有两个共享目录zhangsan、publicSharename       Type      Comment---------       ----      -------public          Disk      Public sharezhangsan        Disk      Home Directories
[root@server12 ~]# smbclient -U zhangsan  //10.10.10.11/public              // 连接10.10.10.11下的samba服务的张三用户下的public目录
smb: \> ls
NT_STATUS_ACCESS_DENIED listing \*                                          // 发现是空目录。可能是selinux规则在限制

### --- 关闭后selinux重新验证[root@server11 ~]# setenforce 0
[root@server12 ~]# smbclient -U zhangsan  //10.10.10.11/public              // 关闭selinux后重新验证发现可以正常获取数据
Domain=[MYGROUP] OS=[Unix] Server=[Samba 3.6.23-33.el6]
smb: \> ls.                                   D        0  Sat Jan 30 08:46:02 2021..                                 DR        0  Sat Jan 30 08:41:32 2021wpa_supplicant.log                           0  Tue Jan 19 03:18:18 2021
~~~     原因是跟当前的samba的类型不一致

### --- 修给samba共享目录的类型,开启selinux重新验证[root@server11 ~]# chcon -t samba_share_t /samba/                           // 设置/samba目录类型权限;在samba配置文件中可以查找获取共享目录角色类型权限等级
[root@server11 ~]# setenforce 1
[root@server12 ~]# smbclient -U zhangsan  //10.10.10.11/public              // 验证可以获取数据
smb: \> ls.                                   D        0  Sat Jan 30 08:46:02 2021..                                 DR        0  Sat Jan 30 08:41:32 2021wpa_supplicant.log                           0  Tue Jan 19 03:18:18 2021Xorg.0.log                               38396  Tue Jan 19 03:46:36 2021
smb: \> get yum.log                                                         // 下载文件可以正常下载

### --- 需求:zhangsan和lisi两个用户在自己的家目录下只能下载文件,不能上传文件。实验方案:布尔值[root@server11 ~]# setsebool -P samba_export_all_ro on
[root@server11 ~]# touch /home/zhangsan/yanqi
[root@server12 ~]# smbclient -U zhangsan  //10.10.10.11/zhangsanyanqi                                        0  Sat Jan 30 09:04:04 2021
smb: \> get yanqi                                                           // 可以正常下载
getting file \yanqi of size 0 as yanqi (0.0 KiloBytes/sec) (average 0.0 KiloBytes/sec)
smb: \> put install.log                                                     // 上传install.log文件,拒绝了,因为开启的是samba共享的只读权限
NT_STATUS_ACCESS_DENIED opening remote file \install.log

CC00052.LBCHAC——|Selinux.V2|——|2台server|相关推荐

  1. linux telnet无法连接,奇怪的问题:telnet无法连接另一台server的正常的开放端口

    问题描述: 有一台server(称为A)作为memcache服务器开放了11211端口,但是另一台server(称为B)无法调用A的memcache,显示无法连接. 排查:先在B上用telnet 尝试 ...

  2. CC00069.CloudKubernetes——|KuberNetes二进制部署.V22|3台Server|——|TLS_Bootstrapping|自动颁发证书|

    一.TLS Bootstrapping自动生成证书流程 ### --- TLS Bootstrapping初始化流程:TLS初始化流程~~~ # Kubelet启动 ~~~ # Kubelet查看ku ...

  3. CC00084.CloudKubernetes——|KuberNeteskubeadm.V13|5台Server|——|kubernetes组件|dashboard|

    一.kubernetes组件安装 ### --- 下载组件安装源码包 ~~~ 下载版本包--在k8s-master01节点执行 ~~~ 现在k8s-ha-install版本包[root@k8s-mas ...

  4. CC00045.CloudKubernetes——|KuberNetes二进制部署.V23|5台Server|——|TLS_Bootstrapping|自动颁发证书|

    一.TLS Bootstrapping自动生成证书流程 ### --- TLS Bootstrapping初始化流程:TLS初始化流程~~~ # Kubelet启动 ~~~ # Kubelet查看ku ...

  5. linux server文件,linux两台server远程copy文件

    hibernate笔记--组件映射方法 假设我们需要保存学生student的信息,student中有一个address属性,我们知道像这种信息其值可能会有多个,就像一个人会有两个以上的手机号,这种情况 ...

  6. CC00028.CloudKubernetes——|KuberNetes二进制部署.V06|5台Server|——|etcd配置|

    一.kubernetes系统组件配置 ### --- k8s-master01节点etcd.yaml配置~~~ etcd配置大致相同,注意修改每个Master节点的etcd配置的主机名和IP地址 ## ...

  7. CC00053.CloudKubernetes——|KuberNetes二进制部署.V06|3台Server|——|etcd配置|

    一.kubernetes系统组件配置:ETCD配置 ### --- k8s-master01节点etcd.yaml配置~~~ etcd配置大致相同,注意修改每个Master节点的etcd配置的主机名和 ...

  8. CC00042.CloudKubernetes——|KuberNetes二进制部署.V20|5台Server|——|kubernetes配置|生产环境关键性配置|

    一.生产环境关键性配置 ### --- docker参数配置--所有节点 ~~~ docker参数:所有节点都需要更改.[root@k8s-master01 ~]# vim /etc/docker/d ...

  9. CC00070.CloudKubernetes——|KuberNetes二进制部署.V23|3台Server|——|kubernetes部署总结|

    一.kubernetes安装总结 ### --- kubernetes安装方式~~~ kubeadm ~~~ 二进制 ~~~ 自动化安装 ### --- kubernetes自动化安装方式~~~ # ...

  10. 负载均衡集群 [ 1 ] ---集群的认识,四层负载,七层负载 ,LVS 实现四层负载均衡

    文章目录 负载均衡集群 1.集群是什么? 2.负载均衡集群技术 3.负载均衡集群技术的实现 4.负载均衡分类 5.四层负载均衡(基于IP+端口的负载均衡) 6.七层的负载均衡(基于虚拟的URL或主机I ...

最新文章

  1. 《Java 8 实战》(二)—— Lambda
  2. 用c语言读取固定大小的raw格式图像并统计灰度值
  3. android 设置点击ProgressDialog外的区域不消失
  4. 解题报告——蓝桥杯 试题 基础练习 字符串对比——16行代码AC
  5. Qt工作笔记-关于各种QGraphics中item的坐标分析(如QGraphicsLineItem)【天坑】
  6. SUN:开源在Web2.0时代
  7. php对pdf关键字定位,如何在PDF文件中快速查找关键字
  8. MobileNetV2: Inverted Residuals and Linear Bottlenecks
  9. Java 开源报表制作
  10. Go开源项目 - gorp使用方法
  11. 关于protel 99se 汉化后某些菜单消失的解决方法
  12. python 列举图像颜色
  13. 笔试必备,行测图形推理
  14. 爬虫技术:携程爬虫阳光问政数据
  15. VS2019安装 VisualSVN Server 插件
  16. SQL Pivot 行转列
  17. 超高清晰电影寻觅及下载技巧汇集
  18. PTA 7-23 求序列立方和
  19. 微信小程序踩坑(一)——开发者工具更新时,显示不能打开要写入的文件
  20. 按颜色分类:橙色系(Yellow Red)

热门文章

  1. English trip -- Phonics 1 ar
  2. 非典型程序员单板滑雪入门教程指北
  3. 读书笔记之《大型分布式网站架构设计与实践》
  4. aardio部署_aardio写网站部署到服务器步骤
  5. 电脑版微信文件存储在哪个文件夹可以找到
  6. matlab gazebo,ROS与Matlab语言入门教程-从Gazebo读取模型和仿真性能
  7. 求告知pycharm的这条边界线怎么设置
  8. 干货分享!2014中国互联网大会PPT下载合集
  9. 30ea什么意思_ea阶段是什么?你未必全知道!
  10. python怎么降序输出结果_按降序打印Python