Tutorial VPS Hosting

How to Check if a Port Is Open on a Remote Linux System or Server

Updated 4 min read

A Port is a logical number assigned to a process running on Linux. The port can be defined as an integer number between 0 to 65535. Ports with numbers 0–1023 are called system or well-known ports, while ports with numbers 49152-65535 are called dynamic, private, or ephemeral ports. If you are a Linux system administrator, you should know which ports are open and running on a remote system. There are several ways to find an open port on Linux.

This post will show the most reliable ways to find an open port on a remote Linux system.

Find Open Port Using Netcat Command

Netcat is a Linux command-line utility that reads and writes data across network connections using TCP or UDP protocol. It also allows us to find open ports on a remote Linux system.

By default, the Netcat utility is not included in the Linux system. You will need to install it manually using the package manager.

For Ubuntu and Debian-based operating systems, install the Netcat utility using the following command:

apt-get install netcat -y

For RHEL, CentOS, Fedora, and Rocky Linux operating systems, install the Netcat utility using the following command:

dnf install nc -y

The basic syntax to use the Netcat command is shown below:

nc [-options] [host_name or ip] [port_number]

For example, to check if port 80 is open on the remote host 172.20.10.2, run the following command:

nc -zv 172.20.10.2 80

If port 80 is open on a remote host, you will get the following output:

Connection to 172.20.10.2 80 port [tcp/http] succeeded!

Where:

  • -z : Sets nc to scan for listening daemons.
  • -v : Show output in verbose mode.

You can also specify a range of ports to be scanned:

nc -zv 172.20.10.2 40-80

The above command will scan for all ports between 40 and 80.

Also Read

Netstat Command Line Tips and Tricks

Find Open Port Using Nmap Command

Nmap is a powerful and very popular command-line utility used to perform network-related tasks. By default, the Nmap utility is not included in the Linux system. You will need to install it manually using the package manager.

For Ubuntu and Debian-based operating systems, install the Nmap utility using the following command:

apt-get install namp -y

For RHEL, CentOS, Fedora, and Rocky Linux operating systems, install the Nmap utility using the following command:

dnf install nmap -y

The basic syntax to use the Nmap command is shown below:

nmap [-options] [HostName or IP] [-p] [PortNumber]

For example, to get a list of all open ports on a remote host 172.20.10.2, run the following command:

nmap 172.20.10.2

You should see all open ports in the following output:

Starting Nmap 7.60 ( https://nmap.org ) at 2022-04-05 14:05 IST
Nmap scan report for vyompc (172.20.10.2)
Host is up (0.000078s latency).
Not shown: 996 closed ports
PORT     STATE SERVICE
22/tcp   open  ssh
23/tcp   open  telnet
80/tcp   open  http
7070/tcp open  realserver

Nmap done: 1 IP address (1 host up) scanned in 0.88 seconds

If you want to check if a particular port is open on the remote host, use the -p option:

nmap -Pn -p 80 172.20.10.2

You will get the following output:

Starting Nmap 7.60 ( https://nmap.org ) at 2022-04-05 14:08 IST
Nmap scan report for vyompc (172.20.10.2)
Host is up (0.00011s latency).

PORT   STATE SERVICE
80/tcp open  http

Nmap done: 1 IP address (1 host up) scanned in 0.04 seconds

Find Open Port Using Telnet Command

Telnet is another network protocol used to virtually access a remote computer. It also allows you to find open ports on remote systems. You can install it manually using the package manager.

For Ubuntu and Debian-based operating systems, install the Telnet utility using the following command:

apt-get install telnet -y

For RHEL, CentOS, Fedora, and Rocky Linux operating systems, install the Telnet utility using the following command:

dnf install telnet -y

The basic syntax to use the Telnet command is shown below:

telnet [HostName or IP] [PortNumber]

For example, to check if port 22 is open on a remote host 172.20.10.2, run the following command:

telnet 172.20.10.2 22

If port 22 is open, you will get the following output:

Trying 172.20.10.2...
Connected to 172.20.10.2.
Escape character is '^]'.
SSH-2.0-OpenSSH_7.6p1 Ubuntu-4ubuntu0.6

If port 22 is not open, you will get the following output:

Trying 172.20.10.2...
telnet: Unable to connect to remote host: Connection refused

Conclusion

This guide shows how to find an open port on a remote machine using different commands. You can now choose your preferred tool to scan the remote system and find an open port. Try it on VPS hosting from Atlantic.Net!

Share

Written by

View all articles →

Ready to Deploy?

Launch secure, compliant, enterprise-grade infrastructure with confidence.