2 minutes
Port accessible sur une machine distante et quels ports utilisés ?
Ports accessibles ?
Via Telnet
Sur les anciens systèmes telnet est installé. Il suffit de faire:
telnet hostname port
Alternatives à telnet
Sur les machines plus récentes, telnet n’est plus installé pour une question de sécurité. Il est alors possible d’utiliser d’autres outils.
NC
nc -zv hostname port
nc -zv 127.0.0.1 22 80 8080 # multiple ports
nc -zv 127.0.0.1 20-30 # range of ports
Note: pour tester une port sur le protocole UDP, utiliser
nc -u
bash
cat < /dev/tcp/hostname/port
-bash: connect: Connection refused # closed
curl
curl http://hostname:port
curl: (7) couldn't connect to host #closed
curl: (7) Failed connect to hostname:port; Connection refused #closed
ou
curl: (56) Failure when receiving data from the peer #opened
Nmap
# Usage:
# nmap [scan type(s)] [Options] {target(s)}
sudo nmap -Pn -A 192.168.99.100
# Useful scan types:
# -Pn: skip ping probes
# -sS: SYN scan
# -A: Aggressive <=> OS fingerprinting, service versions, traceroutes, runs script scans
# -p <port>: pour scanner un port particulier
Quel port est utilisé par un service ?
Exemple avec le service ntp:
netstat -tulpn | grep ntpd
On voit que le service ntp utilise le port 123:
udp 0 0 192.168.87.144:123 0.0.0.0:* 1885/ntpd
udp 0 0 127.0.0.1:123 0.0.0.0:* 1885/ntpd
udp 0 0 0.0.0.0:123 0.0.0.0:* 1885/ntpd
udp 0 0 fe80::20c:29ff:fe62:f03:123 :::* 1885/ntpd
udp 0 0 ::1:123 :::* 1885/ntpd
udp 0 0 :::123 :::* 1885/ntpd