Linux文件系统与日志分析

目录

一、Linux文件系统

1、inode与block

2、查看inode号码的命令

3、inode包含文件的元信息

4、Linux系统文件的三个主要时间属性

5、用户通过文件名打开文件时系统内部过程

6、inode的大小

7、inode的特点

二、日志

1、日志的功能

2、日志文件的分类

3、系统日志介绍

3、ELK

4、rsyslog管理

5、rsyslog配置文件

6、用户登录日志

7、last和lastb:查询用户登录的历史记录

8、journalctl日志管理工具

9、查询当前登录的用户情况

10、日志的管理策略

三、实操:将ssh服务日志单独存放

1、进入rsyslog配置文件,添加自己的文件位置

2、进入ssh配置文件,将ssh配置成使用local6

3、重启服务

4、验证,并查看本机日志记录(tail -f /var/log/secure)

四、实操:通过网络将本地的日志远程备份到另外一台机器

1、两台机器都关闭防火墙工具与selinux

2、打开配置文件,进行修改配置

3、重启服务

4、查看514端口是否启动

5、测试使用logger写入一条测试日志

6、接收方开启TCP和端口514

7、重启日志服务

8、查看接收方是否能收到日志记录


一、Linux文件系统

1、inode与block

文件数据包括元信息与实际信息,文件存储在硬盘上,硬盘最小的存储单位是扇区,每个扇区存储512个字节。

①block:块。连续的八个扇区组成一个block,大小为4k。(是文件存储的最小的单位)

②inode:索引节点,用于存储元信息,在同一个硬件设备上是唯一的,是可以被用完的,用完后无法创建任何文件。

③block和inode的关系:一个文件必须占用一个inode号,但是至少占用一个block。

2、查看inode号码的命令

1.	查看文件名对应的inode号码
	ls -i 文件名
2. 	查看文件inode信息中的inode号码
	stat 文件名

3、inode包含文件的元信息

  • 文件的字节数(字节占用多少空间,也称文件大小)
  • 文件拥有者的 User ID
  • 文件的 Group ID
  • 文件的读、写、执行权限
  • 文件的时间戳(ctime、atime、mtime)
  • 文件类型
  • 链接数
  • 有关文件的其他数据
  • 不包含文件名,文件名在目录结构中

4、Linux系统文件的三个主要时间属性

①ctime:最后一次改变问价或目录的时间

②atime:最后依次访问文件或目录的时间

③mtime:最后一次修改文件或目录(内容)

5、用户通过文件名打开文件时系统内部过程

①系统找到与这个文件名对应的inode号码

②通过inode号码,获取inode信息

③根据inode信息,找到文件数据所在的block,读出数据

例题:磁盘有剩余,但无法继续建立文件?

inode用完了,lvm扩容,普通分区删除无用文件。

6、inode的大小

①inode号也会消耗硬盘空间,每个inode的大小一般是128字节或256字节

②inode在同一个文件系统里唯一,在不同的文件系统中可以重复

查看每个硬盘分区的inode总数和已经使用的数量,可以用命令df -i

7、inode的特点

①删除inode的方法:

删除inode号的方法:
 
方法一: find 文件位置 -inum inode号码 -exec rm -rf {} \;
 
方法二: find 文件位置 -inum inode号码 -delete

二、日志

日志默认保存在/var/log目录下

1、日志的功能

①用于记录系统,程序运行中发生的各种事件

②通过阅读日志,有助于诊断和解决系统故障

2、日志文件的分类

①由系统服务rsyslog统一进行管理,日志格式基本相似

②主配置文件/etc/rsyslog.conf

③记录系统用户登录及退出系统的相关信息

④由各种应用程序独立管理的日志文件,记录格式不统一

3、系统日志介绍

①sysklogd系统日志服务

②rsyslog系统日志服务

rpm -qi rsyslog
#查看rsyslog的详细信息
rpm -ql rsyslog
#查看rsyslog的文件列表

3、ELK

由Elasticsearch, Logstash, Kibana三个软件组成

4、rsyslog管理

4.1日志消息的级别

Linux系统内核日志消息的优先级别(数字等级越小,优先级越高,消息越重要):

级别    消息           级别    具体描述
0    EMERG          紧急    会导致主机系统不可用的情况
1    ALERT            警告    必须马上采取措施解决的问题
2    CRIT               严重    比较严重的情况
3    ERR               错误     运行出现错误
4    WARNING     提醒     可能影响系统功能,需要提醒用户的重要事件
5    NOTICE         注意     不会影响正常功能,但是需要注意的事件
6    INFO              信息     一般信息
7    DEBUG          调试     程序或系统调试信息等
是yum或rpm安装配置文件一般放在etc下

在改配置文件一定要先备份,查看软件的配置文件位置,用rpm -qc软件名,去查看,一般以.conf

结尾的是配置文件。

5、rsyslog配置文件

配置文件格式:/etc/rsyslog.conf

①modules:相关模块配置

②global diretives:全局配置

③rules:日志记录相关的规则配置

6、用户登录日志

/var/log/secure: 记录用户认证相关的安全事件信息。
/var/log/lastlog: 记录每个用户最近的登录事件。二进制格式
/var/log/wtmp: 记录每个用户登录、注销及系统启动和停机事件。二进制格式
/var/ run/btmp: 记录失败的、错误的登录尝试及验证事件。二进制格式


7、last和lastb:查询用户登录的历史记录

①last命令用于查询成功登录到系统的用户记录

②lastb命令用于查询登陆失败的用户记录

用户名登录错误,密码输入错误都会被记录在里面,登录失败也属于安全时间,表示可能有人在尝试破解密码。除了使用lastb命令以外,还可以直接从安全日志/var/log/secure中获取相关信息。

8、journalctl日志管理工具

日志的配置文件:/etc/systemd/journald.conf

9、查询当前登录的用户情况

①users

②who

③w

10、日志的管理策略

  • 及时做好备份和归档
  • 延长日志保存期限
  • 控制日志访问权限
  • 日志中可能会包含各类敏感信息,如账户和口令等
  • 集中管理日志
  • 将服务器的日志文件发到统一-的日志文件服务器
  • 便于日志信息的统- -收集、 整理和分析
  • 杜绝日志信息的意外丢失、恶意篡改或删除

三、实操:将ssh服务日志单独存放

ssh远程连接协议:(1)压缩功能,传输快 (2)密文传输

1、进入rsyslog配置文件,添加自己的文件位置

vim /etc/rsyslog.conf

2、进入ssh配置文件,将ssh配置成使用local6

3、重启服务

4、验证,并查看本机日志记录(tail -f /var/log/secure)

四、实操:通过网络将本地的日志远程备份到另外一台机器

就算本机系统崩溃,我们可以查看另一台机器备份的日志,来排查故障

1、两台机器都关闭防火墙工具与selinux

2、打开配置文件,进行修改配置

3、重启服务

4、查看514端口是否启动

5、测试使用logger写入一条测试日志

6、接收方开启TCP和端口514

7、重启日志服务

systemctl restart rsyslog.service

8、查看接收方是否能收到日志记录

相关推荐

最近更新

  1. TCP协议是安全的吗?

    2024-01-09 12:26:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-09 12:26:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-09 12:26:03       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-09 12:26:03       20 阅读

热门阅读

  1. 若依 模态框调整

    2024-01-09 12:26:03       32 阅读
  2. Python Unicode 系统

    2024-01-09 12:26:03       34 阅读
  3. 算法每日一题:回旋镖的数量 | 坐标距离 | 哈希

    2024-01-09 12:26:03       36 阅读
  4. 网络安全之文件上传

    2024-01-09 12:26:03       34 阅读
  5. 展开运算符(Spread Operator)

    2024-01-09 12:26:03       34 阅读
  6. 在Python中创建一个动漫风格的皮卡丘

    2024-01-09 12:26:03       36 阅读
  7. NumPy 高级教程——GPU 加速

    2024-01-09 12:26:03       37 阅读
  8. 80. 删除有序数组中的重复项 II

    2024-01-09 12:26:03       33 阅读