Linux系统审计与服务安全,打补丁

本文详细介绍了Linux系统的审计机制,包括审计日志的生成、监控文件访问、系统调用记录等,并展示了如何部署audit系统。此外,还讨论了服务安全的重要性,以Nginx为例,讲解了删除不必要的模块、修改版本信息、限制并发和防止非法请求的方法。同时,提到了数据库安全措施,如初始化安全脚本、限制root远程登录以及Tomcat的安全配置,包括隐藏版本信息和降权启动。最后,探讨了Linux系统打补丁的原理及过程,包括创建和应用补丁。
摘要由CSDN通过智能技术生成

什么是审计

  • 基于事先配置号的规则生成日志,记录可能发生在系统上的事件
  • 审计不会为系统提供额外的完全防护,但它会发现并记录违反安全策略的人及其对应的行为
  • 审计能够记录的日志内容:
  1. 日期与事件、事件结果
  2. 触发事件的用户
  3. 所有认证机制的使用都可以记录,如SSH等
  4. 对关键数据文件的修改行为等
审计的案例
  • 监控文件访问
  • 监控系统调用
  • 记录用户运行的命令
  • 审计可以监控网络访问行为
  • ausearch工具,可以根据条件过滤审计日志
  • aureport工具,可以生成审计报告
部署audit

一、装包

  • 使用审计系统需要安装audit软件包
  • 主配置文件为/etc/audit/auditd.conf
[root@ip53 ~]# yum -y install audit
[root@ip53 ~]# systemctl start auditd   //启动服务
[root@ip53 ~]# systemctl enable auditd  
[root@ip53 ~]# cat /var/log/audit/audit.log     //查看审计日志

二、配置审计

(1)auditctl命令

  • auditctl命令控制审计系统并设置规则决定哪些行为会被记录日志
[root@ip53 ~]# auditctl -s			 //查看服务状态
[root@ip53 ~]# auditctl -l            //查看当前自定义规则类表
[root@ip53 ~]# auditctl -D			//清除所有规则

(2)定义临时规则

  • 定义文件系统规则,语法如下:
  1. auditctl -w path -p permission -k key_name
  2. path为需要审计的文件或者目录
  3. 权限可以是r,w,x,a(文件或者目录的属性发生哪些变化)
  4. Key_name为可选项,方便识别哪些规则生成特定的日志项

(3)设置规则所有对passwd文件写、属性修改操作都会被记录到审计日志

[root@ip53 ~]# auditctl -w /etc/passwd -p wa -k passwd_change

(4)设置规则,监控/etc/selinux目录

[root@ip53 ~]# auditctl -w /etc/selinux/ -p wa -k selinux_change

(5)设置规则,监控fdisk程序

[root@ip53 ~]# auditctl -w /usr/sbin/fdisk -p x -k disk_partition

三、定义永久规则

  • 写入配置文件/etc/audit/rules.d/audit.rules
[root@ip53 ~]# vim /etc/audit/rules.d/audit.rules 
... ...
-w /etc/passwd -p wa -k passwd_change
-w /etc/selinux -p wa -k selinux_change
-w /usr/sbin/fdisk -p x -k disk_partition

从文件里加载规则

[root@ip53 ~]# auditctl -R /etc/audit/rules.d/audit.rules 

附加扩展

  • 扩展知识
    系统提供的参考模板
[root@ip53 ~]# ls /usr/share/doc/audit-2.7.6/rules/

四、审计日志

查看日志

  • 定义规则
[root@ip53 ~]# auditctl -w /etc/ssh/sshd_config -p warx -k sshd_config
  • 查看日志
[root@ip53 ~]# tailf /var/log/audit/audit.log 

type为类型

  • msg为(time_stamp:ID),时间是date+%s
  • arch=c000003e,代表x86_64(16进制)
  • success=yes/no,事件是否成功
  • a0-a3是程序调用前4个参数,16进制编码了
  • ppid父进程ID,如bash,pid进程ID,如cat命令
  • auid是审核用户的id,su - test,依然可以追踪su前的账户
  • uid,gid用户与组
  • tty:从哪个终端执行的命令
  • comm=“cat” 用户在命令行执行的指令
  • exe="/bin/cat" 实际程序的路径
  • key=“sshd_config” 管理员自定义的策略关键字key
  • type=CWD 用来记录当前工作目录
    -cwd="/home/username"
  • type=PATH
    -ouid(owner’s user id) 对象所有者id
    -guid(owner’s groupid) 对象所属组id
  • exit=0 //表示命令执行成功
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值