2. Web网络基础 - 协议端口

深入解析协议端口与netstat命令:网络工程师的实战指南

在网络通信中,协议端口是服务访问的门户。本文将全面解析端口概念,并通过netstat命令实战演示如何监控网络连接状态。

一、协议端口核心知识解析

1. 端口号的本质与分类

端口范围类型说明示例
0-1023知名端口系统服务保留端口HTTP:80, FTP:21
1024-49151注册端口用户程序注册端口MySQL:3306, Redis:6379
49152-65535动态端口客户端临时端口浏览器随机端口

2. 常见协议端口速查表

  • Web服务:80(HTTP), 443(HTTPS)
  • 文件传输:21(FTP), 22(SFTP/SSH)
  • 邮件服务:25(SMTP), 110(POP3), 143(IMAP)
  • 数据库:3306(MySQL), 5432(PostgreSQL)
  • 远程管理:22(SSH), 3389(RDP)
  • 域名解析:53(DNS)

二、netstat命令深度解析

命令语法与参数

netstat -pantu  # 关键参数解析:
  • -p:显示进程信息
  • -a:显示所有连接
  • -n:以数字形式显示地址
  • -t:仅显示TCP连接
  • -u:仅显示UDP连接

命令输出详解

tcp 0 0 10.206.32.25:53 0.0.0.0:* LISTEN 768/named
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 768/named
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 804/sshd
tcp6 0 0 :::8080 :::* LISTEN 2519853/java

输出字段解析

  1. 协议类型
    tcp/tcp6:TCP协议(IPv4/IPv6)
    udp/udp6:UDP协议(IPv4/IPv6)

  2. 接收队列
    0:当前接收队列中的数据字节数(通常为0表示无积压)

  3. 发送队列
    0:当前发送队列中的数据字节数

  4. 本地地址
    10.206.32.25:53:服务监听地址(IP:端口)
    0.0.0.0:*:监听所有IPv4接口
    :::*:监听所有IPv6接口

  5. 远程地址
    0.0.0.0:*:等待任何远程主机连接

  6. 状态
    LISTEN:服务正在监听端口
    ESTABLISHED:已建立连接
    TIME_WAIT:连接关闭等待

  7. 进程信息
    768/named:进程ID/程序名称

三、关键服务解析实战

1. DNS服务(端口53)

tcp 0 0 10.206.32.25:53 0.0.0.0:* LISTEN 768/named
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 768/named

配置特点

  • 监听内网IP(10.206.32.25)提供局域网DNS服务
  • 监听回环地址(127.0.0.1)提供本机DNS解析
  • 使用named服务(BIND DNS服务器)

2. SSH服务(端口22)

tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 804/sshd
tcp6 0 0 :::22 :::* LISTEN 804/sshd

安全要点

  • 监听所有接口(IPv4+IPv6)
  • 使用sshd服务提供远程加密登录
  • 默认端口22常被攻击,建议修改

3. Java应用服务(端口8080)

tcp6 0 0 :::8080 :::* LISTEN 2519853/java

典型特征

  • 监听8080端口(常见HTTP备用端口)
  • 由Java进程运行(PID 2519853)
  • 使用IPv6协议栈(tcp6

4. 内部管理端口

tcp 0 0 127.0.0.1:953 0.0.0.0:* LISTEN 768/named
tcp6 0 0 :::1:953 :::* LISTEN 768/named

作用解析

  • 953端口:DNS管理端口(rndc服务)
  • 仅监听本地(127.0.0.1::1
  • 禁止外部访问的安全设计

四、网络状态分析实战技巧

1. 快速定位端口冲突

netstat -tuln | grep :80  # 检查80端口占用

输出示例

tcp6 0 0 :::80 :::* LISTEN 1234/nginx

结论:80端口被Nginx占用

2. 检测异常连接

netstat -antp | grep ESTABLISHED

分析要点

  • 检查非常规端口连接
  • 验证远程IP是否可信
  • 监控高频率连接

3. 服务健康检查

netstat -ltn  # 查看所有监听端口

健康指标

  • 关键服务(SSH/HTTP)应处于LISTEN状态
  • 接收/发送队列不应长期积压
  • 无大量TIME_WAIT连接

五、真实应用场景与案例分析

案例1:网站无法访问故障

现象:用户无法访问公司官网
排查过程

  1. netstat -tuln | grep :80 无输出
  2. 检查Nginx进程:ps aux | grep nginx 进程存在
  3. 发现配置错误:listen 8080; 改为 listen 80;
  4. 重启服务后问题解决

案例2:服务器资源异常占用

现象:CPU持续100%占用
排查过程

  1. netstat -antp 显示大量到45.33.21.133的连接
  2. 检查进程:2519853/java 异常
  3. 发现挖矿病毒:立即隔离服务器
  4. 修复后安装入侵检测系统

案例3:数据库连接失败

现象:应用无法连接MySQL
排查过程

  1. netstat -tuln | grep :3306 无输出
  2. 检查MySQL配置:bind-address=127.0.0.1
  3. 改为 bind-address=0.0.0.0
  4. 重启服务后恢复连接

六、端口安全最佳实践

1. 端口管理原则

- ✅ 最小开放原则:只开放必要端口
- ✅ 默认端口修改:更改SSH/数据库等默认端口
- ✅ 定期端口扫描:使用`nmap localhost`自检
- ❌ 避免使用高危端口:如135-139(Windows共享)

2. 防火墙配置指南

# 仅允许必要端口(示例)
sudo ufw allow 22/tcp  # SSH
sudo ufw allow 80/tcp  # HTTP
sudo ufw allow 443/tcp # HTTPS
sudo ufw enable

3. 服务监听安全

1. **数据库服务**:只监听内网IP(如192.168.1.100)
2. **管理服务**:限制为127.0.0.1(如Redis)
3. **Web服务**:公网只开放80/443
4. **内部服务**:使用VPN或跳板机访问

七、netstat替代方案

1. ss命令(推荐)

ss -tulnp  # 更快速高效

优势

  • 比netstat更快
  • 显示更多TCP状态信息
  • 现代Linux系统默认支持

2. lsof命令

lsof -i :80  # 查看80端口使用情况

特点

  • 显示文件级别的网络连接
  • 查看特定进程打开的所有端口
  • 跨平台支持(Linux/macOS)

八、netstat输出完整解析表

输出字段示例值含义重要性
Prototcp/tcp6协议类型★★★★☆
Recv-Q0接收队列字节数★★★☆☆
Send-Q0发送队列字节数★★★☆☆
Local Address0.0.0.0:22本地监听地址★★★★★
Foreign Address0.0.0.0:*远程连接地址★★★★☆
StateLISTEN连接状态★★★★★
PID/Program804/sshd进程信息★★★★★

九、总结与进阶学习

核心要点总结

  1. 端口是网络服务的访问入口
  2. netstat是网络诊断的利器
  3. 安全端口配置是服务器防护基础
  4. LISTEN状态表示服务正常运行
  5. 定期检查端口防止非法入侵

进阶学习路径

  1. 网络协议:深入理解TCP/UDP协议
  2. 安全工具
    • nmap 端口扫描
    • tcpdump 流量分析
    • Wireshark 抓包工具
  3. 防火墙:iptables/nftables配置
  4. 服务配置:Nginx/Apache端口管理
  5. 云安全:安全组与网络ACL配置

通过掌握协议端口知识和netstat命令,您将能够有效监控网络服务状态,快速定位网络问题,并显著提升服务器安全性。这些技能是每个运维工程师和开发者的必备能力。


「小贴士」:点击头像→【关注】按钮,获取更多软件测试的晋升认知不迷路! 🚀

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pswp.cn/bicheng/84503.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

嵌入式学习笔记 - freeRTOS vTaskPlaceOnEventList()函数解析

vTaskPlaceOnEventList( &( pxQueue->xTasksWaitingToSend ), xTicksToWait ); 函数第一个参数为消息队列等待插入链表, void vTaskPlaceOnEventList( List_t * const pxEventList, const TickType_t xTicksToWait ) { configASSERT( pxEventList ); /…

Ubuntu 配置使用 zsh + 插件配置 + oh-my-zsh 美化过程

Ubuntu 配置使用 zsh 插件配置 oh-my-zsh 美化过程 引言zsh 安装及基础配置oh-my-zsh 安装及美化配置oh-my-zsh 安装主题美化配置主题自定义主题 插件安装及配置官方插件查看及启用插件安装 主题文件备份.zshrcre5et_self.zsh-theme 同步发布在个人笔记Ubuntu 配置使用 zsh …

Xilinx FPGA 重构Multiboot ICAPE2和ICAPE3使用

一、FPGA Multiboot 本文主要介绍基于IPROG命令的FPGA多版本重构,用ICAP原语实现在线多版本切换。需要了解MultiBoot Fallback点击链接。 如下图所示,ICAP原语可实现flash中n1各版本的动态切换,在工作过程中,可以通过IPROG命令切…

springMVC-11 中文乱码处理

前言 本文介绍了springMVC中文乱码的解决方案,同时也贴出了本人遇到过的其他乱码情况,可以根据自身情况选择合适的解决方案。 其他-jdbc、前端、后端、jsp乱码的解决 Tomcat导致的乱码解决 自定义中文乱码过滤器 老方法,通过javaW…

mysql-innoDB存储引擎事务的原理

InnoDB 存储引擎支持 ACID 事务,其事务机制是通过 Redo Log(重做日志)、Undo Log(回滚日志) 和 事务日志系统 来实现的。下面详细解析 InnoDB 事务的工作原理。 1.事务的基本特性(ACID) 特性描…

在GIS 工作流中实现数据处理

通过将 ArcPy 应用于实际的 GIS 工作流,我们可以高效地完成数据处理任务,节省大量时间和精力。接下来,本文将结合具体案例,详细介绍如何运用 ArcPy 实现 GIS 数据处理的全流程。 数据读取与合并 假设我们有多个 shapefile 文件&a…

第十四届蓝桥杯_省赛B组(C).冶炼金属

题目如下: 拿到题我们来看一下,题目的意思,就是求出N个记录中的最大最小值,言外之意就是,如果超过了这个最大值不行,如果小于这个最小值也不行,所以我们得出,这道题是一个二分答案的题目&#x…

​​Android 如何查看CPU架构?2025年主流架构有哪些?​

在开发安卓应用或选购手机时,了解设备的CPU架构至关重要。不同的架构影响性能、兼容性和能效比。那么,​​如何查看安卓设备的CPU架构?2025年主流架构有哪些?不同架构之间有什么区别?​​ 本文将为你详细解答。 ​​1.…

飞算 JavaAI 2.0.0:开启老项目迭代维护新时代

在软件开发领域,老项目的迭代与维护一直是开发团队面临的难题。代码逻辑混乱、技术栈陈旧、开发效率低下等问题,让老项目改造犹如一场 “噩梦”。而飞算 JavaAI 2.0.0 版本的正式上线,通过三大核心能力升级,为老项目开发带来了全新…

Linux初步介绍

Linux是一种开源的类Unix操作系统内核,广泛应用于服务器、桌面、嵌入式设备等各种计算平台。它由Linus Torvalds于1991年首次开发,因其稳定性、安全性和灵活性,被全球开发者和企业广泛采用。 特点: 开放性(开源&#…

OneNet + openssl + MQTT

1.OneNet 使用的教程 1.在网络上搜索onenet,注册并且登录账号。 2.产品服务-----物联网服务平台立即体验 3.在底下找到立即体验进去 4.产品开发------创建产品 5.关键是选择MQTT,其他的内容自己填写 6.这里产品以及开发完成,接下来就是添加设…

行为设计模式之Memento(备忘录)

行为设计模式之Memento(备忘录) 前言: 备忘录设计模式,有点像vmware快照可以回滚,idea的提交记录同样可以混滚,流程引擎中流程可以撤销到或者回滚到某个指定的状态。 1)意图 在不破坏封装性的…

动画直播如何颠覆传统?解析足球篮球赛事的数据可视化革命

在5G和AI技术快速发展的今天,体育赛事直播正在经历一场深刻的变革。传统视频直播虽然能提供真实的比赛画面,但在战术可视化、数据深度和交互体验方面存在明显短板。而基于实时数据驱动的动画直播技术,正通过创新的方式弥补这些不足&#xff0…

二刷苍穹外卖 day01

nginx nginx反向代理 将前端发送的请求由nginx转发到后端服务器 好处: 提速:nginx本身可缓存数据 负载均衡:配置多台服务器,大量请求来临可均衡分配 保证后端安全:不暴露后端服务真实地址 server{listen 80;server_…

5.2 HarmonyOS NEXT应用性能诊断与优化:工具链、启动速度与功耗管理实战

HarmonyOS NEXT应用性能诊断与优化:工具链、启动速度与功耗管理实战 在HarmonyOS NEXT的全场景生态中,应用性能直接影响用户体验。通过专业的性能分析工具链、针对性的启动速度优化,以及精细化的功耗管理,开发者能够构建"秒…

模型训练-关于token【低概率token, 高熵token】

Qwen团队新发现:大模型推理能力的提高仅由少数高熵 Token 贡献 不要让低概率token主导了LLM的强化学习过程 一 低概率词元问题 论文:Do Not Let Low-Probability Tokens Over-Dominate in RL for LLMs 在RL训练过程中,低概率词元&#xff08…

XCTF-web-easyupload

试了试php,php7,pht,phtml等,都没有用 尝试.user.ini 抓包修改将.user.ini修改为jpg图片 在上传一个123.jpg 用蚁剑连接,得到flag

gRPC、WebSocket 与 HTTP 的核心区别对比

gRPC、WebSocket 与 HTTP 的核心区别对比,涵盖通信模式、协议特性及适用场景: 🔄 ‌一、通信模式‌ ‌HTTP‌ ‌单向请求-响应‌:客户端发起请求,服务器返回响应后连接立即关闭13。‌无状态协议‌:每次请求…

Android第十三次面试总结(四大 组件基础)

Activity生命周期和四大启动模式详解 一、Activity 生命周期 Activity 的生命周期由一系列回调方法组成,用于管理其创建、可见性、焦点和销毁过程。以下是核心方法及其调用时机: ​onCreate()​​ ​调用时机​:Activity 首次创建时调用。​…

讲讲JVM的垃圾回收机制

垃圾回收就是对内存堆中已经死亡或者长时间没有使用的对象进行清楚或回收。 JVM 在做 GC 之前,会先搞清楚什么是垃圾,什么不是垃圾,通常会通过可达性分析算法来判断对象是否存活。 在确定了那些垃圾可以被回收后,垃圾回收器&…