Find which Ports are listening on Linux using netstat
netstat
prints network connections, routing tables, interface statistics, masquerade connections, and multicast memberships.
Using the parameter -l
(or --listening
) it will show only listening sockets/ports (which are omitted by default.).
--numeric-ports
shows numerical port numbers but does not affect the resolution of host or user names (e.g. instead of showing the name ssh, it will show the value 22).
We used netstat
using the following syntax to check which sockets/ports are open on the current machine:
netstat --listening --numeric-ports;
The results appeared as follows:
[george@bytefreaks ~]$ netstat --listening --numeric-ports Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp 0 0 localhost:25 0.0.0.0:* LISTEN tcp6 0 0 [::]:44300 [::]:* LISTEN tcp6 0 0 [::]:8080 [::]:* LISTEN tcp6 0 0 [::]:22 [::]:* LISTEN tcp6 0 0 localhost:25 [::]:* LISTEN udp 0 0 0.0.0.0:39925 0.0.0.0:* udp 0 0 0.0.0.0:24186 0.0.0.0:* udp 0 0 0.0.0.0:68 0.0.0.0:* udp 0 0 localhost:323 0.0.0.0:* udp 0 0 0.0.0.0:5353 0.0.0.0:* udp6 0 0 localhost:323 [::]:* udp6 0 0 [::]:33848 [::]:* udp6 0 0 [::]:61453 [::]:* raw6 0 0 [::]:58 [::]:* 7 Active UNIX domain sockets (only servers) Proto RefCnt Flags Type State I-Node Path unix 2 [ ACC ] STREAM LISTENING 22489 public/showq unix 2 [ ACC ] STREAM LISTENING 22445 public/pickup unix 2 [ ACC ] STREAM LISTENING 22449 public/cleanup unix 2 [ ACC ] STREAM LISTENING 22477 private/proxymap unix 2 [ ACC ] STREAM LISTENING 22480 private/proxywrite unix 2 [ ACC ] STREAM LISTENING 15452 /run/systemd/private unix 2 [ ACC ] STREAM LISTENING 22483 private/smtp unix 2 [ ACC ] STREAM LISTENING 22486 private/relay unix 2 [ ACC ] STREAM LISTENING 22492 private/error unix 2 [ ACC ] STREAM LISTENING 22495 private/retry unix 2 [ ACC ] STREAM LISTENING 22498 private/discard unix 2 [ ACC ] STREAM LISTENING 22501 private/local unix 2 [ ACC ] STREAM LISTENING 22504 private/virtual unix 2 [ ACC ] STREAM LISTENING 22507 private/lmtp unix 2 [ ACC ] STREAM LISTENING 22510 private/anvil unix 2 [ ACC ] STREAM LISTENING 22513 private/scache unix 2 [ ACC ] STREAM LISTENING 14445 /var/run/NetworkManager/private-dhcp unix 2 [ ACC ] SEQPACKET LISTENING 15476 /run/udev/control unix 2 [ ACC ] STREAM LISTENING 1404 /run/systemd/journal/stdout unix 2 [ ACC ] STREAM LISTENING 22452 public/qmgr unix 2 [ ACC ] STREAM LISTENING 15498 /run/lvm/lvmpolld.socket unix 2 [ ACC ] STREAM LISTENING 22474 public/flush unix 2 [ ACC ] STREAM LISTENING 22471 private/verify unix 2 [ ACC ] STREAM LISTENING 16034 /var/run/dbus/system_bus_socket unix 2 [ ACC ] STREAM LISTENING 16037 /var/run/avahi-daemon/socket unix 2 [ ACC ] STREAM LISTENING 15537 /run/lvm/lvmetad.socket unix 2 [ ACC ] STREAM LISTENING 22456 private/tlsmgr unix 2 [ ACC ] STREAM LISTENING 22459 private/rewrite unix 2 [ ACC ] STREAM LISTENING 22462 private/bounce unix 2 [ ACC ] STREAM LISTENING 22465 private/defer unix 2 [ ACC ] STREAM LISTENING 22468 private/trace
Check a specific port if it is open from a remote machine
In case you want to check a specific port if it is open from a remote machine, you can use nmap
.
Using nmap
to scan specific ports allows you to check if a remote machine appears to have open ports available to you.
nmap
is a network exploration tool and security / port scanner.
The following example checks ports 80
and 8080
on 192.168.1.199
if they are open.
[george@bytefreaks ~]$ nmap -vv -p 80,8080 192.168.1.199 Starting Nmap 6.40 ( http://nmap.org ) at 2017-02-22 14:10 EET Initiating Ping Scan at 14:10 Scanning 192.168.1.199 [2 ports] Completed Ping Scan at 14:10, 0.00s elapsed (1 total hosts) Initiating Parallel DNS resolution of 1 host. at 14:10 Completed Parallel DNS resolution of 1 host. at 14:10, 0.00s elapsed Initiating Connect Scan at 14:10 Scanning 192.168.1.199 [2 ports] Discovered open port 8080/tcp on 192.168.1.199 Completed Connect Scan at 14:10, 0.00s elapsed (2 total ports) Nmap scan report for 192.168.1.199 Host is up (0.000060s latency). Scanned at 2017-02-22 14:10:29 EET for 0s PORT STATE SERVICE 80/tcp closed http 8080/tcp open http-proxy Read data files from: /usr/bin/../share/nmap Nmap done: 1 IP address (1 host up) scanned in 0.03 seconds
The -vv
parameter for nmap
increases the verbosity of the results.
The -p
parameter defines the ports to be checked.