你需要了解的25个网络端口,以备技术面试之用

如果你正在为网络、Linux系统管理、DevOps或网络安全面试做准备,那么理解网络端口是必不可少的。端口号几乎在每一个技术面试中都会出现,因为它们对于网络通信至关重要。然而,许多候选人却忽视了这一基本领域。

本文涵盖了您应该铭记的前25个端口,包括每个端口的功能、背后的协议以及它的重要性。无论您是初学者还是只是需要复习,这本指南都旨在简单、实用,便于面试准备。

网络端口是什么?

在我们进入列表之前,让我们快速了解一下口口到底是什么。

在网络世界中,端口并不是一个物理实体 — 它是一个虚拟通道,允许计算机之间的通信。可以将其想象为酒店的房间号码。你的IP地址是酒店地址,端口则告诉计算机你要访问哪个服务(房间)。

每个端口被分配一个介于065535之间的数字:

  • 0-1023: 知名端口(由系统级服务使用)。
  • 1024-49151:注册端口(由软件和应用程序使用)。
  • 49152-65535:动态/私人端口(临时连接)。

面试官为什么会问有关端口的问题?

因为它测试了你对以下内容的理解:

  • 哪些服务运行在什么端口上
  • TCP和UDP之间的区别
  • 如何排除连接问题
  • 开放端口的安全隐患

你会经常听到类似的问题:

  • SSH使用哪个端口?
  • 如何在Linux中检查开放端口?
  • 你能解释一下80和443端口之间的区别吗?

你必须知道的25个端口(带描述)

让我们来看看您在面试中和使用真实系统时最常见的端口。

端口 协议 服务名称 目的
20 TCP FTP(数据) 以主动模式传输文件数据
21 TCP FTP(控制) FTP传输的命令/控制
22 TCP SSH 安全远程登录/文件传输
23 TCP Telnet 远程登录(不安全,遗留)
25 TCP SMTP 发送电子邮件
53 TCP/UDP 域名系统 将域名解析为IP地址
67 用户数据报协议 DHCP 服务器 分配IP地址
68 用户数据报协议 DHCP客户端 接收DHCP配置
80 TCP HTTP 标准(不安全)网络流量
110 TCP POP3 旧的电子邮件检索协议
123 用户数据报协议 网络时间协议 同步系统时间
135 TCP RPC Windows 服务通信
137 用户数据报协议 NetBIOS 名称服务 Windows 名称查找
138 用户数据报协议 NetBIOS 数据报服务 Windows浏览
139 TCP NetBIOS会话服务 在旧版Windows中共享文件/打印机
143 TCP IMAP 电子邮件检索(现代)
161 用户数据报协议 简单网络管理协议 监控路由器、交换机等。
389 TCP/UDP LDAP 集中式认证(如 Active Directory)
443 TCP HTTPS 安全的网络流量
445 TCP 通过 TCP 的 SMB 现代Windows文件共享
465 TCP SMTPS 安全SMTP(遗留)
514 用户数据报协议 系统日志 集中日志记录
993 TCP IMAPS 安全IMAP
995 TCP POP3S 安全的 POP3
3306 TCP MYSQL 流行的数据库服务
5432 TCP PostgreSQL 开源SQL数据库
5900 TCP VNC 远程桌面访问(图形用户界面)
6379 TCP Redis 内存键值存储
8080 TCP HTTP备选 应用服务器,代理
8443 TCP HTTPS替代 安全访问自定义网络应用程序

快速提示:只需记住这四个端口:20/21用于FTP22用于SSH80用于HTTP,以及443用于HTTPS – 这些是最重要的端口。

端口分类,以简化生活

与其随意记忆所有端口,不如将它们分组:

类别 端口 服务名称
远程访问 22 SSH(安全外壳协议)
23 Telnet
5900 VNC(虚拟网络计算)
电子邮件服务 25 SMTP(简单邮件传输协议)
110 POP3(邮局协议)
143 IMAP(互联网邮件访问协议)
465, 993, 995 SMTPS,IMAPS,POP3S(安全版本)
网络服务 80 HTTP(超文本传输协议)
443 HTTPS(超文本传输安全协议)
8080, 8443 备用 HTTP/HTTPS(用于网络应用或代理)
文件共享与传输 20/21 FTP(文件传输协议)
139/445 服务器消息块 (SMB)
3306/5432 MySQL/ PostgreSQL(数据库)
姓名和地址服务 53 域名系统 (DNS)
67/68 DHCP(动态主机配置协议)
123 网络时间协议 (NTP)
137–139 NetBIOS(网络基本输入/输出系统)
监控和日志记录 514 系统日志 (Syslog)
161 简单网络管理协议 (SNMP)

如何检查Linux系统上的开放端口

让我们更仔细地看看如何使用 ssnetstatnmap 等命令在 Linux 系统上检查开放端口。

1. 使用 ss(现代且快速)

ss命令(全称为socket statistics)是较旧的netstat命令的现代替代品。它旨在更快速、更高效地列出开放端口和网络连接。

sudo ss -tulpn

命令的解释:

  • -t: 显示 TCP 套接字。
  • -u: 显示UDP套接字。
  • -l: 仅显示监听套接字(开放且等待传入连接的端口)。
  • -p: 显示拥有该套接字的进程(即,哪个应用程序正在使用该端口)。
  • -n: 以数字形式显示端口号(避免将其解析为服务名称)。

2. 使用 netstat(较旧但仍常用)

netstat 是一个遗留命令,在 ss 流行之前被广泛使用。它仍然存在于大多数 Linux 发行版中,并且在 ss 可能不可用的情况下,或者当您使用旧系统时,仍然很有用。

sudo netstat -tulpn

命令的解释:

  • -t: 显示 TCP 套接字。
  • -u: 显示 UDP 套接字。
  • -l: 仅显示监听端口(不显示已建立的连接)。
  • -p: 显示使用该套接字的进程 ID (PID) 和程序名称。
  • -n: 输出数字地址和端口(而不是将它们解析为服务名称,例如“http”)。

3. 使用nmap进行扫描

nmap(网络映射器)是一种强大的工具,主要用于网络探索和安全审计。它可以用来扫描你自己的系统或任何远程系统,以查找开放端口。

ssnetstat 不同,nmap 通常用于更详细的网络扫描,并且可以提供有关外部系统的信息。

nmap -sT localhost

命令的解释:

  • -sT: 它尝试与每个端口建立完整连接,并检查哪些端口响应。
  • localhost: 指的是您想要扫描的本地计算机。您可以用任何IP地址替换localhost以扫描远程系统。

你需要了解的25个网络端口,以备技术面试之用_第1张图片

安全提示:为什么了解端口有助于保持安全

攻击者通常使用端口扫描技术来识别开放的端口并找到可能存在漏洞的服务。了解您的系统上暴露了哪些端口对于维护安全至关重要。

以下是一些与常见开放端口相关的风险示例:

  • 端口 23(Telnet): 如果此端口开放,您的系统可能会面临攻击风险,因为 Telnet 以明文形式传输数据,包括密码。
  • 445端口(SMB):该端口常常成为勒索软件和其他恶意软件的攻击目标,保持该端口开放可能会使攻击者访问您网络上的敏感文件和资源。

作为一名Linux或DevOps工程师,保护您的系统是您的责任。以下是减轻风险的关键策略:

  • 关闭未使用的端口: 仅保留必要的端口。如果某项服务未被使用,关闭该端口是更安全的选择。
  • 使用防火墙: 配置防火墙,例如 ufw(简单防火墙)或 firewalld,以限制可以访问的端口,确保只有授权流量可以到达您的系统。
  • 使用加密保护暴露的服务:对于需要访问的服务,例如SSHHTTPS,始终强制使用加密,以保护在传输过程中数据免受潜在窃听的影响。

要阻止23端口(Telnet)上的流量,请使用ufw

sudo ufw deny 23

要在端口 23(Telnet)上拒绝流量,请使用 firewalld

sudo firewall-cmd --zone=public --add-port=23/tcp --permanent --remove-port=23/tcp

通过了解端口并正确地保护它们,您可以最小化系统的攻击面,同时提高其安全性和性能。

最终想法

理解端口号不仅仅是记住它们,更重要的是了解服务在Linux和网络中的通信方式。一旦你掌握了基础知识,你将更擅长故障排除、保护系统和通过技术面试。

运维干货分享

  • 系统规划与管理师备考经验分享

  • 软考高级系统架构设计师备考学习资料

  • 软考中级数据库系统工程师学习资料

  • 软考高级网络规划设计师备考学习资料

  • Kubernetes CKA认证学习资料分享

  • AI大模型学习资料合集

  • 免费文档翻译工具(支持word、pdf、ppt、excel)

  • PuTTY中文版安装包

  • MobaXterm中文版安装包

  • pinginfoview网络诊断工具中文版

  • Xshell、Xsftp、Xmanager中文版安装包

  • 办公室摸鱼神器,伪装电脑系统更新中

  • Typora简单易用的Markdown编辑器

  • Window进程监控工具,能自动重启进程和卡死检测

  • 毕业设计高质量毕业答辩 PPT 模板分享

  • IT行业工程师面试简历模板分享

你可能感兴趣的:(linux,面试,网络,面试,linux服务网络端口)