- 6 ways to Check a remote port is open in Linux
- Methods to check if a remote port is open in Linux
- Use nc command to check the remote port is open in Linux
- Use nmap to check the remote port is open in Linux
- Use telnet to check the remote port is open in Linux
- Use python telnet to check remote port is open in Linux
- Use python socket to check remote port is open in Linux
- Use curl to check remote port is open in Linux
- How to Check Remote Ports are Reachable Using ‘nc’ Command
- How to Check a Port is Open on a Remote Linux System
- Install Nmap in Linux
- Check for Open Ports in Remote Linux
- Check Particular Port is Open on Remote Linux
- 5 ways to check if a Port is open on a remote Linux PC
- TCP and UDP ports
- Best ways to check if a Port is open on a Linux PC
- 1. netcat command
6 ways to Check a remote port is open in Linux
Checking remote port status is a common task for Linux admin. Now we collect 6 different ways for this task. We don’t need to install any package if we use the following two python commands. We need to install the package if we choose nc, nmap,telnet.
Methods to check if a remote port is open in Linux
The following commands can be used to check if a port is open on the remote server in Linux.
- Use nc command nc -zvw10 192.168.0.1 22
- Use nmap command nmap 192.168.0.1 -p 22
- Use telnet command telnet 192.168.0.1 22
- Use python telnet module
- Use python socket module
- Use curl command
Use nc command to check the remote port is open in Linux
$ nc [-options] [HostName or IP] [PortNumber]
- z: zero-I/O mode which is used for scanning
- v: for verbose output
- w10: timeout wait 10 seconds
The “nc” command stands for “netcat”. The “nc” command is a very versatile command that can be used for a variety of purposes, including network administration and data transmission.
For example, the “nc” command can be used to create a simple TCP connection between two computers. The “nc” command can be used to connect to a remote server on a given port and send/receive data.
For example, if you want to connect to a remote server on port xx, you would use the following command: nc -zv port
In this example, “” is the IP address or hostname of the remote server, and “” is the port that you want to connect to.
I needed to see if the port 22 (SSH) on a remote machine was open, so I opened a terminal and ran the following command:
The -v option enabled verbose output, and the -z option instructed nc to only scan for open ports, without actually establishing a connection.
The output showed me the results of the port scan:
Connection to hostname.com 22 port [tcp/ssh] succeeded!
This told me that the port 22 was open and that I could connect to the remote machine using SSH.
In another scenario, if the port was not open, the output would look something like this:
nc: connect to hostname.com port 22 (tcp) failed: Connection refused
You can also use the “nc” command to open a port in Linux. To do this, you would use the following command: nc -l -p 1234
In this example, “-l” is used to listen for a connection on port 1234
Use nmap to check the remote port is open in Linux
$ nmap [-options] [HostName or IP] [-p] [PortNumber]
The “nmap” command is a command-line tool used for network exploration and security auditing. The “nmap” command can be used to scan for open ports on a remote server, as well as to identify the operating system and services running on that server.
For example, if you want to scan for open ports on a remote server, you would use the following command:
In this example, “” is the IP address or hostname of the remote server, and “” is the port that you want to scan.
Use telnet to check the remote port is open in Linux
$ telnet [HostName or IP] [PortNumber]
The telnet command is a command-line tool used for network communication. The telnet command can be used to connect to a remote server on a given port.
For example, if you want to connect to a remote server on port, you would use the following command: telnet port
In this example, “” is the IP address or hostname of the remote server, and “” is the port that you want to connect to.
Use python telnet to check remote port is open in Linux
python -c «import telnetlib; tel=telnetlib.Telnet(‘192.168.0.1′,’22’,10); print tel; tel.close()»
If you are using Python3, using the following command:
python3 -c «import telnetlib; tel=telnetlib.Telnet(‘10.248.169.140′,’5432’,10); print(tel); tel.close()»
Telnetlib is a module in Python that allows you to communicate with remote servers using the Telnet protocol. The Telnet protocol is a text-based protocol used for communicating with remote servers.
To use the Telnetlib module, you first need to import it into your Python program: import telnetlib
Next, you need to create an instance of the Telnet object: telnet = telnetlib.Telnet()
The Telnet object has a number of methods that allow you to send and receive data. For example, the send() method allows you to send text data to the remote server, and the recv() method allows you to receive text data from the remote server.
Use python socket to check remote port is open in Linux
Python -c «import socket; s = socket.socket(); s.settimeout(10); s.connect((‘192.168.0.1’, 22)); «
The “socket” module is a module in Python that allows you to create and use sockets. A socket is a communication channel that allows two processes to connect and send/receive data.
The “socket” module has a number of functions that allow you to do a variety of things, including creating sockets, binding sockets to addresses, and sending/receiving data.
In order to use the “socket” module, you first need to import it into your Python program. You can do this by using the following command: import socket
Once you have imported the “socket” module, you can then use its functions to create sockets and communicate with other processes.
Use curl to check remote port is open in Linux
We have another solution for this with the curl command. curl -v telnet://192.168.0.1:22
The “curl” command is a tool used for transferring data with URL syntax. The “curl” command can be used to send data to a remote server, or it can be used to download data from a remote server.
If you want to download data from a remote server, you can use the following command: curl port -o filename.txt
In this example, “” is the IP address or hostname of the remote server, and “” is the port that you want to download data from.
The “curl” command can also be used to check whether a port is open or not. To do this, you would use the following command:
In this example, “” is the IP address or hostname of the remote server, and “” is the port that you want to check.
How to Check Remote Ports are Reachable Using ‘nc’ Command
A port is a logical entity which acts as a endpoint of communication associated with an application or process on an Linux operating system. It is useful to know which ports are open and running services on a target machine before using them.
We can easily list open ports in Linux on a local machine using the netstat or several other Linux commands such NMAP.
In this guide, we will show you how to determine if ports on a remote host are reachable/open using simple netcat (in short nc) command.
netcat (or nc in short) is a powerful and easy-to-use utility that can be employed for just about anything in Linux in relation to TCP, UDP, or UNIX-domain sockets.
# yum install nc [On CentOS/RHEL] # dnf install nc [On Fedora 22+] $ sudo apt-get install netcat [On Debian/Ubuntu]
We can use it to: open TCP connections, listen on arbitrary TCP and UDP ports, send UDP packets, do port scanning under both IPv4 and IPv6 and beyond.
Using netcat, you can check if a single or multiple or a range of open ports as follows. The command below will help us see if the port 22 is open on the host 192.168.56.10:
In the command above, the flag:
- -z – sets nc to simply scan for listening daemons, without actually sending any data to them.
- -v – enables verbose mode.
The next command will check if ports 80, 22 and 21 are open on the remote host 192.168.5.10 (we can use the hostname as well):
nc -zv 192.168.56.10 80 22 21
It is also possible to specify a range of ports to be scanned:’
For more examples and usage of netcat command, read through our articles as follows.
That’s all. In this article, we explained how to check if ports on a remote host are reachable/open using simple netcat commands. Make use of the comment section below to write back to us concerning about this tip.
How to Check a Port is Open on a Remote Linux System
A Network Port, simply known as a Port, is a logical number assigned to a process running on any machine. We know that on the Internet (or on any network) a machine is identified by its hostname.
The hostname can be simply the IP address of the machine, or a fully qualified domain name. A port number is assigned to each program running on the host machine; thus the client machine can access the program on the host.
Today, we will learn how to check if a particular port is open on a remote Linux system.
Install Nmap in Linux
The utility ‘Nmap‘ is the most popular and a very robust and handy command-line tool for network-related tasks. You can install it using apt package manager in Ubuntu and other Debian based systems.
In Red Hat-based systems, you can use yum or dnf to install it:
$ sudo yum install nmap Or $ sudo dnf install nmap
Now, run ‘nmap -v‘ to verify if it has been installed.
Check for Open Ports in Remote Linux
Once it is installed, we can execute it to get the open ports in a system. To get a list of all open ports on a remote Linux host, run:
For example, to check the open ports on ubuntumint.com, run:
As you can see, there are only 2 ports that are open: port 80 used by HTTP and port 443 used by HTTPS. This is a proper configuration for any website or web server; to only keep open HTTP and HTTPS and close all other ports and prevent illegal access.
However, this will not scan for all the ports; in fact, it scans the 1000 most commonly used port numbers. To scan all the ports, run it with the ‘-p-‘ argument.
Note that this will take a lot of time to run for obvious reasons.
Check Particular Port is Open on Remote Linux
Now, to check if a particular port is open on the host, run:
$ nmap -Pn -p port_number hostname
For example, to scan for port number 22, which is the port number commonly used for SSH, run:
$ nmap -Pn -p 22 ubuntumint.com
You can see that the state of the port number is shown to be ‘filtered‘. This state means that the particular port number is blocked by either a firewall or a similar blocker, and hence it cannot be determined if the port is open or closed.
If it is determinable by Nmap that the port is closed, the state will appear to be ‘Closed‘. Usually, every website will have a firewall or similar software to prevent port scanning and network discovery; tools usually used by hackers with malicious intent.
Conclusion
We learned about the tool ‘Nmap‘ and how it can be used to check for open ports in a remote Linux host. There are plenty of similar things that can be done with Nmap, and actually, a good website or web host is one that prevents Nmap from scanning it!
If you have any questions or feedback let us know in the comments below!
5 ways to check if a Port is open on a remote Linux PC
T here is an ample number of ways to check for any open ports on a remote Linux PC. Knowing open ports on a Linux machine helps system administrators to connect to the remote PC for troubleshooting system and cloud server issues.
TCP and UDP ports
TCP stands for Transmission Control Protocol. In this method, the computers get connected directly until the data transfer is taking place. Therefore, with this method, the data transfer is guaranteed and is reliable but puts a higher load on the server as it has to monitor the connection and the data transfer too.
UDP stands for User Datagram Protocol. Using this method, the data is sent in the form of little packages into the network with the hope that it reaches the final destination. It means the two computers are not connected directly to each other. This method does not provide any guarantee that the data you send will ever reach its destination. Load on the server is less, and so this method is used commonly by the system administrators first to try something that’s not so important.
Now that you know the types are ports on a Linux system, let’s get started with ways of finding the ones that are open.
Best ways to check if a Port is open on a Linux PC
There are multiple ways you can do it. However, the most reliable way to do this is by using the following commands:
- nc: netcat command
- nmap: network mapper tool
- telnet: telnet command
- echo > /dev/tcp/..
- netstat – tuplen
Let’s go through each method one by one.
1. netcat command
netcat is a simple Unix utility that can be used to write and read data using UDP and TCP protocol across network connections.
The primary reason for its design is to provide a back-end tool that works with the scripts and programs. It is also an exploration and network debugging tool that offers tons of features.
To use it, you need to install it in your distro using the respective installation commands.