当前位置: 首页 > news >正文

linux:SElinux的实验之自动检查错误并提出解决方案

linux:SElinux的实验之自动检查错误并提出解决方案

​ 1.设定一台主机的主机名未webserver.timinglee.org
ip: 172.25.254.100
请打开此主机的selinux,并在系统中检测selinux的状态为enforcing(以上内容需要在报告中体现过程)
​ 2.配置nginx服务,要求其默认发布目录为/nginx/html默认发布内容为:webserver.timinglee.org
使用端口为:6666

​ 3.检测上述要求并把检测解决呈现在报告中

[root@server100 ~]# hostnamectl hostname webserver.timinglee.org[root@server100 ~]# hostname
webserver.timinglee.org# 关闭防火墙
[root@webserver ~]# systemctl disable --now firewalld.service
Removed "/etc/systemd/system/multi-user.target.wants/firewalld.service".
Removed "/etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service".[root@webserver ~]# ifconfig | tr -s " " | grep broadcast | cut -d " " -f3
172.25.254.100# 永久开启selinux,需要重启系统生效
[root@webserver ~]# grubby --update-kernel ALL --args selinux=1# 重启系统
[root@webserver ~]# reboot# 查看seLinux的状态
[root@webserver ~]# getenforce
Enforcing
# 安装nginx软件并开启服务
[root@webserver ~]# dnf install nginx -y
[root@webserver ~]# systemctl enable --now nginx.service# 修改nginx的主配置文件
[root@webserver ~]# vim /etc/nginx/nginx.conf
server {listen       6666;listen       [::]:80;server_name  _;
#      修改网页默认发布路径root         /nginx/html;# 建立网页存储目录并制作网页文件
[root@webserver ~]# mkdir -p /nginx/html
[root@webserver ~]# echo "webserver.timinglee.org" > /nginx/html/index.html# 语法检查成功,但是重启服务报错
[root@webserver ~]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@webserver ~]# systemctl restart nginx.service
Job for nginx.service failed because the control process exited with error code.
See "systemctl status nginx.service" and "journalctl -xeu nginx.service" for details.# 查看报错信息
[root@webserver ~]# less /var/log/audit/audit.log | nginx# 查看解决工具日志文件
[root@webserver ~]# less /var/log/messages | grep nginx# 在这里查找到了解决方案
#012# ausearch -c 'nginx' --raw | audit2allow -M my-nginx#012# semodule -X 300 -i my-nginx.pp#012[root@webserver ~]# ausearch -c 'nginx' --raw | audit2allow -M my-nginx
******************** IMPORTANT ***********************
To make this policy package active, execute:semodule -i my-nginx.pp[root@webserver ~]# semodule -X 300 -i my-nginx.pp
[root@webserver ~]# systemctl restart nginx.service
# 重启无报错# 访问测试,访问失败,没有访问到指定内容
[root@webserver ~]# curl 172.25.254.100:6666
<html>
<head><title>403 Forbidden</title></head>
<body>
<center><h1>403 Forbidden</h1></center>
<hr><center>nginx/1.20.1</center>
</body>
</html># 再次查看解决方法
[root@webserver ~]# less /var/log/messages | grep nginx# 在这里查找到了解决方案
# semanage fcontext -a -t FILE_TYPE '/nginx/html/index.html'#012where FILE_TYPE is one of the following: NetworkManager_exec_t, [root@webserver ~]# semanage fcontext -a -t httpd_sys_content_t  '/nginx/html(/.*)?'
[root@webserver ~]# restorecon -RvvF /nginx/html/
Relabeled /nginx/html from unconfined_u:object_r:default_t:s0 to system_u:object_r:httpd_sys_content_t:s0
Relabeled /nginx/html/index.html from unconfined_u:object_r:default_t:s0 to system_u:object_r:httpd_sys_content_t:s0# 访问测试,访问成功
[root@webserver ~]# curl 172.25.254.100:6666
webserver.timinglee.org

相关文章:

  • NB49 牛群的秘密通信
  • FFmpeg源码:bytestream_get_byte函数解析
  • linux中sysfs创建设备节点的方法和DEVICE_ATTR
  • Linux安装刻录软件
  • SpringBoot前置知识01-SPI接口
  • 谓词逻辑(一)
  • Vue3:可以使用.value获取ref()包裹的值,为何还要存在unref()
  • 基于Vue3 + js-tool-big-box工具库实现3个随机数字的小游戏动画,快来挑战你的非凡手气!
  • 列表的创建和删除
  • 别说废话!说话说到点上,项目高效沟通的底层逻辑揭秘
  • 。。。。。
  • 面试八股之MySQL篇2——索引篇
  • 31.@Anonymous
  • 运行Android项目时,提示错误: 程序包javax.annotation.processing不存在
  • PersonalLLM——探索LLM是否能根据五大人格特质重新塑造一个新的角色?
  • 【162天】黑马程序员27天视频学习笔记【Day02-上】
  • Asm.js的简单介绍
  • canvas 五子棋游戏
  • css属性的继承、初识值、计算值、当前值、应用值
  • export和import的用法总结
  • JavaScript设计模式系列一:工厂模式
  • js操作时间(持续更新)
  • PyCharm搭建GO开发环境(GO语言学习第1课)
  • TCP拥塞控制
  • Vue ES6 Jade Scss Webpack Gulp
  • Vue--数据传输
  • 阿里云Kubernetes容器服务上体验Knative
  • 服务器从安装到部署全过程(二)
  • 基于遗传算法的优化问题求解
  • 简单易用的leetcode开发测试工具(npm)
  • 七牛云假注销小指南
  • 全栈开发——Linux
  • 数据仓库的几种建模方法
  • 系统认识JavaScript正则表达式
  • 一加3T解锁OEM、刷入TWRP、第三方ROM以及ROOT
  • 用quicker-worker.js轻松跑一个大数据遍历
  • AI又要和人类“对打”,Deepmind宣布《星战Ⅱ》即将开始 ...
  • hi-nginx-1.3.4编译安装
  • 如何正确理解,内页权重高于首页?
  • ​Linux Ubuntu环境下使用docker构建spark运行环境(超级详细)
  • # Pytorch 中可以直接调用的Loss Functions总结:
  • #FPGA(基础知识)
  • $$$$GB2312-80区位编码表$$$$
  • (AtCoder Beginner Contest 340) -- F - S = 1 -- 题解
  • (草履虫都可以看懂的)PyQt子窗口向主窗口传递参数,主窗口接收子窗口信号、参数。
  • (转载)CentOS查看系统信息|CentOS查看命令
  • .NET 材料检测系统崩溃分析
  • .net 重复调用webservice_Java RMI 远程调用详解,优劣势说明
  • .NET6 开发一个检查某些状态持续多长时间的类
  • .net生成的类,跨工程调用显示注释
  • @Autowired和@Resource的区别
  • @Query中countQuery的介绍
  • @基于大模型的旅游路线推荐方案
  • [ C++ ] STL---仿函数与priority_queue
  • [2016.7.test1] T2 偷天换日 [codevs 1163 访问艺术馆(类似)]