news 2026/5/10 15:47:32

从运维到安全:我是如何用Nmap + Wireshark,给自家服务器做了一次“体检”并发现异常连接的

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
从运维到安全:我是如何用Nmap + Wireshark,给自家服务器做了一次“体检”并发现异常连接的

从运维到安全:我是如何用Nmap + Wireshark,给自家服务器做了一次“体检”并发现异常连接的

那天深夜,当我例行检查服务器日志时,一条陌生的IP访问记录引起了我的注意。作为个人项目的运维者,我决定给服务器做一次全面的"体检"——不是简单的端口扫描,而是结合Nmap的深度探测与Wireshark的流量分析,像侦探一样追踪每一个可疑的网络活动。这次经历让我意识到,安全运维不是被动防御,而是需要主动出击的持续过程。

1. 初识异常:从日志到初步扫描

日志中的异常记录显示,一个来自东欧的IP在凌晨3点尝试连接了我的MySQL端口。虽然防火墙拦截了这次尝试,但这件事让我警觉起来——我的服务器到底开放了哪些服务?是否存在我不知道的监听端口?

我决定先用Nmap做个基础扫描:

nmap -sS -T4 192.168.1.100

这个简单的SYN扫描(-sS)很快给出了结果:

PORT STATE SERVICE 22/tcp open ssh 80/tcp open http 3306/tcp open mysql

看起来只有预期的三个端口开放。但我知道,这远远不够——有些服务可能配置了非标准端口,或者只在特定时间响应。我需要更深入的扫描。

2. 深度扫描:揭开隐藏的服务

为了发现更多信息,我使用了Nmap的版本检测(-sV)和操作系统识别(-O):

nmap -sV -O -p- 192.168.1.100

这次扫描耗时更长,但回报丰厚。除了之前的三个端口,它还发现:

PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 8.2p1 Ubuntu 4ubuntu0.3 80/tcp open http nginx 1.18.0 3306/tcp open mysql MySQL 5.7.32 8080/tcp open http-proxy

8080端口?我完全不记得自己开启过这个服务。更奇怪的是,版本检测没能识别出它运行的具体软件。这引起了我的高度警惕。

3. 流量分析:用Wireshark验证扫描结果

为了弄清8080端口的真实情况,我决定同时运行Wireshark捕获流量,观察Nmap扫描时的网络交互:

tcpdump -i eth0 -w nmap_scan.pcap

在Wireshark中分析捕获的数据包时,我注意到几个异常现象:

  1. 8080端口的响应模式与其他标准HTTP服务不同
  2. 有来自内部网络的SYN包发往8080端口,而我确定没有内部客户端主动连接
  3. 该端口偶尔会主动向外发起连接,目标IP位于一个云服务提供商

这些迹象表明,8080端口可能被植入了某种后门程序。为了进一步确认,我使用了Nmap的NSE脚本进行针对性探测:

nmap -sV -p 8080 --script=*vuln* 192.168.1.100

4. 应急响应:从发现到处理

确认存在异常后,我立即采取了以下步骤:

  1. 网络隔离:在防火墙上阻断8080端口的所有进出流量
  2. 进程分析:使用netstat -tulnp找到监听8080的进程
  3. 取证保存:将可疑进程的内存转储和二进制文件备份以供分析
  4. 系统修复:终止恶意进程,删除相关文件,检查crontab和systemd单元

事后分析发现,这是一个利用旧版软件漏洞植入的加密货币挖矿程序。它通过8080端口接收控制命令,并定期将挖矿结果外传。

5. 构建持续监控体系

这次事件促使我建立了更完善的安全监控机制:

  • 定期扫描:设置每周自动运行的Nmap扫描,比对端口变化
  • 流量基线:使用Wireshark建立正常流量模式,设置异常告警
  • 日志集中:将各服务的日志统一收集分析,便于关联事件
  • 最小权限:遵循最小权限原则,关闭所有非必要服务

我还创建了一个简单的Shell脚本,自动化部分安全检查工作:

#!/bin/bash # 基础安全检查脚本 PORTS=$(nmap -sS -T4 localhost | grep 'open' | awk '{print $1}') CURRENT=$(echo $PORTS | md5sum | awk '{print $1}') KNOWN="已知正常端口列表的MD5" if [ "$CURRENT" != "$KNOWN" ]; then echo "警告:检测到端口变化!" | mail -s "安全警报" admin@example.com fi

6. 工具进阶:Nmap与Wireshark的深度配合

通过这次经历,我探索出几个实用的工具组合技巧:

Nmap高级参数组合

参数组合用途典型场景
-sS -sV -O --traceroute全面资产发现新服务器接管时
-Pn --top-ports 100 --script vuln漏洞快速筛查定期安全检查
-sU -p 53,161,123UDP服务探测DNS/NTP服务检查

Wireshark过滤技巧

  • tcp.port == 8080 && tcp.flags.syn == 1捕获特定端口的连接尝试
  • http.request.method == "POST"监控可疑的POST请求
  • ip.src == 192.168.1.100 && tcp.flags.fin == 1跟踪服务器发起的连接关闭

7. 安全运维的思维转变

这次"体检"带给我的最大收获不是技术层面的,而是思维方式的转变:

  1. 从被动到主动:不再等待问题出现,而是主动寻找潜在风险
  2. 从单一到多维:不依赖单一工具或指标,交叉验证各项发现
  3. 从技术到流程:建立标准化的检查清单和响应流程
  4. 从个人到协作:将发现分享给同行,共同提高安全水位

服务器安全就像身体健康,不能等到生病才去看医生。定期的全面检查、异常指标的及时关注、预防性的"保健"措施,这些才是避免重大安全事故的关键。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/10 15:46:39

前端应用通过环境变量隐藏式接入 Taotoken 大模型服务

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 前端应用通过环境变量隐藏式接入 Taotoken 大模型服务 在构建集成了大模型能力的前端或全栈应用时,一个常见的工程挑战…

作者头像 李华
网站建设 2026/5/10 15:44:51

2026奇点大会紧急预警:3类典型AI工作流(RAG/Agent/Streaming LLM)正在淘汰传统向量库——你的选型还剩多少月窗口期?

更多请点击: https://intelliparadigm.com 第一章:AI原生向量数据库选型:2026奇点智能技术大会技术对比 在2026奇点智能技术大会上,主流AI原生向量数据库的架构演进已从“支持向量检索”跃迁至“原生协同推理”,核心差…

作者头像 李华
网站建设 2026/5/10 15:40:03

LinkSwift:终极网盘直链下载助手完整指南,彻底告别限速烦恼

LinkSwift:终极网盘直链下载助手完整指南,彻底告别限速烦恼 【免费下载链接】Online-disk-direct-link-download-assistant 一个基于 JavaScript 的网盘文件下载地址获取工具。基于【网盘直链下载助手】修改 ,支持 百度网盘 / 阿里云盘 / 中国…

作者头像 李华
网站建设 2026/5/10 15:38:52

如何永久保存微信聊天记录?三步搞定数据备份与深度分析指南

如何永久保存微信聊天记录?三步搞定数据备份与深度分析指南 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/we/…

作者头像 李华