NC
Installé avec le paquet netcat-traditional
Voir aussi : pv
Afficher la version de la commande nc
nc -h
ou
apt-cache policy netcat-traditional
Ouvrir un port temporairement en écoute
-
-l : listen mode
-v : verbose
-p : port
nc -lv -p port
ex :
# nc -lv -p 80
listening on [any] 80 ...
Vérifier la connexion à un port
-
-z : zero-I/O mode
-w1 : définit un timeout de 1 seconde
nc -z -w1 host|ip port
ex :
# nc -z -w1 192.168.10.3 3306
Connection to 192.168.10.3 3306 port [tcp/mysql] succeeded!
Scanner les ports en écoute
-
-z : zero-I/O mode
-v : verbose
nc -zv host {port|port-range}
ex :
# nc -zv 127.0.0.1 80 localhost.localdomain [127.0.0.1] 80 (http) open # nc -zv 127.0.0.1 53 localhost.localdomain [127.0.0.1] 53 (domain) : Connection refused
# nc -z 127.0.0.1 80 # echo $? 0 # nc -z 127.0.0.1 53 # echo $? 1
# nc -zv 127.0.0.1 1-100
localhost.localdomain [127.0.0.1] 80 (http) open
localhost.localdomain [127.0.0.1] 25 (smtp) open
localhost.localdomain [127.0.0.1] 22 (ssh) open
Copier un fichier vers un hôte distant avec progression
Sur l’hôte distant: ouvrir un port temporairement
nc -l -v -w time -p port > filename
Options -l pour le mode écoute (listen), -v pour le mode verbeux et -w pour définir un temps d’écoute avant timeout.
Sur l’hôte local : copier le fichier
pv filename | nc -w time IP port
L’hôte distant possède l’adresse IP 192.168.1.13 qui sera utilisée depuis l’hôte local.
ex :
Hôte distant
# nc -l -v -w 20 -p 2000 > /home/adminsys/depot/debian860.iso
Hôte local
# pv debian-8.6.0-i386-netinst.iso | nc -w 20 192.168.1.13 2000

Envoyer un message sur le terminal d’un hôte distant
Sur l’hôte distant: ouvrir un port temporairement
nc -l -v -w time -p port > /dev/stdout
Sur l’hôte local : envoyer le message
echo "message" | nc -w time IP port