运维工程师在日常工作中需要熟悉并掌握各种服务的默认端口号,这些端口号是网络通信中不可或缺的一部分,它们标识了不同的服务和应用程序。以下是一些常见服务的默认端口号大全,供运维工程师参考:
1. Web服务
- • HTTP:80/tcp。用于超文本传输协议,是互联网上应用最为广泛的一种网络协议。
- • HTTPS:443/tcp、443/udp。HTTPS是HTTP的安全版本,通过SSL/TLS加密技术保护数据的安全传输。
2. 远程登录与连接服务
- • SSH(安全外壳协议):22/tcp。用于加密的远程登录和文件传输,是运维工程师进行远程管理的常用协议。
- • Telnet(远程登录协议):23/tcp。尽管安全性较低,但在某些特定场景下仍有使用。
- • RDP(远程桌面协议):3389。Windows系统的远程桌面连接默认端口,允许用户远程访问和控制计算机。
3. 文件传输服务
- • FTP(文件传输协议):
- • 数据端口:20/tcp(用于数据传输)
- • 控制端口:21/tcp(用于控制命令)
- • TFTP(简单文件传输协议):69/udp。用于小型文件的传输。
4. 邮件服务
- • SMTP(简单邮件传输协议):25/tcp。用于发送电子邮件。
- • POP3(邮局协议第3版):110/tcp。用于从邮件服务器下载电子邮件。
- • IMAP(互联网邮件访问协议):143/tcp。提供比POP3更丰富的邮件管理功能。
5. 域名解析服务
- • DNS(域名系统):53/tcp、53/udp。用于将域名解析为IP地址。
6. 数据库服务
- • MySQL:3306/tcp。MySQL数据库的默认端口。
- • Oracle:1521/tcp。Oracle数据库的默认端口。
- • SQL Server:1433/tcp、1434/tcp。SQL Server数据库的默认端口和监控端口。
- • MongoDB:27017/tcp。MongoDB数据库的默认端口。
- • Redis:6379/tcp。Redis数据库的默认端口。
7. 其他常见服务
- • SNMP(简单网络管理协议):161/udp(代理接收)、162/udp(陷阱发送)。用于网络设备的管理和监控。
- • LDAP(轻量目录访问协议):389/tcp。用于访问和管理分布式目录信息服务。
- • Nginx:80/tcp、8080/tcp、443/tcp等。Nginx服务器可根据配置使用多个端口。
- • Tomcat:8080/tcp。Tomcat服务器的默认端口,常用于部署Java Web应用。
- • WebLogic:7001/tcp。Oracle WebLogic应用服务器的默认端口。
- • WebSphere:9080/tcp(应用程序)、9090/tcp(管理工具)。IBM WebSphere应用服务器的端口。
8. 网络安全与防火墙
- • IPsec:没有固定的端口号,因为它是基于IP层的加密协议,通常与防火墙和VPN技术结合使用。
- • OpenVPN:通常使用TCP 1194/tcp或UDP 1194/udp端口,但可自定义。
9. 远程协作与会议
- • VNC Server:通常使用5900+端口(如5901, 5902等),具体取决于会话数量。
- • WebEx、Zoom、Teams等现代会议软件:这些服务通常通过HTTPS(443/tcp)端口进行通信,但也可能使用其他端口进行媒体传输或特定的控制信号。
10. 实时消息与聊天服务
- • XMPP(Extensible Messaging and Presence Protocol):通常使用5222/tcp进行客户端到服务器的通信,5269/tcp用于客户端到客户端的通信(通过服务器中转)。
11. 备份与恢复
- • rsync:通常使用SSH的22/tcp端口进行加密传输,但也可以配置为使用其他端口。
- • BackupPC:默认配置下不使用特定端口,但可能通过Web界面(如Apache的80/tcp或Nginx的443/tcp)进行管理。
12. 开发与版本控制
- • Git:通常通过SSH(22/tcp)或HTTP(80/tcp, 443/tcp)进行访问,具体取决于仓库的配置。
- • SVN(Subversion):默认使用3690/tcp端口进行访问,但也可以配置为使用HTTPS(443/tcp)。
13. 容器与编排
- • Docker:Docker守护进程默认监听2375/tcp(无TLS)或2376/tcp(TLS)。Docker Registry默认使用5000/tcp端口,但通常与HTTPS结合使用(443/tcp)。
- • Kubernetes:Kubernetes API服务器默认使用6443/tcp端口,但集群内部通信通常通过更复杂的网络配置和端口映射进行。
14. 云服务与API
- • AWS EC2 Metadata Service:用于EC2实例的元数据访问,默认使用169.254.169.254上的HTTP(80/tcp)。
- • Azure Blob Storage:使用HTTPS(443/tcp)进行通信,但具体端口号取决于Azure的配置。
- • Google Cloud Storage:同样使用HTTPS(443/tcp)进行通信。
15. 缓存与CDN服务
- • Varnish Cache:默认监听6081/tcp和6082/tcp端口,但可以根据需要配置为其他端口。
- • Cloudflare CDN:虽然Cloudflare主要使用HTTP和HTTPS(80/tcp, 443/tcp)进行内容分发,但其API和某些管理功能可能使用其他端口。
16. 远程管理与监控
- • Nagios:Nagios本身不监听任何端口,但Nagios XI(Nagios的一个商业版本)可能使用HTTPS(443/tcp)提供Web界面。
- • Zabbix:Zabbix服务器默认使用10051/tcp端口,Web前端则通常通过Apache或Nginx的HTTP/HTTPS端口(80/tcp, 443/tcp)提供服务。
17. 网络发现与扫描
- • Nmap:Nmap是一个网络扫描工具,它本身不监听任何端口,但用于扫描目标网络上的开放端口。
18. 虚拟化与云管理平台
- • VMware vSphere:vCenter Server默认使用443/tcp端口(HTTPS)进行通信,但也可能使用其他端口,如902/tcp(vSphere Client旧版本)。
- • OpenStack:OpenStack组件使用多个端口,但Keystone(身份认证服务)通常使用5000/tcp端口(HTTP)或35357/tcp端口(HTTPS)。
19. 实时流媒体与广播
- • RTMP(Real Time Messaging Protocol):通常用于视频直播,默认端口并不固定,但常见配置包括1935/tcp。
- • HLS(HTTP Live Streaming):HLS基于HTTP协议,因此使用80/tcp或443/tcp端口。
20. 网络文件系统
- • NFSv4:除了标准的2049/tcp端口外,NFSv4还可能使用20048/tcp和更高端口进行动态端口分配。
- • SMB/CIFS(Server Message Block/Common Internet File System):通常使用445/tcp端口,但也可能使用139/tcp端口(NetBIOS over TCP/IP)。
21. 物联网(IoT)
- • 物联网设备的端口号高度依赖于具体的设备和应用场景,但常见的端口包括MQTT(1883/tcp, 8883/tcp SSL)、CoAP(5683/udp)等。
22. 远程过程调用(RPC)
- • Sun RPC(也称为ONC RPC):通常使用111/tcp和111/udp端口进行端口映射和RPC服务发现。
23. 实时通讯与即时消息
- • XMPP(Extensible Messaging and Presence Protocol)的BOSH(Bidirectional-streams Over Synchronous HTTP):虽然XMPP本身不直接使用HTTP端口,但BOSH允许通过HTTP进行长轮询或HTTP流,通常使用80/tcp或443/tcp端口。
24. 网络时间协议(NTP)
- • NTP:尽管前面已经提到,但重申一下,NTP服务器默认使用123/udp端口进行时间同步。
25. 分布式存储与大数据
- • Hadoop HDFS(Hadoop Distributed File System):Hadoop的NameNode默认使用8020/tcp端口,DataNode则使用50010/tcp(数据块传输)和50075/tcp(Web界面)。
- • Apache Cassandra:Cassandra集群节点间通信默认使用7000/tcp(内部通信)、7001/tcp(SSL内部通信)、9042/tcp(CQL原生传输)和9160/tcp(Thrift RPC,已弃用)。
26. 容器化技术
- • Docker Swarm:Docker Swarm的管理节点(Manager)默认使用2377/tcp(集群管理通信)和7946/tcp、7946/udp(节点间通信)。
27. 消息队列与中间件
- • RabbitMQ:RabbitMQ的AMQP协议默认使用5672/tcp端口,而管理插件则通常通过15672/tcp端口提供Web界面。
- • ActiveMQ:ActiveMQ的OpenWire协议默认使用61616/tcp端口,而管理控制台则通过8161/tcp端口提供Web界面。
28. 开发与构建工具
- • Jenkins:Jenkins的Web界面默认使用8080/tcp端口,但可以根据需要进行更改。
29. 网络安全与防火墙
- • IPsec VPN:虽然IPsec本身不直接关联到特定端口,但IKE(Internet Key Exchange)协议用于协商VPN连接的密钥和参数,IKEv1通常使用500/udp端口,而IKEv2则可能使用4500/udp端口。
30. 云服务与API
- • AWS S3(Simple Storage Service):AWS S3通过HTTPS(443/tcp)进行通信,但AWS CLI和其他工具可能使用特定的API端口进行内部通信(这些通常对最终用户不可见)。
31. 负载均衡器与反向代理
- • HAProxy:HAProxy作为负载均衡器和反向代理,不直接监听特定的服务端口,而是根据配置将客户端请求转发到后端服务器的相应端口。然而,HAProxy的管理界面(如果启用)通常使用1936/tcp端口(统计信息)和/或8404/tcp端口(Web界面,如果配置)。
- • Nginx:作为反向代理和负载均衡器,Nginx本身监听的端口取决于配置,但常见的配置包括80/tcp(HTTP)、443/tcp(HTTPS)以及用于其他服务的自定义端口。
32. 网络安全与入侵检测
- • Snort:Snort是一个开源的入侵检测系统(IDS),它监听网络流量以检测潜在的恶意活动。虽然Snort本身不占用特定的服务端口,但它会监听配置中指定的网络接口上的所有或选定端口。
- • Suricata:Suricata是另一个开源的IDS/IPS(入侵检测/防护系统),与Snort类似,它也不占用特定的服务端口,而是监听网络流量。
33. 远程桌面与虚拟桌面
- • VDI(虚拟桌面基础设施):VDI解决方案(如VMware Horizon、Citrix XenDesktop等)通常使用RDP(远程桌面协议,端口3389)或特定于供应商的协议进行远程桌面连接。但是,这些解决方案还可能通过HTTPS(443/tcp)提供Web界面或管理控制台。
34. 远程访问与VPN服务
- • OpenSSH:虽然SSH通常使用22/tcp端口,但OpenSSH也支持通过端口转发功能将其他服务的流量通过SSH隧道进行加密传输。
- • OpenVPN:作为开源的VPN协议实现,OpenVPN可以配置为使用TCP或UDP协议,并可以在任何未被防火墙或网络策略阻止的端口上运行。常见的端口包括1194/tcp、1194/udp、443/tcp(以绕过某些网络限制)。
35. 开发与测试工具
- • Selenium:Selenium是一个用于Web应用程序测试的工具,它本身不占用特定的服务端口,但与之配合使用的WebDriver(如ChromeDriver、GeckoDriver等)可能会根据浏览器和配置的不同监听不同的端口。
36. 容器编排与管理
- • Kubernetes Dashboard:Kubernetes Dashboard是一个基于Web的Kubernetes用户界面,它默认通过HTTPS(通常与Kubernetes API服务器共享端口,如6443/tcp,但也可能通过Ingress配置为不同的端口)提供服务。
37. 数据库备份与恢复
- • Oracle RMAN(Recovery Manager):RMAN是Oracle数据库的备份和恢复工具,它本身不直接占用服务端口,而是与Oracle数据库实例(默认端口1521/tcp)通信来执行备份和恢复操作。但是,如果RMAN通过网络备份到远程位置(如使用FTP、SFTP等),则会使用那些服务的端口(如FTP的20/tcp和21/tcp,SFTP的22/tcp)。
38. 网络安全审计与日志管理
- • Syslog-ng 和 rsyslog:这两个是常用的开源日志收集工具,它们通常监听514/udp端口接收来自其他系统的日志消息。但是,它们也可以配置为监听TCP端口(例如514/tcp)或通过其他机制(如文件、管道等)接收日志。
39. 容器镜像仓库
- • Docker Registry:Docker Registry用于存储和分发Docker镜像。默认情况下,Docker Registry监听5000/tcp端口(非HTTPS),但通常建议通过HTTPS(443/tcp)提供服务以增强安全性。
- • Harbor:Harbor是一个开源的企业级Docker Registry服务器,它提供了更丰富的功能和更强的安全性。Harbor默认使用HTTPS(443/tcp)提供服务,并可能使用其他端口(如80/tcp用于HTTP重定向)。
40. 消息队列与流处理
- • Apache Kafka:Kafka是一个分布式流处理平台,它使用9092/tcp端口作为主要的客户端通信端口。Kafka还使用其他端口(如2181/tcp用于ZooKeeper客户端连接)进行内部通信和管理。
41. 物联网(IoT)协议
- • MQTT:MQTT是一个轻量级的消息传输协议,广泛用于物联网设备之间的通信。MQTT代理(Broker)通常监听1883/tcp端口(非加密),而MQTT over TLS(安全MQTT)则使用8883/tcp端口。
42. 远程控制与协作
- • TeamViewer:TeamViewer是一个流行的远程控制软件,它使用多个端口进行通信,但主要的连接端口通常是非标准的,以避免与常见服务冲突。用户可以在TeamViewer的客户端或服务器设置中查看和配置这些端口。
43. 云服务与API网关
- • AWS API Gateway:AWS API Gateway允许开发者创建、发布、维护、监控和保护RESTful、HTTP和WebSocket API。API Gateway本身不占用特定的服务端口,而是作为AWS服务的一部分,通过AWS的网络基础设施进行通信。但是,当API Gateway与后端服务(如Lambda函数、EC2实例等)集成时,会根据后端服务的配置使用相应的端口。
44. 实时数据分析与监控
- • Prometheus:Prometheus是一个开源系统监控和警报工具套件,它本身并不直接提供HTTP服务,而是作为时间序列数据库和监控解决方案的后端。然而,当Prometheus暴露其指标时,它通常使用9090/tcp端口。
45. 服务网格
- • Istio:Istio是一个开源的服务网格,它提供了对微服务的流量管理、安全、监控和策略执行。Istio的sidecar代理(如Envoy)可能会监听多个端口,但通常不直接暴露给外部用户。然而,Istio的控制平面组件(如Pilot、Mixer等)会监听特定的端口进行内部通信。对于外部访问(如通过Ingress Gateway),则可能通过标准的HTTP/HTTPS端口(80/tcp, 443/tcp)提供服务。
46. 网络文件系统扩展
- • NFSv4.1:NFSv4.1是NFS协议的一个版本,它引入了会话持久性和状态保持等功能。NFSv4.1的默认端口与NFSv4相同,即2049/tcp,但它还可能使用其他动态分配的端口进行数据传输。
47. 分布式协调服务
- • Zookeeper:Zookeeper是一个为分布式应用提供一致性服务的软件,它用于维护配置信息、命名、提供分布式同步和提供组服务等。Zookeeper服务器默认监听2181/tcp端口进行客户端连接。
48. 实时通信协议
- • WebRTC:WebRTC(Web Real-Time Communication)是一种支持网页浏览器进行实时语音对话或视频聊天的技术。WebRTC不依赖于特定的端口,而是利用现有的浏览器技术(如JavaScript和HTML5)在浏览器之间直接建立连接。然而,如果WebRTC通信需要通过服务器进行信令交换(如使用WebSocket或HTTP),则可能会使用80/tcp或443/tcp端口。
49. 容器镜像扫描与安全
- • Clair:Clair是一个开源的容器镜像静态分析工具,用于发现容器镜像中的安全漏洞。Clair本身不直接提供HTTP服务,但通常作为容器平台(如Harbor)的一部分运行,并通过该平台提供的端口进行访问。如果Clair独立运行并提供API接口,则可能会使用自定义端口,但常见的HTTP端口(如8080/tcp)也是可能的。
50. 边缘计算与物联网网关
- • EdgeX Foundry:EdgeX Foundry是一个开源的物联网边缘计算框架,它提供了一套构建模块和微服务,用于快速启用物联网解决方案。EdgeX Foundry的组件可能会监听多个端口进行内部和外部通信,但具体的端口号取决于部署配置和所使用的服务。