HandyTools Hub

Common Port Reference

Search 70+ common TCP/UDP ports with descriptions.

Your data never leaves your browser

Port Protocol Service Description
80 TCP HTTP Standard unencrypted web traffic. Usually redirects to HTTPS (443) on modern sites.
443 TCP HTTPS HTTP over TLS/SSL. The default for secure websites and APIs.
591 TCP FileMaker HTTP FileMaker Pro web publishing over HTTP (alternate for port 80).
8000 TCP HTTP Alt / Django Common alternative HTTP port; default for Django and many Python dev servers.
8008 TCP HTTP Alt Official IANA alternative for HTTP; used by some appliances and admin panels.
8080 TCP HTTP Alt / Proxy The most common HTTP alternative — Tomcat, proxies, caching services, and dev servers.
8443 TCP HTTPS Alt Alternative HTTPS port, typical for Tomcat SSL and admin consoles.
20 TCP FTP (Data) FTP data transfer channel in active mode.
21 TCP FTP (Control) FTP command/control channel. Plain-text credentials — prefer SFTP or FTPS.
22 TCP SSH / SFTP Secure Shell for encrypted logins, tunneling, and SFTP file transfer.
69 UDP TFTP Trivial File Transfer Protocol. Lightweight, no auth — used for PXE boot and device firmware.
115 TCP SFTP (legacy) Simple File Transfer Protocol, an early predecessor — not the SSH-based SFTP.
873 TCP rsync rsync daemon protocol for fast incremental file synchronization.
989 TCP FTPS (Data) FTP data channel over TLS/SSL.
990 TCP FTPS (Control) FTP control channel over TLS/SSL (implicit FTPS).
2049 TCP/UDP NFS Network File System for sharing directories between Unix/Linux systems.
25 TCP SMTP Server-to-server email relay. Often blocked for outbound use by ISPs and cloud hosts.
110 TCP POP3 Post Office Protocol v3 — downloads mail to one device, usually deleting it from the server.
143 TCP IMAP Internet Message Access Protocol — mail stays on the server and syncs across devices.
465 TCP SMTPS SMTP over implicit TLS. Deprecated once, now re-standardized for message submission.
587 TCP SMTP (Submission) Message submission with STARTTLS. The recommended port for sending mail from clients.
993 TCP IMAPS IMAP over TLS/SSL. The standard for secure mailbox access.
995 TCP POP3S POP3 over TLS/SSL for encrypted mail retrieval.
53 TCP/UDP DNS Domain Name System. UDP for queries, TCP for zone transfers and large responses.
67 UDP DHCP (Server) DHCP server side — hands out IP addresses and network configuration to clients.
68 UDP DHCP (Client) DHCP client side — receives address leases and renewals from the server.
88 TCP/UDP Kerberos Kerberos authentication, central to Active Directory domains.
123 UDP NTP Network Time Protocol for clock synchronization across systems.
137 TCP/UDP NetBIOS-NS NetBIOS name service on legacy Windows networks.
138 UDP NetBIOS-DGM NetBIOS datagram service on legacy Windows networks.
139 TCP NetBIOS-SSN NetBIOS session service; older SMB file sharing transport.
161 UDP SNMP Simple Network Management Protocol for monitoring routers, switches, and servers.
162 UDP SNMP Trap Receives asynchronous SNMP trap alerts from managed devices.
179 TCP BGP Border Gateway Protocol — the routing protocol of the internet backbone.
389 TCP/UDP LDAP Lightweight Directory Access Protocol for directory services like Active Directory.
445 TCP SMB Server Message Block — Windows file and printer sharing (SMB direct over TCP).
514 UDP Syslog Syslog for forwarding log messages to a central collector.
515 TCP LPD Line Printer Daemon protocol for network printing.
631 TCP/UDP IPP / CUPS Internet Printing Protocol, used by CUPS on Linux and macOS.
636 TCP LDAPS LDAP over TLS/SSL for encrypted directory access.
1194 TCP/UDP OpenVPN Default port for OpenVPN tunnels (usually UDP).
1723 TCP PPTP Point-to-Point Tunneling Protocol VPN. Legacy and considered insecure.
5060 TCP/UDP SIP Session Initiation Protocol for VoIP call setup.
5061 TCP SIP over TLS Encrypted SIP signaling.
23 TCP Telnet Unencrypted remote terminal. Obsolete and insecure — use SSH instead.
3389 TCP/UDP RDP Remote Desktop Protocol for Windows remote administration.
5900 TCP VNC Virtual Network Computing for graphical remote desktop access.
1433 TCP Microsoft SQL Server Default MSSQL database engine port.
1434 UDP MSSQL Browser SQL Server Browser service for resolving named instances.
1521 TCP Oracle DB Oracle Database listener default port.
3306 TCP MySQL / MariaDB Default port for MySQL and MariaDB servers.
5432 TCP PostgreSQL Default PostgreSQL server port.
5984 TCP CouchDB Apache CouchDB HTTP API.
6379 TCP Redis Redis in-memory data store. Never expose to the public internet without auth.
9042 TCP Cassandra (CQL) Apache Cassandra native CQL transport.
9200 TCP Elasticsearch Elasticsearch REST/HTTP API.
9300 TCP Elasticsearch (Transport) Elasticsearch inter-node cluster communication.
11211 TCP/UDP Memcached Memcached distributed memory caching system.
27017 TCP MongoDB Default MongoDB server port.
27018 TCP MongoDB (Shard) MongoDB shard server default port.
1883 TCP MQTT MQTT lightweight publish/subscribe messaging, common in IoT.
4222 TCP NATS NATS messaging system client connections.
5672 TCP AMQP (RabbitMQ) Advanced Message Queuing Protocol — default RabbitMQ port.
8883 TCP MQTT over TLS Secure MQTT over TLS/SSL.
9092 TCP Kafka Apache Kafka broker default port.
15672 TCP RabbitMQ Management RabbitMQ web management console and HTTP API.
61613 TCP STOMP (ActiveMQ) STOMP text-based messaging protocol on ActiveMQ.
2181 TCP Zookeeper Apache Zookeeper coordination service client port.
2375 TCP Docker (unencrypted) Docker REST API without TLS. Extremely dangerous if exposed publicly.
2376 TCP Docker (TLS) Docker REST API over TLS — the secure way to expose the Docker daemon.
3000 TCP Dev Server Default for many dev servers: React (create-react-app), Rails, Grafana, Express demos.
5000 TCP Dev Server Default for Flask and many Python/Node dev servers (also Docker Registry, UPnP on some systems).
5601 TCP Kibana Kibana web UI for visualizing Elasticsearch data.
6443 TCP Kubernetes API Kubernetes API server default port.
8081 TCP HTTP Alt Common secondary admin/proxy port; React Native Metro runs on 8081 by default.
8500 TCP Consul HashiCorp Consul HTTP API and web UI.
9000 TCP PHP-FPM / SonarQube Used by PHP-FPM, SonarQube, Portainer, and many admin panels.
10250 TCP Kubelet API Kubernetes kubelet HTTPS API on each node.
1080 TCP SOCKS Proxy SOCKS proxy protocol, widely used for tunneling traffic.
3128 TCP Squid Proxy Squid caching web proxy default port.

Port Reference is a searchable, category-filtered directory of the TCP and UDP ports you actually run into — web and mail standards, databases, message queues, dev servers, and infrastructure services. Instead of hunting through forum threads to remember whether Elasticsearch is 9200 or 9300, look it up in seconds. It is built for developers writing firewall rules, DevOps engineers reading connection logs, and anyone auditing what is listening on a machine.

Searching and Filtering

The tool offers two ways to narrow roughly eighty entries. The search box takes a port number (443), a service name (redis), or a word from the description (proxy). Numeric queries use exact matching first; if nothing matches exactly, they fall back to a prefix match so 80 surfaces 8000, 8008, 8080, and 8443 alongside port 80 itself. Text queries are case-insensitive and search both the service name and the description.

Below the search box, category chips restrict the table to one family at a time: web, file transfer, email, network, remote access, databases, messaging, and dev tools. Each row shows the port number, its protocol, the service, and a one-line description, with a copy button for the number. Everything is a static local dataset, so results appear instantly with no network calls.

The Three Port Ranges

Port numbers run from 0 to 65535 and are split into three IANA ranges. Ports 0–1023 are the well-known ports assigned to core protocols — 22 SSH, 25 SMTP, 53 DNS, 80 HTTP, 443 HTTPS. Ports 1024–49151 are the registered ports where applications live, such as MySQL on 3306, PostgreSQL on 5432, Redis on 6379, and MongoDB on 27017. Ports 49152–65535 are dynamic or ephemeral ports the operating system hands out temporarily to the client side of each outbound connection.

The range does not by itself tell you whether a service is safe. A database on a registered port can be just as exposed as one on a well-known port if it is bound to a public interface without authentication.

Worked Lookups

You searchWhat comes backWhy it matters
443HTTPS, TCPThe destination port for almost all secure web and API traffic
22SSH / SFTP, TCPEncrypted remote login and file transfer share this port
5432PostgreSQL, TCPThe default in connection strings and Docker Compose files
9200Elasticsearch REST, TCPFrequently left open on cloud hosts; should be firewalled
5000Dev server, TCPFlask and many Node dev servers; also Docker Registry and UPnP on some systems
netstat-style LISTEN auditDatabase and dev categoriesReveals services you did not intend to expose

Two entries sit close enough to trip people up: Elasticsearch’s REST API is 9200 while its internal cluster transport is 9300, and MongoDB’s server is 27017 while shard servers default to 27018.

Development tools collide constantly on the same low thousands. React’s create-react-app and Express demos default to 3000, Flask and many Python servers to 5000, Django to 8000, and Tomcat to 8080, while React Native’s Metro bundler uses 8081. When two projects claim one port, the second fails with EADDRINUSE — the fix is to override the framework’s PORT setting rather than disabling the service. Searching the dev category is a quick way to identify which tool owns a port you found in lsof -i output.

Ports You Should Never Expose

Some defaults are dangerous the moment they face the internet. Redis (6379), MongoDB (27017), Elasticsearch (9200), and Memcached (11211) commonly ship without authentication and have been behind many large data breaches. Docker’s unencrypted API on 2375 is worse — it grants effectively root control over the host. Telnet (23) sends credentials in cleartext, and legacy PPTP (1723) uses broken encryption.

The safe pattern is to bind these services to 127.0.0.1, place them on a private subnet, or require a VPN or SSH tunnel, and firewall everything else. A port reference tells you which number a service uses; it does not make that service safe to publish.

TCP vs UDP and Dual-Protocol Services

Each entry states its protocol. DNS (53), LDAP (389), NFS (2049), SIP (5060), SMB-related NetBIOS services, and NTP (123) all appear with their actual transport, and several are dual-protocol. UDP suits small, retry-tolerant request-response traffic, while TCP carries anything that needs ordered, reliable delivery. SNMP is split across 161 for polling and 162 for traps, both UDP. When a firewall rule is not working, a protocol mismatch — allowing TCP when the service speaks UDP — is one of the first things to check.

Common Mistakes

  • Opening a port by description instead of number. Cloud security groups take numbers, so convert the service name first.
  • Assuming an ephemeral client port is a listening service. High source ports are the client’s side of a connection.
  • Leaving a database port open “temporarily” for debugging. Automated scanners find it within minutes.
  • Confusing 587 and 25. 587 is submission from clients; 25 is relay between servers and is often blocked.
  • Forgetting that Docker publishes ports on 0.0.0.0 by default. A -p 3306:3306 mapping can expose MySQL beyond localhost unless you bind to 127.0.0.1.

Frequently Asked Questions

Why do some services use both TCP and UDP on the same port number?

The port number and the transport protocol are separate namespaces, so port 53 can carry DNS over UDP for quick queries and DNS over TCP for zone transfers and large responses. Port 389 (LDAP) and 2049 (NFS) behave the same way. When opening a firewall, check whether the service needs one protocol or both.

Why does searching for 80 also show ports 8000, 8080, and 8443?

The search first tries an exact port match. If no entry has that exact number, it falls back to a prefix match, so 80 returns every port whose number starts with 80. Type the full number to get a single result, or use a keyword like http to see related services.

Which port should I open for a web app behind a reverse proxy?

Expose only 443 to the internet and keep the upstream app on an internal port such as 3000 or 8080. The proxy terminates TLS on 443 and forwards plain HTTP internally. Opening the app port directly bypasses the proxy's TLS, rate limiting, and access rules.

Why is port 25 often blocked by ISPs and cloud providers?

Port 25 is for server-to-server relay, and it is heavily abused by spam. Most consumer ISPs and many cloud hosts block outbound 25 to stop compromised machines from sending spam directly. Use 587 with STARTTLS for authenticated message submission from an application instead.

What is an ephemeral port, and why does my server log high client port numbers?

When a client opens a connection, the operating system assigns a temporary source port from the dynamic range, typically 49152 to 65535. Those high numbers in logs are the client's side of the connection, not a service the client is listening on. The destination port is the one that identifies the service.

How do I tell whether a listed port is TCP or UDP?

The Protocol column shows TCP, UDP, or TCP/UDP for each entry. As a rule, request-response services tend to use UDP and connection-oriented or reliable ones use TCP, but the table is authoritative. On the command line, ss -tlnp lists TCP listeners and ss -ulnp lists UDP listeners.

Reviewed by the HandyTools Hub team · Last updated