In computing, and more so, TCP/IP and UDP networks, a port is a logical address that is usually assigned to a specific service or running application on a computer. It is a connection endpoint that channels traffic to a specific service on the operating system. Ports are software-based and are usually associated with the IP address of the host.
The key role of a port is to ensure data transfer between a computer and an application. Specific services run on specific ports by default, for example, web traffic listens on port 80 (443 for encrypted traffic), DNS on port 53, and SSH on port 22. Ports are usually associated with the IP addresses of the host systems running the applications.
[ You might also like: 22 Linux Networking Commands for Sysadmin ]
Port numbers range from 0-65535 and are divided into three network ranges as shown:
- Ports that range from 1 to 1023 are known as system ports or well-known ports. These are ports that are reserved for running privileged services on a system.
- Ports numbers in the range of 1024 to 49151 are referred to as registered ports and are mostly used by vendors for their applications. They are available for registration at IANA which is an authority that oversees global IP address allocation.
- Ports numbers between 49151 and 65535 are referred to as dynamic ports. They cannot be registered with IANA and are mostly used for customized services.
In this guide, we will focus on the well-known ports and what services they are mostly associated with.
Commonly Use Network TCP Ports
Here is a summary documenting some of the commonly-used ports in a TCP/IP network.
Port | Description |
---|---|
20 | FTP ( File Transfer Protocol ) port for data transfer between client and server. |
21 | FTP ( File Transfer Protocol ) port for establishing a connection between two hosts. It’s referred to as the command or control port. |
22 | SSH (Secure Shell) port. This is a secure remote login service where data is encrypted. |
23 | Telnet. This is a remote login service that is unencrypted. Data is sent in plain text and is hence considered insecure. It was deprecated in favor of SSH. |
25 | SMTP (Simple Mail Transfer Protocol). A protocol used by mail servers to send and receive mail. |
53 | DNS (Domain Name Service) Responsible for resolving a domain name to machine-readable IP addresses. |
67 (UDP) | Used by the DHCP server (Dynamic Host Configuration Protocol). |
68 (UDP) | Used by a DHCP client. |
80 | HTTP (Hyper Text Transfer Protocol) is used for unsecured web traffic. |
443 | HTTPS (Hyper Text Transfer Protocol Secure) is used for encrypted web traffic. |
110 | POP3 (Post Office Protocol). Protocol for unencrypted access to a mail server. |
995 | POP3S (Post Office Protocol Secure). Provides encryption for POP3 protocol. |
123 (UDP) | NTP (Network Time Protocol). |
137 | NetBIOS protocol used for File and Print Sharing. |
143 | IMAP (Internet Messaging Application Protocol) Manages electronic mail messages on the mail server. Does not provide encryption. |
161/162 | SNMP protocol is used for sending commands and messages. |
993 | IMAPS (Internet Messaging Application Protocol Secure) Secure protocol for IMAP and provides SSL/TLS encryption. |
445 | SMB (Server Message Block) Port. Used for file sharing. |
465 | SMTPS (Simple Mail Transfer Protocol Secure). Provides encryption for the SMTP Protocol. |
631 | Internet Printing Protocol. |
The table above has highlighted some of the most commonly used network port numbers in Linux. Did we miss something? Let us know in the comment section.