Netcat or nc is a networking utility for debugging and investigating the network.
This utility can be used for creating TCP/UDP connections and investigating them.
The biggest use of this utility is in the scripts where we need to deal with TCP/UDP sockets.
How to Install and Use Netcat in Linux
To install the netcat package on your system, use the default package manager for your
Linux distribution.
[On CentOS/RHEL]
$ yum install nc
[On Fedora 22+ and RHEL 8]
$ dnf install nc
[On Debian/Ubuntu]
$ sudo apt-get install Netcat
Port Scanning
Netcat can be used for port scanning: to know which ports are open and running services on
a target machine. It can scan a single or multiple or a range of open ports.
It may be useful to know which ports are open and running services on a target machine.
The -z flag can be used to tell nc to report open ports, rather than initiate a connection.
Usually it's useful to turn on verbose output to stderr by use this option in conjunction with -
v option.
Where
-v Have nc give more verbose output.
-w timeout Connections which cannot be established or are idle timeout after timeout
seconds. The -w flag has no effect on the -l option, i.e. nc will listen forever for a connection, with or without the -w flag. The default is no timeout.
-z Specifies that nc should just scan for listening daemons, without sending any data
to them. It is an error to use this option in con‐junction with the -l option.
-n Do not do any DNS or service lookups on any specified addresses, hostnames or
ports.
#scan a single port
$ nc -v -w 2 z 192.168.56.156 22
Example:
nc -v -w 2 -z 192.168.56.156 22
Connection to 192.168.56.156 22 port [tcp/ssh] succeeded!
#scan multiple ports
$ nc -v -w 2 z 192.168.56.156 22 80
#scan range of ports
$ nc -v -w 2 z 192.168.56.156 20-22
Example:
nc -v -w 2 -z 192.168.56.156 20-22
nc: connect to 192.168.56.156 port 20 (tcp) failed: Connection refused
nc: connect to 192.168.56.156 port 21 (tcp) failed: Connection refused
Connection to 192.168.56.156 22 port [tcp/ssh] succeeded!
Find a Service Running on Port
You can also use Netcat to obtain port banners. In this case, it will tell you what service is
running behind a certain port. For example to know what type of service is running behind
port 22 on a specific server, run the following command
nc -v -n 192.168.56.156 22
Connection to 192.168.56.156 22 port [tcp/*] succeeded!
SSH-2.0-OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.7
No comments:
Post a Comment