服务器被攻击后第一步该做什么,如何查看系统访问日志?

服务器被攻击后,第一件事就是查系统登录日志和访问日志,找出攻击者进来的时间和路径,再决定是断网还是封IP。很多人一发现被黑就急着重装系统,结果证据全没了,正确做法是先把日志拿到手,再看服务器现状。

攻击发生后先做这三件事,别急着动服务器

突然收到CPU跑满、网站被篡改或者数据库被删的通知,手忙脚乱是正常的,但这时候最忌讳的就是立刻重启、改密码、删文件。

系统故障?linux系统日志查看
加载中
系统故障?linux系统日志查看

第一:给磁盘做快照

登录你的云服务商控制台,找到云服务器实例,点击“创建快照”,如果用的是简米云、酷番云或华为云,这个操作都在实例详情页的“磁盘”选项卡里,快照就是完整的硬盘副本,相当于把现场拍照保存了,后续查日志、分析病毒,都以这个快照作为凭证,好消息是大多数云厂商允许在不停机的情况下打快照,不用等到业务停了再做。

第二:在控制台隔离服务器

别在服务器上直接操作那些日志分析命令,除非你很清楚自己在做什么,先记住源IP,然后到安全组里把端口规则改成禁止所有入站连接,这样攻击者还挂在你的服务器上,但新的数据包进不去,你可以在相对安全的环境里继续查,如果你的业务不能中断,那就开一台新服务器顶上,把受影响的实例保留成快照模式,这涉及到一个常见问题网站被攻击了怎么查日志,答案很简单:在隔离之前先把所有日志目录拷贝一份,防止攻击者执行了清理操作。

第三:检查是否有定时任务和后门文件

攻击者通常会留后门,运行cat /etc/crontab和crontab -l,看看有没有陌生任务,尤其是包含curl、wget或者Base64编码字符的任务,同时打开/root/.bash_history和/home/工具用户/.bash_history,观察是否存在你不认识的命令记录。

Linux查看服务器登录日志命令,给攻击者的入侵路径画线

登录日志是判断攻击者通过什么途径进来、进来了多久的第一手资料,Linux系统里登录记录分散在几个文件里,分工各不相同,把Linux查看服务器登录日志命令这个环节吃透,你就是半个取证专家。

/var/log/auth.log和/var/log/secure是必查文件

Debian系和Ubuntu系统日志在/var/log/auth.log里,CentOS和RHEL系系统日志在/var/log/secure里,这两个文件记录的是SSH登录、sudo提权、新建用户等认证行为,逐行阅读太费时间了,直接用grep来过滤关键词:

grep "Failed password" /var/log/secure | awk '{print $(NF-3)}' | sort | uniq -c | sort -nr | head -20

服务器被攻击后第一步该做什么,如何查看系统访问日志?

这个命令的意思是:在日志里查找所有密码登录失败的记录,提取攻击者的IP地址,统计次数并降序排列,运行结果会直接告诉你哪个IP尝试了最多的密码爆破,如果是你自己输错了几次密码,IP是你自己的内网地址或者办公网出口IP,问题不大,但如果是陌生IP榜上有名,那就锁定了一个攻击源。

还有一个要点:检查是否有Accepted记录里出现你不认识的IP。grep "Accepted" /var/log/secure这行命令会列出所有成功登录的记录,每一行包括时间、用户、IP和端口,对照一下,凡是你不认识的IP成功登录过,就意味着这台机器已经被攻破了,業界共识认为,成功登录是最高的警报级别,比失败尝试重要得多,因为失败只能说明有人在撞库,而成功说明门已经被打开了。

wtmp和btmp文件记录登录历史和注销历史

last命令读取的是/var/log/wtmp,记录的是成功登录和注销的时间线,运行last之后你会看到类似这样的输出:

admin    pts/0    203.0.113.10    Tue Mar 11 03:22 - 03:45 (00:23)
root     pts/1    198.51.100.7    Tue Mar 11 02:10 - 03:02 (00:52)

检查username列是否出现陌生用户名,检查IP列是否出现异常地址,检查时间列是否在深夜或者业务低峰期,这三个维度只要同时出现两个可疑点,基本可以确认这就是攻击者的登录记录。

badlogins你需要单独查看lastb命令,读取的是/var/log/btmp,记录失败的登录尝试,爆破行为往往数量极大,通常都在几百次以上。

用who和w命令查看当前在线的用户

who显示用户名、登录终端、时间、IP地址,w在who的基础上多显示CPU占用和当前执行的命令,执行w,如果看到某个用户运行着一个Shell脚本或者Python程序,而你又没跑过任何定时任务,那大概率是攻击者留下的东西,马上用pkill把对应进程杀掉,或者直接断开他的SSH连接。

服务器被黑怎么查找攻击来源,访问日志会给你指路

登录日志解决的是“谁进来了”的问题,访问日志解决的是“进来之后干了什么”的问题,如果你用的是Nginx或者Apache,访问日志会记录每一个HTTP请求的客户端IP、请求URL、状态码和处理时间。服务器被黑怎么查找攻击来源,看这类日志是最直接的一条路径。

定位状态码异常在200和302之外的请求

正常的网站PV分布中,200(成功)、304(缓存)、404(不存在)的占比通常比较固定,攻击行为往往制造大量500、403、404、301异常状态码,用这条命令查看Nginx访问日志中状态码的分布:

服务器被攻击后第一步该做什么,如何查看系统访问日志?

awk '{print $9}' /var/log/nginx/access.log | sort | uniq -c | sort -rn

如果404的数量异常高,说明存在目录扫描行为,如果500的数量很高,可能是攻击者在利用脚本探测漏洞,如果某一行出现了POST /wp-admin/admin-ajax.php、/index.php?s=/index/think、/bin/bash这类路径,再配合状态码200返回,这就是典型的Webshell上传或者命令执行行为。

建立时间与IP的关联分析

攻击者登录服务器之后,他会直接在终端里输入命令,访问日志里看不到这种操作,但访问日志能解释他是从哪个漏洞入口进来的,查看攻击IP在Nginx日志中的所有请求记录:

grep "203.0.113.10" /var/log/nginx/access.log

把输出结果按时间排序,你会看到攻击者的整个攻击链:先是一个脚本扫描全站目录,然后访问某个特殊的.php、.jsp、.aspx文件,接着上传了一个文件,最后那个文件被访问了多次,中间那一步“上传文件”的请求就是漏洞利用点,据此可以反向修复代码漏洞,多数情况下,攻击者不会只攻击一个点就停手,日志里留下的URL序列往往覆盖了全部尝试。

分析access.log时注意绕过技巧

攻击者会伪造User-Agent字段,会通过CDN转发IP,会把日志中自己的路径改成分散式扫描,所以日志文件不能只看一两行,要整体看流量突增的时间点,如果你发现某个时刻访问量突然到平时的几十倍,而PV来源全部集中在某一个IP段,那就可以断定这是一次针对性的攻击,此时在服务商安全组里一键封禁该IP段,比在服务器上iptables更有效率。

Windows服务器查看远程登录记录,事件查看器里有答案

Windows服务器被攻击不比Linux少,只是很多管理员不熟悉查看方法,Windows的位置在“事件查看器”里,直接按Win+R运行eventvwr.msc即可。Windows服务器查看远程登录记录,核心是三个日志编号:

  • 4625:账户登录失败
  • 4624:账户登录成功
  • 4634:账户注销

点击“Windows日志”→“安全”,然后在右侧点“筛选当前日志”,在事件ID框里输入4625,就能看到所有失败的登录尝试,双击任意一条记录,里面有登录进程、源网络地址和登录时间,攻击者爆破时大量使用Administrator账号,所以看到大量“源网络地址”不一样的4625事件,就说明有人在尝试远程桌面爆破。

如果你确认服务器被攻破,需要追踪该攻击者的行为,不要切到“应用程序”服务园里找线索,而是回到安全日志中筛选4624事件,查看成功登录的记录,重点关注登录类型是3(网络登录)还是10(远程交互式登录),10代表有人真的坐在这台机器前面或者远程桌面进来了。

服务器被攻击后第一步该做什么,如何查看系统访问日志?

还有一个额外留意点:审计策略如果默认没开,部分事件可能查不到,按Win+R运行secpol.msc,进入“本地策略”→“审核策略”,确认“审核登录事件”是“成功,失败”都选中的状态。

超量日志条目怎么快速排查异常登录条目

日志文件很大,几百万行都是常有的事,一条一条看不可能也不现实,以下是按优先级排列的操作顺序:

  • 先去/var/log/secure或auth.log里统计Failed password次数最多的前10个IP,优先封锁
  • 再去/var/log/wtmp里看last的输出结果,找到“仍在登录”状态的记录,也就是那个还没退出的进程,这往往是攻击者当前的活跃会话
  • 接着查看/var/log/btmp的lastb输出,定位爆破行为的攻击源
  • 最后把Nginx或Apache的access.log与登录日志拿到同一时间轴上比对,找到攻击行为从Web入口到系统登录之间的事件顺序

那个异常登录条目出现的精确时间点,就是锁定的关键,从那个时间往后推5分钟,查客户端IP在Web日志里都访问过哪些URL,看到上传路径、管理后台路径、接口路径,基本就定位了漏洞成因。

服务器被攻击后第一步永远是把日志拿到手,登录日志与实际网络访问日志放在一起交叉看,这个动作的优点是你不需要任何高级工具,系统的原始日志就能帮你还原入侵路径,处理攻击的时间窗口很宝贵,日志这一关走完,剩下的就是修补漏洞、清理后门、更换系统口令。

服务器被攻击后日志常见问题

攻击者会把系统日志清理掉吗

攻击者如果已经拿下了root权限,完全可以用一条> /var/log/secure清空日志文件,或者用shred命令彻底销毁日志,这也就是为什么必须第一时间做磁盘快照或者把服务器隔离,日志文件一旦物理删除,恢复难度极高,少数云厂商提供的云盾或云安全中心会有数据额外备份,在有快照的情况下,即使原日志被清理,快照中仍保留完整记录。

服务器被攻击后日志文件很大,可以先删除旧日志吗

不建议这么做,日志文件再大,用grep和awk配合过滤命令都能在几分钟内提取有效信息,直接删除日志会让所有历史记录消失,不仅影响本次排查,还可能影响后续向网警报案时的证据提交,正确的做法是复制有问题的日志到隔离目录,比如/var/log/backup_20260101,保留权限属主和文件时间戳。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/article/654384.html

赞 (0)
怎么从连接日志看出攻击类型?,日志分析有哪些方法
上一篇 2026年9月15日 09:15
代理域名是什么意思呢,代理域名和普通域名有什么区别?
下一篇 2026年9月15日 09:18

相关推荐

  • 2026年GEO优化隐性收费有哪些,怎么避免?

    没有独立思考过程,直接输出正文,GEO优化的隐性收费主要藏在服务范围模糊、效果承诺陷阱和长期合同捆绑里,2026年选服务商时千万别只看表面报价,GEO优化隐性收费的常见类型服务范围模糊导致的额外费用很多服务商在合同里把“基础优化”写得很简单,但执行时你会发现,内容创作、关键词研究、数据监控这些全要另外加钱,行业……

    2026年7月18日
    1200
  • 经销商GEO优化2026区域市场怎么做?2026年经销商GEO优化策略

    2026年经销商GEO优化核心在于将本地服务数据与AI搜索逻辑深度绑定,通过结构化数据标记和真实场景内容构建信任闭环,从而在百度智能搜索中获取高权重曝光,随着百度算法向“智能体(Agent)”模式演进,传统的关键词堆砌已失效,2026年的搜索不再是简单的文本匹配,而是基于意图理解的逻辑推理,经销商若想在区域市场……

    2026年7月10日
    13700
  • 2026年AI搜索排名怎么做?,AI搜索优化有哪些技巧?

    2026年AI搜索排名的核心在于从“关键词匹配”转向“语义实体关联”,通过构建高结构化、高事实密度的知识内容,使品牌信息成为大模型生成答案时的首选引用来源,百度AI搜索结果展示逻辑是什么在2026年的搜索生态中,百度已全面转向基于生成式AI的搜索模式,传统的搜索逻辑是“索引-匹配-排序”,而现在的逻辑是“理解……

    2026年7月13日
    15400
  • 服务器带宽买多大才合适?新手如何判断带宽需求?

    服务器带宽不是越大越好,新手最靠谱的思路是按“同时在线请求量”倒推所需带宽,先算清峰值流量再买,宁可先买小后升级,也别一开始就为闲置带宽买单,服务器带宽多少合适?先算一笔账很多新手买服务器,第一反应是“带宽越大越快”,然后直接选5M、10M甚至更高,但行业共识是,带宽跑不满才是最大的浪费,你买的是独享带宽,不是……

    2026年9月7日
    000
  • 为什么年轻人用AI搜索都不知道我们品牌,怎么解决?

    品牌必须主动成为AI搜索的权威信息来源,否则年轻人用AI搜你的行业时,根本不会看到你的名字,年轻消费者早已习惯向AI助手提问,他们不看网页列表,只信赖AI给出的首段答案,如果你的品牌信息没有被主流平台收录、未被AI模型标记为高权重实体,就等于从他们的世界里彻底消失,这个转变不是趋势,而是正在发生的现实,年轻人用……

    2026年7月15日
    1300
  • 大模型蒸馏训练如何节省算力,有哪些途径?

    大模型蒸馏训练通过知识迁移的方式,用较小规模的学生模型模拟大模型的输出行为,在显著降低算力消耗的同时保留绝大部分性能,训练成本可降至原来的数十分之一甚至更低,蒸馏训练为什么省算力:从重复造轮子到跟着优等生抄笔记想象一下,传统大模型训练就像每所学校都要求所有学生把整本百科全书从头抄一遍,每届学生抄的内容有大量重复……

    2026年9月5日
    000
  • 受限带宽下如何测出云主机真实速率?,云服务器速度慢怎么排查

    受限带宽下测量云主机实际可达速率,最可靠的做法是用iperf3做双向多流TCP打流,而不是依赖浏览器下载或默认测速节点,这样才能逼近真实可用带宽,为什么云主机带宽总感觉“跑不满”受限带宽环境像一个限流的闸门,标称带宽是上限,但实际水流会被很多看不见的东西拖慢,云厂商的限速通常作用在实例网关或虚拟网卡上,TCP慢……

    2026年9月16日
    600
  • 2026年ChatGPT品牌如何优化?,AI排名怎么做?

    ChatGPT搜索品牌优化已从单纯的关键词匹配转向基于语义理解的“信任背书”构建,核心在于通过高质量结构化数据、全网权威引用以及精准的意图匹配来提升AI模型在生成答案时的品牌关联权重,ChatGPT搜索如何影响品牌曝光率在2026年的搜索生态中,用户获取信息的路径发生了根本性变化,传统的“搜索-点击-浏览”模式……

    AI展现优化 2026年7月14日
    1900
  • 传输层如何处理异常RST与异常FIN,TCP RST攻击怎么办

    传输层对异常RST的处理策略比FIN更“狠”:只要序列号不在接收窗口内,多数协议栈会直接丢弃,避免被伪造报文干掉连接;而异常FIN则相对温和,协议栈会先进入半关闭状态,把决定权交给应用层,异常RST和FIN的区别:一个像拉闸,一个像挥手触发机制与报文特征差异RST和FIN虽然都用于断开TCP连接,但性格完全不同……

    2026年9月9日
    000
  • 业务侧人机校验和账号风控如何联动,最佳实践有哪些

    业务侧人机校验与账号风控联动处理的核心思路,是把“验证码这道门”和“风控这双眼睛”接到同一个大脑上,两者不该各自为战,验证码负责拦截机器流量,风控负责识别异常账号行为,只有联动起来,才能在拦截黑产的同时,不误伤正常用户,让注册、登录、下单等每一个业务动作既安全又丝滑,为什么说人机校验和账号风控天生就该是一对很多……

    2026年9月9日
    200

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注