运维工作中,遇到各种系统、网络、应用、数据库故障是常见的。为了帮助运维人员高效排查问题并快速修复,以下总结了50个常见的故障排查及修复技巧。
一、系统层面
- 检查系统日志:
-
技巧: 查看
journalctl
、/var/log
下的日志,找出问题线索。 -
修复: 根据日志内容,调整服务配置,重启服务。
- 高负载排查:
-
技巧: 使用
top
、htop
分析 CPU、内存和 I/O 的使用情况。 -
修复: 优化负载进程、调整优先级或增加资源。
- 内存泄漏排查:
-
技巧: 使用
free
、vmstat
查看内存使用,valgrind
分析进程内存使用。 -
修复: 重启进程,修复内存泄漏问题。
- 磁盘空间不足:
-
技巧: 使用
df -h
检查磁盘使用,du -sh
查找占用大量空间的文件。 -
修复: 删除不必要的文件,清理日志,扩容磁盘。
- 服务无法启动:
-
技巧: 使用
systemctl
查看服务状态,查阅相关日志。 -
修复: 检查依赖、配置文件错误,修复后重启服务。
- 内核参数调优:
-
技巧: 使用
sysctl
查看和调整系统内核参数。 -
修复: 优化 TCP 缓冲区、最大连接数等参数,提升系统性能。
- 进程崩溃:
-
技巧: 使用
dmesg
查看内核日志,分析进程崩溃原因。 -
修复: 排查资源耗尽、代码错误等问题,修复后重启进程。
- CPU瓶颈排查:
-
技巧: 使用
mpstat
、sar
检查 CPU 使用情况。 -
修复: 优化应用代码、调整负载均衡、增加 CPU 核心数。
- 文件系统问题:
-
技巧: 使用
fsck
检查文件系统错误。 -
修复: 在系统重启时运行
fsck
修复文件系统。
- 内存交换(swap)使用过高:
-
技巧: 使用
vmstat
检查 swap 使用情况。 -
修复: 增加物理内存,调整 swap 使用策略。
二、网络层面
- 网络连通性检查:
-
技巧: 使用
ping
、traceroute
检查连通性和路由问题。 -
修复: 修复网络配置,检查防火墙规则。
- 端口占用问题:
-
技巧: 使用
netstat
、ss
查看端口占用情况。 -
修复: 终止占用端口的进程或修改应用程序端口配置。
- 防火墙问题:
-
技巧: 使用
iptables
、firewalld
检查和调整防火墙规则。 -
修复: 修改防火墙规则,开放必要端口。
- DNS解析问题:
-
技巧: 使用
nslookup
、dig
查看域名解析情况。 -
修复: 检查本地 DNS 配置,更换 DNS 服务器。
- 网络拥塞:
-
技巧: 使用
iftop
、nload
分析网络流量。 -
修复: 限制大流量任务,优化网络拓扑或升级带宽。
- TCP连接超时问题:
-
技巧: 使用
netstat
或ss
检查 TCP 连接状态。 -
修复: 调整 TCP 超时参数,优化连接池配置。
- 带宽占用过高:
-
技巧: 使用
iftop
查看带宽使用情况。 -
修复: 限制带宽占用高的进程或用户,优化带宽分配。
- ARP冲突:
-
技巧: 使用
arp -a
查看 ARP 表冲突情况。 -
修复: 修正IP地址分配,避免冲突。
- MTU不匹配问题:
-
技巧: 使用
ping -M do -s
测试 MTU 配置。 -
修复: 调整 MTU 设置,匹配网络设备参数。
- SSL证书问题:
-
技巧: 使用
openssl
工具检查 SSL 证书状态。 -
修复: 更新或重新生成 SSL 证书。
三、应用层面
- 应用服务宕机:
-
技巧: 检查日志文件,查看崩溃前的记录。
-
修复: 优化服务配置或修复应用程序错误,确保服务稳定运行。
- 高并发引起的瓶颈:
-
技巧: 使用
netstat
、sar
检查并发连接数。 -
修复: 增加负载均衡节点,优化应用代码和数据库查询。
- 应用死锁:
-
技巧: 使用
strace
或gdb
调试进程,定位死锁问题。 -
修复: 修复代码逻辑,避免并发操作导致死锁。
- 应用启动慢:
-
技巧: 使用
strace
跟踪启动过程中的系统调用。 -
修复: 优化启动流程,减少加载时间。
- 应用日志过大:
-
技巧: 定期检查日志文件大小,使用
logrotate
进行日志轮转。 -
修复: 调整日志级别,定期清理日志。
- 应用端口冲突:
-
技巧: 使用
lsof
或netstat
查看端口占用情况。 -
修复: 释放被占用端口或修改应用的端口配置。
- 连接池耗尽:
-
技巧: 检查应用日志中的连接池耗尽错误。
-
修复: 调整连接池配置,增加连接数或优化数据库查询。
- 应用配置错误:
-
技巧: 检查配置文件中的参数设置,确保其正确性。
-
修复: 修正配置文件,重新加载服务。
- 应用超时问题:
-
技巧: 使用
curl
或ab
工具测试应用响应时间。 -
修复: 增加应用超时设置,优化数据库查询速度。
- 依赖服务不可用:
-
技巧: 使用
curl
或telnet
测试依赖服务的可用性。 -
修复: 检查依赖服务的运行状态,修复或重启服务。
四、数据库层面
- 数据库连接失败:
-
技巧: 检查数据库端口、用户权限和网络连通性。
-
修复: 修正权限问题或网络配置。
- 慢查询问题:
-
技巧: 使用
EXPLAIN
分析 SQL 查询的执行计划。 -
修复: 优化 SQL 查询,增加索引或进行分区。
- 数据库死锁:
-
技巧: 使用数据库的锁状态命令(如 MySQL 的
SHOW ENGINE INNODB STATUS
)。 -
修复: 优化事务处理,避免长时间锁定表。
- 数据库性能瓶颈:
-
技巧: 使用
mysqltuner
或数据库自带的性能监控工具。 -
修复: 增加数据库缓存,优化查询,升级硬件资源。
- 主从复制延迟:
-
技巧: 查看复制状态,检查主从同步情况。
-
修复: 优化主库的负载,增加从库数量或调整复制策略。
- 数据表锁定:
-
技巧: 使用
SHOW PROCESSLIST
或等效命令查看锁状态。 -
修复: 优化查询,减少大批量操作对数据库的影响。
- 数据库备份失败:
-
技巧: 检查备份日志,确认备份失败的原因。
-
修复: 增加存储空间或调整备份策略。
- 数据库磁盘 I/O 问题:
-
技巧: 使用
iostat
检查数据库的 I/O 使用情况。 -
修复: 使用 SSD 或增加 RAID 阵列,优化 I/O 性能。
- 表空间不足:
-
技巧: 使用
SHOW TABLE STATUS
查看表空间使用情况。 -
修复: 增加表空间,清理无用数据。
- 连接数过多:
-
技巧: 使用
SHOW STATUS
查看数据库连接数。 -
修复: 增加最大连接数或优化连接池管理。
五、安全与权限管理
- 权限错误导致无法访问:
-
技巧: 使用
chmod
、chown
修复文件或目录的权限。 -
修复: 调整权限设置,确保合理分配用户权限。
- SSH登录失败:
-
技巧: 检查
/var/log/auth.log
或journalctl
查看 SSH 登录失败原因。 -
修复: 检查 SSH 配置文件,调整防火墙规则。
- 系统防暴力破解:
-
技巧: 使用
fail2ban
等工具监控异常登录尝试。 -
修复: 配置自动封禁策略,保护服务器。
- 防火墙规则过于严格:
-
技巧: 使用
iptables
或firewalld
查看防火墙规则。 -
修复: 放行必要的端口,合理设置策略。
- 定期密码更换:
-
技巧: 设置定期密码策略,避免密码泄露。
-
修复: 强制用户定期更换密码。
- 日志审计:
-
技巧: 使用
auditd
审计用户操作日志。 -
修复: 定期审查日志,排查异常操作。
- 文件完整性检测:
-
技巧: 使用
tripwire
或aide
检查文件完整性。 -
修复: 发现异常后及时修复或报警。
- 应用漏洞扫描:
-
技巧: 使用
OpenVAS
或Nessus
扫描应用系统漏洞。 -
修复: 根据扫描结果修复漏洞,及时打补丁。
- 访问控制列表(ACL)管理:
-
技巧: 使用
setfacl
查看和调整文件 ACL。 -
修复: 设置合理的访问控制,防止越权访问。
- 日志轮转失败:
-
技巧: 检查
logrotate
配置文件,确保其正确性。 -
修复: 修改轮转策略,保证日志文件定期归档。
总结
这50个运维排查及修复技巧,涵盖了系统、网络、应用、数据库和安全管理等多个层面。通过熟练掌握这些技巧,运维人员可以快速定位故障,并采取有效的修复措施,确保系统的稳定性和安全性。
`黑客&网络安全如何学习
今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。
1.学习路线图
攻击和防守要学的东西也不少,具体要学的东西我都写在了上面的路线图,如果你能学完它们,你去就业和接私活完全没有问题。
2.视频教程
网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。
内容涵盖了网络安全法学习、网络安全运营等保测评、渗透测试基础、漏洞详解、计算机基础知识等,都是网络安全入门必知必会的学习内容。
(都打包成一块的了,不能一一展开,总共300多集)
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享
3.技术文档和电子书
技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,由于内容的敏感性,我就不一一展示了。
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享
4.工具包、面试题和源码
“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。
还有我视频里讲的案例源码和对应的工具包,需要的话也可以拿走。
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取
CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享
最后就是我这几年整理的网安方面的面试题,如果你是要找网安方面的工作,它们绝对能帮你大忙。
这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。
参考解析:深信服官网、奇安信官网、Freebuf、csdn等
内容特点:条理清晰,含图像化表示更加易懂。
内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取