Cette commande prend 2 arguments :
Exemple d'utilisation (pour se connecter à un serveur web local) :
telnet 127.0.0.1 80
Le rôle de cette commande est :
C'est une touche définie par défaut à « ^] » qui permet de passer temporairement dans le mode de commande.
Remarque : comme l'indique la commande « man telnet », il est possible de redéfinir le caractère escape par celui que l'on souhaite en ajoutant à la commande le commutateur « -e » suivi du caractère souhaité devant les arguments habituels. Exemple pour définir le A comme caractère escape :
telnet -eA 127.0.0.1 80
Le caractère choisi ne peut plus être envoyé directement dans le canal de communication ; il faut alors passer en mode commande en tapant le caractère choisi puis saisir la commande « send escape ».
Pour clore la connexion côté client, il suffit de passer en mode commande en tapant le caractère escape puis saisir la commande « close ».
Outre l'utilisation standard d'origine, comme client du serveur (telnetd) qui permet de déporter (sans chiffrement et donc sans la sécurité actuellement requise) l'accès à une interface de ligne de commande via le réseau, cette application va permettre de "connecter" un humain à une application serveur pour un protocole utilisant un dialogue textuel. Nous pouvons ainsi par exemple citer les protocoles SMTP, FTP, POP3, IDENT, HTTP, IMAP4, ... qui sont accessibles à la manipulation humaine via l'application telnet.
Ce programme va nous permettre de nous connecter à un canal de communication TCP du côté serveur comme on le fait déjà côté client grâce à l'outil telnet.
L'outil ayant plusieurs fonctionnalités, on va utiliser le commutateur « -l » afin de préciser qu'il doit travailler comme un serveur TCP. On ajoute ensuite le commutateur « -p » suivi du numéro de port sur lequel on souhaite recevoir une demande de connexion de la part d'un client TCP.
Exemple pour se faire passer pour un serveur http standard (port 80) écoutant sur toutes les adresses IP de la machine :
nc -l -p 80
Il est également possible de se restreindre à une seule des adresses IP de la machine en précisant celle sur laquelle netcat doit écouter. On ajoute alors dans la commande le commutateur « -s » suivi de l'adresse.
Exemple pour se faire passer pour un serveur http standard (port 80) écoutant uniquement sur l'adresse 127.0.0.1 :
nc -l -p 80 -s 127.0.0.1
Ce programme permet de connaître à distance les ports TCP qui sont ouverts sur une machine. Pour cela, on utilise le commutateur « -p » suivi du numéro de port que l'on veut scanner. On précise ensuite l'adresse IP ou le nom DNS de la cible.
Par exemple, pour scanner le port 80 d'un machine d'adresse IP 192.168.1.100, on utilisera la commande suivante :
nmap -p 80 192.168.1.100
Si on souhaite un scan de tous les ports, on peut utiliser la commande suivante :
nmap -p- 192.168.1.100