1. 监控网络流量:识别异常流量模式
网络流量是判断服务器是否被攻击的重要指标。若服务器遭受DDoS攻击,会出现流量突然剧增(如带宽使用率飙升至90%以上),导致正常服务访问缓慢或无法响应;若存在恶意数据外泄,可能出现大量异常传出流量(如非业务相关的文件传输)。此外,来自单一地区、IP段或无效页面(如不存在的URL)的请求激增,也需警惕。可使用Wireshark、Nload、Iftop等工具实时监控流量,及时发现异常。
2. 检查系统性能:发现资源异常消耗
攻击(如DDoS、挖矿木马、暴力破解)会导致服务器性能骤降。需重点关注:CPU使用率(如持续超过80%,且无对应业务负载增加)、内存使用率(如剩余内存不足10%,导致系统频繁交换)、磁盘I/O(如读写速率异常升高,可能是文件注入或日志轰炸)。可通过top、htop(Linux)或任务管理器(Windows)查看实时性能数据,若资源占用异常且无法用正常业务解释,需进一步排查。
3. 分析系统日志:查找可疑活动痕迹
系统日志(如/var/log/syslog、/var/log/auth.log)记录了服务器的所有活动,是检测攻击的关键线索。需关注:失败的登录尝试(如多次SSH登录失败,尤其是来自陌生IP)、异常登录成功(如管理员账户在非工作时间登录,或来自非预期地理位置的登录)、系统错误(如大量“Permission denied”“File not found”错误,可能是扫描或攻击尝试)。可使用tail -f实时查看日志,或通过Logwatch生成每日报告,快速定位异常。
4. 扫描开放端口与服务:发现未授权访问入口
开放的不必要端口或未知服务是攻击者的入侵通道。需定期使用netstat -tuln(Linux)或netstat -ano(Windows)查看开放端口,结合Nmap扫描(如nmap -sV <服务器IP>)识别运行中的服务。若发现未知端口(如非业务需要的2222、3306端口)、未授权服务(如FTP、Telnet未关闭),应及时关闭端口或禁用服务,减少攻击面。
5. 检查进程与文件系统:识别恶意活动
恶意进程或文件修改是服务器被入侵的直接证据。进程检查:使用ps -aux(Linux)或任务管理器(Windows)查看运行中的进程,若发现未知名称、无签名的进程(如以“.tmp”结尾的进程),或已知进程以root/admin权限运行(如explorer.exe占用高CPU),需立即终止并排查来源。文件系统检查:监控系统关键目录(如/bin、/sbin、/etc、/www)的文件变动,若发现新增未知文件(如名为“backdoor.sh”的脚本)、修改系统文件(如/etc/passwd、/etc/shadow被篡改)、文件权限异常(如普通文件设置为777权限),可能是攻击者植入后门或篡改配置。
6. 关注安全告警:借助工具实时预警
部署入侵检测系统(IDS,如Snort、Suricata)、入侵防御系统(IPS)或安全信息事件管理(SIEM,如Elastic SIEM)工具,可实时监控网络流量、日志和系统活动,识别恶意行为并发出告警。例如,Suricata能检测到SQL注入、XSS等Web攻击,SIEM能关联多源日志(如防火墙、服务器日志),快速定位高级威胁。需定期查看告警记录,及时响应高风险事件。
7. 审查账户与权限:防范未授权访问
攻击者常通过创建新账户或提升权限维持访问。需检查:新增账户(如/etc/passwd中突然出现的陌生用户,如“hacker”)、账户权限(如普通用户被添加到sudoers文件)、密码策略(如弱密码(123456、admin)是否仍在使用)。建议定期修改密码(使用12位以上包含大小写字母、数字和符号的复杂密码),启用多因素认证(MFA),限制账户权限(如遵循最小权限原则)。
8. 检查Web应用与数据库:防范针对性攻击
若服务器托管Web应用,需关注应用层攻击迹象。Web日志分析:查看Apache/Nginx日志中的异常请求(如大量“/wp-admin.php”请求,可能是WordPress暴力破解;或包含“union select”的SQL注入语句),或数据库异常(如MySQL慢查询日志激增、数据表被篡改、敏感数据(如用户密码)泄露)。可使用OWASP ZAP、Burp Suite等工具扫描Web漏洞(如SQL注入、XSS、CSRF),定期更新Web应用框架(如WordPress、Drupal)及插件,修复已知漏洞。