首页 > 其他分享 >redhat持久化日志与实战练习

redhat持久化日志与实战练习

时间:2022-11-13 18:35:32浏览次数:81  
标签:实战 httpd log redhat test html var 日志

持久化日志

默认情况下,Red Hat Enterprise Linux 7将系统日志存储在/run/log/journal中,该日志存储在tmpfs(临时文件系统)上。这意味着在重新启动时,所有存储的信息都将丢失。如果目录/var/log/journal存在,日志将存储在那里,从而在重新引导后启用持久日志。

可以通过使用以下步骤来启用持久性日志:

mkdir/var/log/journal
chown root:systemd-journal  /var/log/journal
chmod 2755   /var/log/journal

通过向systemd-journald发送USR1信号,通知它应该使用新位置。当然你也是可以重启的:

 killall -USR1 systemd-journald

指导练习:收集信息

在本实验中,我们呢将使用日志文件来排除web服务器的故障。

您的服务器一台机器正在运行一个web服务器,为文件http://servera.lab.example.com/test.html.提供服务。您的测试经理刚刚发来一张通知,告知您不能从web浏览器访问该文件。通知中没有给出进一步的信息。

使用servera上的日志文件调查此问题,然后解决此问题。

为了重现这个问题,你可以在火狐上浏览这是个网页,也可以执行下面的命令:

elinks -dump http://servera.lab.example.com/test.html

我们遇到HTTP 403的问题。这可能有很多原因:文件权限、Linux类型、内部httpd配置等。

你知道web服务器本身正在运行,并且防火墙是打开的。

我们去servera服务器上看看日志呀:

那我们就应该知道,在服务器上的httpd的日志大多数是存储在:

/var/log/httpd/access_log   for all access attempts

/var/log/httpd/error_log   for all errors.

1.首先我们在**/var/log/httpd/access_log**这个地方查询关于test.html的任何消息。

grep test.html /var/log/httpd/access_log

这个输出中的403是HTTP状态代码。除此之外,可以看到请求的URL、请求的日期和时间,以及使用的用户代理,但是没有任何东西可以进一步帮助解决这个问题。

2.继续检查 /var/log/httpd/error_log

tail /var/log/httpd/error_log

image-20221111091741500

这条消息告诉您httpd被文件权限阻止读取test.html文件。这排除了httpd的内部配置错误,所以文件权限和SELinux是可能的原因。

  1. 检查/var/www/html/test.html上的文件权限,并在必要时进行修复。
[root@servera ~]# ls -l /var/www/html/test.html

image-20221111092657331

第一组rw-: 表示这个文件的拥有者对它的权限:可读可写 第二组---: 表示这个文件的所属组对它的权限 第三组---: 表示这个文件的其他用户(相对于上面两类用户)对它的权限

我们可以看到这个权限是不太对的。

chmod 644 /var/www/html/test.html

我们让所有用户有可读权限。

我们使用Firefox或elinks再次测试对文件的访问,发现还是没有解决这个问题,那么说明文件权限问题不是全部问题。

那么就要去看看SElinux了:

SELinux(Security-Enhanced Linux) 是美国国家安全局(NSA)对于强制访问控制的实现,是 Linux历史上最杰出的新安全子系统。NSA是在Linux社区的帮助下开发了一种访问控制体系,在这种访问控制体系的限制下,进程只能访问那些在他的任务中所需要文件。

  1. 检查SELinux日志,查看今天发生的任何拒绝,并修复您可能发现的任何问题。

查看selinux今天是否有拒绝:

 ausearch -i -m avc -ts today

image-20221111095453369

这表明test.html文件具有tmp_t的SELinux类型,所以httpd不允许打开它

通过在上运行递归restorecon修复此问题 /var/www

[root@servera ~]# restorecon -Rv /var/www

此时我们再次运行那个网页就发现OK了。

标签:实战,httpd,log,redhat,test,html,var,日志
From: https://blog.51cto.com/u_15737612/5847876

相关文章

  • 篇(10)-Asp.Net Core入门实战-上传文件,几行代码就可以搞定
    入门实战-上传文件,几行代码就可以搞定Asp.NetCore上传文件微软官方给的代码还是很简单的,但是我的开发环境在调试上传时,用谷歌浏览器,微软IE11,以及微软的Edge浏览器都可以......
  • Hive职位岗位数据分析实战
    Hive职位岗位数据分析实战文章目录​​Hive职位岗位数据分析实战​​​​创建数据库​​​​使用创建的数据库​​​​创建表​​​​在hdfs上加载数据​​​​如果不在hdfs......
  • 【网络】内网穿透方案&FRP内网穿透实战(基础版)
    目录前言方案方案1:公网方案2:第三方内网穿透软件花生壳cpolar方案3:云服务器做反向代理FRP简介FRP资源FRP原理FRP配置教程之SSH前期准备服务器配置下载FRP配置FRP服务端启动F......
  • 强化学习代码实战-06 DQN算法(单模型)
    现在我们想在类似车杆的环境中得到动作价值函数,由于状态每一维度的值都是连续的,无法使用表格记录,因此一个常见的解决方法便是使用函数拟合(functionapproximation)的思想。......
  • 篇(9)-Asp.Net Core入门实战-在页面中增加下拉框、复选框功能的增加和修改
    入门实战-在页面中增加下拉框、复选框功能的增加和修改一个标准的表单应用页面(视图),有很多元素,文本框只是有的多一些,还有复选框,下拉框,单选钮等各种元素,本节我将讲述使用asp......
  • k8S中部署Filebeat+ELK日志系统
    一.概述ELK是三个开源软件的缩写,分别表示:Elasticsearch,Logstash,Kibana,它们都是开源软件。新增了一个FileBeat,它是一个轻量级的日志收集处理工具(Agent),Filebeat......
  • Asp.Net Core中使用日志组件log4net
    我们在开发任何项目过程中,记录各种日志是太正常不过的事情。没有日志记录的项目,也不可能放心进入生产环境运行。因此日志的记录,是必须要做的。在.NET开发中,log4net是个常......
  • 【单片机/嵌入式】【梁山派】学习日志13:直接存储器访问DMA
    一、DMA原理介绍1.1DMA基础知识1.1.1数据传输方式一般情况下实现存储器和外设之间的数据传输,有三种常用的方法:轮询法(polling),中断法(interrupt)以及DMA。轮询法(polling):......
  • Pytest接口测试框架实战项目搭建(三)—— 统一登录处理
    一、前言业务系统的登录均要经过统一登录系统S,本篇演示2个业务系统的登录,一个是内部业务系统C,一个是外部用户使用的系统W,因为账号密码以及headers信息都不一样,所以要......
  • 【云原生】Minio on k8s 讲解与实战操作
    目录一、概述二、开始编排部署1)下载chart包2)构建镜像3)修改yaml编排4)开始部署5)测试验证6)卸载一、概述MinIO是在GNUAffero通用公共许可证v3.0下发布的高性能对象存......