设为首页
收藏本站
切换到宽版
门户
Portal
社区
BBS
站长
开发
运维
资源
游戏
产品
登录
立即注册
随客社区
»
社区
›
交流大厅
›
运维联盟
›
Linux 服务器被入侵后,如何通过登录日志排查入侵源?【 ...
返回列表
发布新帖
查看:
817
|
回复:
0
Linux 服务器被入侵后,如何通过登录日志排查入侵源?【实战指南】
lin
lin
当前离线
UID
5
星火
贡献
奖金
发表于 2025-4-17 13:49:26
|
查看全部
|
阅读模式
这里或许是互联网从业者的最后一片净土,随客社区期待您的加入!
您需要
登录
才可以下载或查看,没有账号?
立即注册
×
本帖最后由 lin 于 2025-4-17 13:57 编辑
一旦服务器被黑客入侵,第一时间要做的就是排查登录历史、定位入侵来源、封堵安全隐患。本文将系统性地介绍如何通过 Linux 提供的日志工具,分析异常登录、追踪可疑 IP,并进行应急处置,适合一线运维人员、开发者参考。
1. 查看最近的登录记录(last 命令)
使用 last 命令可以快速查看系统的登录历史,了解有哪些用户何时、从哪里登录了系统。
last -n 20 # 查看最近 20 条登录记录
复制代码
last -f /var/log/wtmp # 指定登录日志文件(默认也是 wtmp)
复制代码
重点观察:
用户名(如:root、admin、陌生账号等)
登录时间(是否是凌晨、非工作时间等异常时段)
登录来源 IP
登录方式(如 SSH pts/X)
示例输出:
root pts/0 192.168.1.100 Thu Apr 11 10:15 still logged in
复制代码
hacker pts/1 45.76.123.89 Thu Apr 11 09:55 - 10:05 (00:10)
复制代码
如发现陌生账号或外部 IP 登录记录,极有可能是入侵痕迹。
2. 查看失败登录尝试(lastb 命令)
lastb 可以查看所有失败的登录尝试,通常暴力破解的痕迹会体现在这里。
lastb | head -n 20 # 查看最近 20 次失败登录尝试
复制代码
若某个 IP 连续多次尝试失败,可能在尝试暴力破解:
banned ssh:notty 103.20.45.89 Thu Apr 11 09:50 - 09:51 (00:01)
复制代码
3. 检查 SSH 登录日志(/var/log/secure 或 /var/log/auth.log)
3.1 查找成功登录记录
grep "Accepted" /var/log/secure # CentOS/ RHEL
复制代码
grep "Accepted" /var/log/auth.log # Ubuntu/Debian
复制代码
示例输出:
Apr 11 10:15:00 server sshd[1234]: Accepted password for root from 45.76.123.89 port 45678 ssh2
复制代码
3.2 查找失败登录记录
grep "Failed password" /var/log/secure
复制代码
grep "Failed password" /var/log/auth.log
复制代码
3.3 查找 root 用户远程登录
grep "session opened" /var/log/secure | grep "root"
复制代码
4. 查看当前在线用户(who / w)
who
复制代码
w
复制代码
示例输出中如发现陌生用户名(如 hacker、test123),说明系统已被控制。
5. 检查 SSH 配置是否被篡改
入侵者可能会修改 SSH 配置,放宽登录条件。
cat /etc/ssh/sshd_config | grep PermitRootLogin
复制代码
建议设置为:
PermitRootLogin no
复制代码
并修改默认端口,避免暴力扫描。
6. 查看用户执行命令历史(.bash_history)
cat ~/.bash_history | tail -n 50
复制代码
重点查找:
wget 或 curl 下载恶意脚本
chmod 777、./xxx 执行权限提升命令
添加用户、植入后门的脚本
7. 追踪可疑 IP 来源(whois / ping)
例:
whois 45.76.123.89
复制代码
ping -c 4 45.76.123.89
复制代码
还可以使用 AbuseIPDB 检查是否为恶意 IP:
curl -s https://api.abuseipdb.com/api/v2/check?ipAddress=45.76.123.89
复制代码
8. 应急处理建议
8.1 封禁可疑 IP
iptables -A INPUT -s 45.76.123.89 -j DROP
复制代码
firewall-cmd --add-rich-rule='rule family="ipv4" source address="45.76.123.89" reject' --permanent
复制代码
fail2ban-client set sshd banip 45.76.123.89
复制代码
8.2 修改 SSH 配置
vim /etc/ssh/sshd_config
复制代码
# 推荐配置
Port 2222
复制代码
PermitRootLogin no
复制代码
systemctl restart sshd
复制代码
8.3 强制踢出可疑用户
pkill -u hacker
复制代码
8.4 锁定高危账户
usermod -L hacker
复制代码
8.5 更改所有密码
passwd root
复制代码
8.6 更新系统与安全补丁
yum update -y # CentOS
复制代码
apt update && apt upgrade -y # Ubuntu/Debian
复制代码
9. 总结与建议当发现服务器被入侵,第一步不是重装系统,而是排查入侵路径和清除隐患。
通过 last、lastb、grep、w、bash_history 等常用命令,我们可以快速定位登录来源,分析入侵行为。
当然,如果系统已被完全控制,建议直接备份数据后重装系统,并使用如 雪花云这类稳定服务器平台重新部署,同时强化如下措施:
禁止 root 远程登录
使用非默认 SSH 端口
启用 fail2ban、防火墙策略
使用密钥登录替代密码登录
定期审计登录日志和账户活动
📚 相关文档推荐:
Linux 官方文档
Red Hat 安全指南
Debian Wiki - 安全部分
如果本文对你有帮助,欢迎点赞、收藏、评论交流,也可以分享给你的团队或同事。
如需更多实战经验和 Linux 运维技巧,欢迎关注我!
回复
举报
返回列表
发布新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
快速入口
社区门户
社区首页
随客云计算
重要文档
社区规则
官方公告
关于我们
团队介绍
产品合集
联系我们
532352
028-67879779
tech@isuike.com
Copyright © 2001-2025
Suike Tech
All Rights Reserved.
随客交流社区 (备案号:
津ICP备19010126号
)
|
Processed in 0.104034 second(s), 6 queries , Gzip On, MemCached On.
关灯
在本版发帖
返回顶部
快速回复
返回顶部
返回列表