网络安全之痕迹清理

Linux痕迹清理

清除Linux操作系统的日志和登录记录需要谨慎操作,因为这些记录可能包含重要的安全和系统性能信息。在执行任何清除操作之前,应该确保已经对这些日志进行了备份,并且清除操作是符合公司政策和法律法规的。
下面是一个基本的bash脚本示例,用于清除Linux系统中的一些常见日志文件。请注意,这个脚本只是一个示例,实际使用时需要根据具体的系统环境和需求进行调整。
在使用这个脚本之前,请确保你完全理解脚本的每个步骤,并且已经对其进行了测试。此外,还需要确保备份的日志文件被安全地存储,以防未来需要进行审计或分析。
重要提示:在实际工作中,清除日志文件可能涉及到合规性和安全性的考量。在执行此类操作之前,请确保你有适当的权限,并且已经获得了必要的批准。此外,定期审查和维护日志清除策略是保持系统安全的重要部分。

#!/bin/bash

# 确保脚本以root用户权限运行,因为清除系统日志通常需要管理员权限
if [ "$(id -u)" -ne 0 ]; then
    echo "此脚本需要root权限,请使用sudo运行。"  # 提示用户需要以root权限运行
    exit 1  # 如果不是root用户,则退出脚本
fi

# 定义备份日志文件的目录,所有备份的日志文件将被存放在这里
LOG_BACKUP_DIR="/backup/logs"

# 定义一个数组,列出需要被清除的日志文件的路径
LOG_FILES=(
    "/var/log/messages"  # 系统日志文件
    "/var/log/syslog"    # 旧的系统日志文件(CentOS系统中常见)
    "/var/log/secure"   # 安全相关的日志,如SSH登录尝试
    "/var/log/lastlog"  # 记录所有用户的最后登录时间
    "/var/log/btmp"     # 记录失败的登录尝试
    "/var/log/wtmp"     # 记录所有用户的登录和注销事件
    "/var/log/faillog"  # 记录失败的密码尝试
)

# 创建备份目录,如果目录不存在,则使用mkdir命令创建
mkdir -p "$LOG_BACK_DIR"

# 获取当前日期,用于备份文件的命名,格式为YYYY-MM-DD
CURRENT_DATE=$(date +"%Y-%m-%d")

# 遍历所有需要备份的日志文件
for LOG_FILE in "${LOG_FILES[@]}"; do
    # 检查日志文件是否存在
    if [ -f "$LOG_FILE" ]; then
        # 如果存在,创建一个备份
        # 使用当前日期作为备份文件的一部分,以区分不同时间点的备份
        cp "$LOG_FILE" "$LOG_BACKUP_DIR/${LOG_FILE##*/}_$CURRENT_DATE.gz"
        # 使用gzip命令压缩备份的日志文件,以节省空间
        gzip -f "$LOG_BACKUP_DIR/${LOG_FILE##*/}_$CURRENT_DATE.gz"
    fi
done

# 遍历所有需要清除的日志文件
for LOG_FILE in "${LOG_FILES[@]}"; do
    # 检查日志文件是否存在
    if [ -f "$LOG_FILE" ]; then
        # 清除日志文件内容,使用重定向操作符">"将空内容写入文件
        > "$LOG_FILE"
        # 更改日志文件的所有者为syslog,这通常是负责写入日志的系统进程
        chown syslog:adm "$LOG_FILE"
        # 更改文件权限,使其只能由syslog用户和管理员读取和写入
        chmod 0640 "$LOG_FILE"
    fi
done

# 输出完成信息,告知用户操作已经完成
echo "日志清除和备份完成。"

下面是以Centos7为例

#!/bin/bash

# 确保脚本以root用户权限运行,因为清除系统日志通常需要管理员权限
if [[ $EUID -ne 0 ]]; then
    echo "此脚本需要以root用户权限运行。请使用sudo命令执行。"
    exit
fi

# 定义备份日志文件的目录,所有备份的日志文件将被存放在这里
LOG_BACKUP_DIR="/var/backup/logs"

# 定义一个数组,列出需要被清除的日志文件的路径
LOG_FILES=(
    "/var/log/messages"
    "/var/log/secure"
    "/var/log/cron"
    "/var/log/maillog"
    "/var/log/spooler"
    "/var/log/boot.log"
    "/var/log/lastlog"
    "/var/log/tallylog"
    "/var/log/btmp"
    "/var/log/wtmp"
)

# 创建备份目录,如果目录不存在,则使用mkdir命令创建
mkdir -p "$LOG_BACKUP_DIR"

# 获取当前日期,用于备份文件的命名,格式为YYYY-MM-DD
CURRENT_DATE=$(date +"%Y%m%d")

# 遍历所有需要备份的日志文件
for LOG_FILE in "${LOG_FILES[@]}"; do
    # 检查日志文件是否存在
    if [[ -f "$LOG_FILE" ]]; then
        # 备份日志文件,使用当前日期作为备份文件的一部分
        # 压缩备份文件以节省空间
        gzip -c "$LOG_FILE" > "$LOG_BACKUP_DIR/$(basename "$LOG_FILE")_${CURRENT_DATE}.gz"
        # 清除原始日志文件内容,为新的日志条目做准备
        > "$LOG_FILE"
        # 确保日志文件的权限正确设置
        chown root:root "$LOG_FILE"
        chmod 640 "$LOG_FILE"
    fi
done

# 输出完成信息,告知用户操作已经完成
echo "日志文件已清除并备份至 $LOG_BACKUP_DIR"

日志文件

LOG_FILES=(
    "/var/log/messages"  # 包含系统和服务的消息,是最主要的日志文件之一
    "/var/log/secure"   # 包含认证和授权相关的日志,如SSH登录尝试
    "/var/log/cron"     # 包含cron守护进程的日志,记录计划任务的执行情况
    "/var/log/maillog"  # 包含邮件系统日志,记录邮件的发送和接收情况
    "/var/log/spooler"  # 包含UUCP和news spool数据的日志
    "/var/log/boot.log"  # 包含系统启动时的日志信息
    "/var/log/lastlog"  # 记录所有用户的最后登录时间
    "/var/log/tallylog"  # 包含用户登录失败的计数
    "/var/log/btmp"     # 包含失败的登录尝试记录
    "/var/log/wtmp"     # 包含所有用户的登录、注销和系统启动/关机事件
)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/567231.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

YOLOv9训练结果分析->mAP、Precision、Recall、FPS、Confienc、混淆矩阵分析

简介 这篇博客,主要给大家讲解我们在训练yolov9时生成的结果文件中各个图片及其中指标的含义,帮助大家更深入的理解,以及我们在评估模型时和发表论文时主要关注的参数有那些。本文通过举例训练过程中的某一时间的结果来帮助大家理解&#xf…

【FineBI】强大处理、分析和可视化数据的工具

文章目录 前言功能丰富的数据处理深入的数据分析交互式的数据可视化协作与共享无缝的集成 总结 前言 在当今数据驱动的商业环境中,企业需要强大的工具来处理、分析和可视化数据,以便做出更明智的决策。FineBI就是这样一个工具,它是一个全面的…

维乐Angel Revo让你的骑行生活从此美得冒泡儿~重新定义『坐着的艺术』!

维乐「AngelRevo」美学系列坐垫荣获「2023年台北国际自行车展创新设计奖」是卓越品质和极致减碳的双重结合精品。底壳的YCut设计,前段的加长的透孔,减轻压迫,有效释放压力。在享受驰骋赛道的快感同时,提升舒适度。 这款坐垫采用了…

js获取某月往前推一年或半年的年月数组

前言 需求:需要显示某月份往前推一年或者半年的费用情况,显示到柱形图上,后台接口只返回有数据的年份,这就需要前端拿全部月份数组去比对并显示。 开始 上代码: // date:选择的月份,比如:2024-04,//n:半年或者1年,…

如何让复购率提升:亚马逊、Lazada、速卖通的营销技巧

跨境电商卖家必须抓住客户,而客户维护是提高复购率的关键。很多卖家热衷于吸引新客户,却忽略了旧客户的重要性。相较于投入广告和参与秒杀活动以吸引新客户,维护好旧客户并提高复购率的成本更低。然而,实现客户维护和复购率提升并…

Python获取上市公司报告,AI分析助力投资决策

折腾了几天,通过从巨潮信息网上获取上市公司的报告,然后实现调用大语言模型的API去分析报告内容,下面把相应的代码和过程分享给对这个感兴趣的兄弟姐妹们,希望能帮到大家。 1,首先去巨潮信息网首页,右上角…

vuex和pinia转态管理工具介绍

文章目录 一、介绍二、使用1、pinia使用2、Vuex使用 一、介绍 相同点: 都是Vue.js的状态管理工具 不同点: 区别PiniaVuex支持Vue2和Vue3都支持Vue3写法需要额外配置Mutation只有 state, getter 和 action,无Mutationaction异步、Mutation …

埋点,自己写插件,自己写的按钮埋点,掘金同款投递简历

20分钟掌握 Vite 插件开发 - 掘金 vite的生命周期啥的 1.浏览器的控制台输出有样式的字 // const randomLetterPlugin ()>{ // const letters [wwwwwww,000000000000,888888888888]; // //随机获取一个字符并打印 // const printRandomLetter ()>{ // …

如何更好的管理个人财务?使用极空间部署私有记账系统Firefly III

如何更好的管理个人财务?使用极空间部署私有记账系统Firefly III 哈喽小伙伴们好,我是Stark-C~ 不知道屏幕前的各位“富哥”日常生活中是怎么管理自己巨额财富的,反正对于像我这样年薪过千的摸鱼族来说,请一个专业的理财顾问多多…

电子签名在人力资源中的应用:让HR工作更高效

人力资源(HR)行业是电子签领域的重要应用之一,它可以在以下场景中使用电子签: 1. 在招聘流程中,HR部门可以利用电子签名工具来完成与招聘候选人之间的任何文件签署操作。例如,维护人才库数据库、简历、面试…

世界读书日 | 开发者必读书单重磅来袭,华为云DTSE专家天团力荐

春色恰如许,读书正当时。 读书,就像解锁一把神秘钥匙,为开发者洞开新世界的大门,赋予他们破译复杂难题的能力、挑战未知领域的勇气。书页翻动间,开发者得以站在巨人的肩膀上,汲取前人经验,积蓄…

RANSAC 配准算法

RANSAC 配准算法 1. 简介2. RANSAC步骤3. RANSAC原理4. RANSAC的优缺点5. 代码实现6. 参考 1. 简介 先讲一下背景吧。 点云配准(Point Cloud Registration)指的是输入两幅点云 (source 和 target) ,输出一个变换使得变换后的source和target…

管理 Python 项目的艺术:在 PyCharm 中使用虚拟环境(以BPnP为例)

在 PyCharm 中使用虚拟环境对于 Python 项目开发具有多方面的重要作用,这些作用体现在提升项目管理的效率、保障代码的可运行性以及维护项目的长期稳定性等方面。以下是使用虚拟环境的几个关键好处: 1. 依赖管理和隔离 虚拟环境允许每个项目拥有…

深度相机(3D相机)

传统的RGB彩色相机称为2D相机, 只能得到2D的图像信息, 无法得到物体与相机的距离信息,也就是深度信息。 顾名思义, 深度相机除了获取2D信息,还能得到深度信息,也叫RGBD相机, 或3D相机。 顺便提…

CSS介绍及三种应用方式[内联,内嵌,外链]元素及实例讲解

css介绍 CSS(Cascading Style Sheets)是一种用于描述HTML文档外观和格式的样式表语言。CSS允许开发者和设计师将网页的呈现(布局、颜色、字体等)与内容(HTML)分离开来,从而使得网页的设计更加灵…

vue2+vxe-table实现表格增删改查+虚拟滚动

vue2vxe-table实现表格增删改查虚拟滚动 使用的vxe-table版本&#xff1a;v3.x (vue 2.6 长期维护版) 完整代码 <template><div><vxe-toolbar ref"xToolbar" export :refresh"{query: findList}"><template #buttons><vxe-b…

vulhub weblogic全系列靶场

目录 简介 需要使用的工具 CVE-2017-10271 0x00 漏洞产生原因 0x01 影响范围 0x02 漏洞地址 0x03 环境 0x04 漏洞复现 1. 手工 2. 漏洞利用工具 CVE-2018-2628 0x00 漏洞产生原因 0x01 影响范围 0x02 环境 0x03 漏洞复现 1.nmap扫是否是T3协议 2.漏洞检测&…

【C++】详解初始化列表,隐式类型转化,类静态成员,友元

前言 初始化列表是对构造函数内容的补充&#xff0c;小编会详细的讲解初始化列表的概念&#xff0c;特性&#xff0c;注意点。这是本篇内容的重头戏&#xff0c;小编会先提一个问题来抛砖引玉。 隐式类型转换顾名思义&#xff0c;首先它不需要主动转换&#xff0c;类似于把浮点…

抖音运营全攻略 沈阳新媒体运营培训

抖音发展趋势 数据显示&#xff0c;2023年&#xff0c;抖音日活量突破10亿。是目前最火的短视频软件。 抖音的总用户数量已超过12亿&#xff0c;日活10亿&#xff0c;人均单日使用时长超过2小时&#xff0c;这只是平均数据&#xff0c;其实大部分人刷抖音时间会超过3个小时&am…

Hive数据类型

1.基本数据类型 示例&#xff1a; -- 创建表并定义列的数据类型 CREATE TABLE data_types_example (tinyint_column TINYINT,smallint_column SMALLINT,int_column INT,bigint_column BIGINT,boolean_column BOOLEAN,float_column FLOAT,double_column DOUBLE,string_column S…
最新文章