时间:2021-05-24
Linux系统是服务器最常见的操作系统,当然也面临着非常多的安全事件,相较Windows操作系统,Linux采用了明确的访问权限控制和全面的管理工具,具有非常高的安全性和稳定性。Linux系统被入侵后,攻击者为了掩盖踪迹,经常会清除系统中的各种日志,包括Web的access和error日志、last日志、message日志、secure日志等,给我们后期应急响应和取证分析带来了非常大的阻力。所以,恢复被清除的日志是非常重要的取证和分析环节,一下是使用lsof命令恢复日志文件的案例,适用于常见的日志恢复工作。
一、前提条件
不能关闭服务器,不能关闭相关服务或进程,如恢复apache的访问日志 /var/log/httpd/access_log ,不能关闭或者重启服务器系统,也不能重启httpd服务。
二、实施过程
1. 找到相关进程pid
复制代码代码如下:
[root@localhost ~]# lsof | grep access_log
httpd 1392 root 7w REG 253,0 0 263802 /var/log/httpd/access_log
httpd 7330 apache 7w REG 253,0 0 263802 /var/log/httpd/access_log
httpd 7331 apache 7w REG 253,0 0 263802 /var/log/httpd/access_log
httpd 7332 apache 7w REG 253,0 0 263802 /var/log/httpd/access_log
httpd 7333 apache 7w REG 253,0 0 263802 /var/log/httpd/access_log
httpd 7334 apache 7w REG 253,0 0 263802 /var/log/httpd/access_log
httpd 7335 apache 7w REG 253,0 0 263802 /var/log/httpd/access_log
httpd 7336 apache 7w REG 253,0 0 263802 /var/log/httpd/access_log
httpd 7337 apache 7w REG 253,0 0 263802 /var/log/httpd/access_log
这里我们重点关注一下第一、第二、第三、第四列,分别表示进程名、pid、用户、文件描述符,我们看到这里的文件描述符是7w,所以我们在下一步操作过程要记住这个7.
2. 找回日志
复制代码代码如下:
[root@localhost ~]# wc -l /proc/1392/fd/7
55 /proc/1392/fd/7
[root@localhost ~]# cat /proc/1392/fd/7 > /var/log/httpd/access_log
我们先通过wc或者tail命令查看日志信息,然后再将日志重写到access_log中即可。
三、总结
在Linux系统的/proc 分区下保存着进程的目录和名字,包含fd(文件描述符)和其下的子目录(进程打开文件的链接),那么如果删除了一个文件,还存在一个 inode的引用:/proc/进程号/fd/文件描述符。我们只要知道当前打开文件的进程pid和文件描述符fd就能利用lsof工具列出进程打开的文件。通过lsof我们就可以进行简单的文件恢复工作,当然这里不局限于日志文件,只要是存在引用的文件。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Linux新手容易犯的一个错误是把日志文件给直接删除,而不是删除日志文件的内容。直接删除日志文件往往导致新产生的日志记录无法被写入到日志文件中(因为它已经被删除
ls命令是Linux系统中最被频繁使用的命令之一,我相信ls命令一定是你进入一台Linux系统的电脑打开命令提示符后第一个使用的命令。我们每天都在频繁地使用ls
删全部空命令英文命令:TrimAll 操作系统支持:Windows、Linux所属类别:文本操作返回一个文本,其中包含被删除了所有全角或半角空格的指定文本。语法
一.功能简介1.将删除的文件放在回收站中2.恢复删除的文件3.实现linuxrm命令的功能,使用起来几乎和linux系统自带的rm,命令完全一样4.新增功能:r
方法一:使用lsof命令我们可以使用lsof命令来检查某一端口是否开放,基本语法如下:lsof-i:端口号如果没有任何输出则说明没有开启该端口号下图以80端口和