Linux常用应急溯源命令

常用命令

1、账号相关命令

1、查询特权用户特权用户(uid 为0):awk -F: '3==0{print 1}' etc/passwd

2、查询可以远程登录的帐号信息:awk '/\1\|\\6/{print $1}' etc/shadow

2、程序相关命令

1、查看当前开放端口netstat -tnlp

2、查看当前系统上运行的所有进程ps -ef

3、查看进程ps aux | grep pid

4、查看cpu占用率前十的进程ps aux --sort=pcpu | head -10

3、日志相关命令

1、日志默认存放位置:/var/log/

2、查看日志配置:more /etc/rsyslog.conf

|----------------------|---------------------------------------------------------------------------------------|
| 日志文件 | 说明 |
| /var/log/cron | 记录了系统定时任务相关的日志 |
| /var/log/cups | 记录打印信息的日志 |
| /var/log/dmesg | 记录了系统在开机时内核自检的信息,也可以使用dmesg命令直接查看内核自检信息 |
| /var/log/mailog | 记录邮件信息 |
| /var/log/message | 记录系统重要信息的日志。这个日志文件中会记录Linux系统的绝大多数重要信息,如果系统出现问题时,首先要检查的就应该是这个日志文件 |
| /var/log/btmp | 记录错误登录日志,这个文件是二进制文件,不能直接vi查看,而要使用lastb命令查看 |
| /var/log/lastlog | 记录系统中所有用户最后一次登录时间的日志,这个文件是二进制文件,不能直接vi,而要使用lastlog命令查看 |
| /var/log/wtmp | 永久记录所有用户的登录、注销信息,同时记录系统的启动、重启、关机事件。同样这个文件也是一个二进制文件,不能直接vi,而需要使用last命令来查看 |
| /var/log/utmp | 记录当前已经登录的用户信息,这个文件会随着用户的登录和注销不断变化,只记录当前登录用户的信息。同样这个文件不能直接vi,而要使用w,who,users等命令来查询 |
| /var/log/secure | 记录验证和授权方面的信息,只要涉及账号和密码的程序都会记录,比如SSH登录,su切换用户,sudo授权,甚至添加用户和修改用户密码都会记录在这个日志文件中 |

复制代码
查看系统的成功登录、关机、重启等: /var/log/wtmp
查看登陆失败的用户日志: /var/log/btmp
查看所有用户登陆日志: /var/log/lastlog
查看谁在使用某个端口:lsof -i :5001
查看内部对外的网络连接:lsof -nPi
3.1 定位爆破root帐号来源IP
复制代码
#grep "Failed password for root" /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more


#定位有哪些IP在爆破:
grep "Failed password" /var/log/secure|grep -E -o "(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)"|uniq -c


#爆破用户名字典是什么?
grep "Failed password" /var/log/secure|perl -e 'while($_=<>){ /for(.*?) from/; print "$1\n";}'|uniq -c|sort -nr
3.2 查询登录成功的IP
复制代码
#last命令,它会读取位于/var/log/wtmp的文件,并把该文件记录的登录系统的用户名单。
#grep "Accepted " /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more
3.3 查询增加用户日志
复制代码
登录成功的日期、用户名、IP:
grep "Accepted " /var/log/secure | awk '{print $1,$2,$3,$9,$11}' 
grep "useradd" /var/log/secure 
3.4 查询删除用户日志
复制代码
# grep "userdel" /var/log/secure
3.5 查询su切换用户记录
复制代码
#sudo -l

4、定时任务

1、排查以下文件:

/var/spool/cron/*、/etc/crontab、/etc/cron.d/*、/etc/cron.daily/*、/etc/cron.hourly/*、/etc/cron.monthly/*、/etc/cron.weekly/、/etc/anacrontab、/var/spool/anacron/*

2、查看目录下所有文件:more /etc/cron.daily/*

5、文本相关

5.1grep查找前后数据
复制代码
显示1.txt文件里匹配ffuck字串那行以及上下5行:grep -C 5 fuck 1.txt
显示foo及前5行:grep -B 5 fuck 1.txt
显示foo及后5行:grep -A 5 fuck 1.txt
5.2显示文件几行
复制代码
从第100行开始,显示200行,显示100~299行:cat shell.php | tail -n +100 | head -n 200

6、其他相关

6.1查看最近改动的各类脚本文件和其他文件

复制代码
查找24小时内被修改的JSP文件:find ./ -mtime 0 -name "*.jsp"和find ./ -mtime 0 -name "*.php"
查看密码文件上一次修改的时间(最近改动):stat /etc/passwd
查看除无法登录以外的用户,有无新增:cat /etc/passwd | grep -v nologin
查看哪些用户为root权限,有无新增:cat /etc/passwd | grep x:0
查看哪些用户使用shell:cat /etc/passwd | grep /bin/bash

6.2域名hosts

复制代码
vim /etc/hosts
相关推荐
Ruiery8 小时前
Linux 6.6内核 CPU 深度解析(七):调度器启动 — 从单核到多核,调度器分阶段点亮
linux·运维·服务器
50万马克的面包8 小时前
CSDN-栈队列数组-知识点整理
linux·运维·服务器
MicrosoftCloud9 小时前
用户权限 04|/etc/sudoers 安全配置:从最小授权到「别把 ALL 随便给人」
运维·安全·ubuntu·sudo·sudoers
wjkjpcba9 小时前
PCBA烧录程序是什么:PCBA包工包料厂家解析烧录与测试
linux·数据库·人工智能·smt贴片加工·pcba贴片加工厂
꯭自꯭闭꯭10 小时前
达梦事物特性及MVCC
linux·运维·数据库
91刘仁德11 小时前
HTTP协议详解:从URL到HTTP服务器的完整实战
服务器·网络·笔记·网络协议·http
亚川楼宇自控系统数据中心厂家11 小时前
实验室智能化管理系统|人环物智一体化管控平台
运维
羔羊++11 小时前
18_实验十七_其他命令与自定义启动变量
linux
zmsup12 小时前
Agent 上下文调优:结合 OpsArk 运维智能体,设计模型每一步真正需要的信息
运维·agent·上下文压缩·运维智能体·上下文调优
DYWorker00113 小时前
Linux驱动:RK3568 GMAC + YT8531C 千兆以太网全流程解剖
linux