GNU/Linux >> Tutoriels Linux >  >> Linux

10 exemples de commandes ncat (nc) utiles pour les systèmes Linux

ncat ou nc est un utilitaire de mise en réseau avec des fonctionnalités similaires à la commande cat mais pour le réseau. Il s'agit d'un outil CLI à usage général pour lire, écrire et rediriger des données sur un réseau. Il est conçu pour être un outil back-end fiable pouvant être utilisé avec des scripts ou d'autres programmes. C'est également un excellent outil pour le débogage du réseau, car il peut créer tout type de connexion dont on peut avoir besoin.

ncat/nc peut être un outil d'analyse de ports ou un outil de sécurité , ou outil de surveillance et est également un simple proxy TCP . Comme il possède de nombreuses fonctionnalités, il est connu comme un couteau suisse de réseau. C'est l'un de ces outils que chaque administrateur système devrait connaître et maîtriser.

Dans la plupart des distributions Debian, "nc" est disponible et son paquet est automatiquement installé lors de l'installation. Mais dans l'installation minimale de CentOS 7 / RHEL 7, vous ne trouverez pas nc comme package par défaut. Vous devez installer en utilisant la commande suivante.

[[email protected] ~]# yum install nmap-ncat -y

Les administrateurs système peuvent l'utiliser pour auditer la sécurité de leur système, ils peuvent l'utiliser pour trouver les ports ouverts et les sécuriser. Les administrateurs peuvent également l'utiliser comme client pour auditer les serveurs Web, les serveurs telnet, les serveurs de messagerie, etc. Avec "nc", nous pouvons contrôler chaque caractère envoyé et pouvons également afficher les réponses aux requêtes envoyées.

Nous pouvons également lui faire capturer les données envoyées par le client pour comprendre ce qu'il fait.

Dans ce tutoriel, nous allons apprendre à utiliser la commande 'nc' avec 10 exemples,

Exemple :1) Écouter les connexions entrantes

Ncat peut fonctionner en mode écoute et nous pouvons écouter les connexions entrantes sur le numéro de port avec l'option 'l'. La commande complète est,

$ ncat -l numéro_port

Par exemple,

$ ncat -l 8080

Le serveur va maintenant commencer à écouter le port 8080 pour les connexions entrantes.

Exemple :2) Se connecter à un système distant

Pour se connecter à un système distant avec nc, nous pouvons utiliser la commande suivante,

$ ncat adresse IP_numéro_port

Prenons un exemple,

$ ncat 192.168.1.100 80

Maintenant, une connexion au serveur avec l'adresse IP 192.168.1.100 sera établie au port 80 et nous pouvons maintenant envoyer des instructions au serveur. Comme nous pouvons obtenir le contenu complet de la page avec

OBTENIR / HTTP/1.1

ou obtenir le nom de la page,

OBTENIR / HTTP/1.1

ou nous pouvons obtenir une bannière pour les empreintes digitales du système d'exploitation avec ce qui suit,

HEAD / HTTP/1.1

Cela indiquera quel logiciel est utilisé pour exécuter le serveur Web.

Exemple :3) Connexion aux ports UDP

Par défaut, l'utilitaire nc établit des connexions uniquement aux ports TCP. Mais nous pouvons également établir des connexions aux ports UDP, pour cela nous pouvons utiliser l'option 'u',

$ ncat -l -u 1234

Maintenant, notre système va commencer à écouter un port udp '1234', nous pouvons le vérifier en utilisant la commande netstat ci-dessous,

$ netstat -tunlp | grep 1234
udp           0          0 0.0.0.0:1234                 0.0.0.0:*               17341/nc
udp6          0          0 :::1234                      :::*                    17341/nc

Supposons que nous voulons envoyer ou tester la connectivité du port UDP à un hôte distant spécifique, puis utilisez la commande suivante,

$ ncat -v -u {host-ip} {udp-port}

exemple :

[[email protected] ~]# ncat -v -u 192.168.105.150 53
Ncat: Version 6.40 ( http://nmap.org/ncat )
Ncat: Connected to 192.168.105.150:53.

Exemple :4) NC comme outil de chat

NC peut également être utilisé comme outil de chat, nous pouvons configurer le serveur pour qu'il écoute un port et qu'il puisse se connecter au serveur à partir d'une machine distante sur le même port et commencer à envoyer un message. Côté serveur, lancez

$ ncat -l 8080

Sur la machine cliente distante, exécutez

$ ncat 192.168.1.100 8080

Ensuite, commencez à envoyer des messages et ils seront affichés sur le terminal du serveur.

Exemple :5) NC en tant que proxy

NC peut également être utilisé comme proxy avec une simple commande. Prenons un exemple,

$ ncat -l 8080 | ncat 192.168.1.200 80

Désormais, toutes les connexions arrivant sur notre serveur sur le port 8080 seront automatiquement redirigées vers le serveur 192.168.1.200 sur le port 80. Mais puisque nous utilisons un canal, les données ne peuvent être transférées et pour pouvoir recevoir les données en retour, nous devons créer un tuyau à deux voies. Utilisez les commandes suivantes pour le faire,

$ mkfifo 2way
$ ncat -l 8080 0<2way | ncat 192.168.1.200 80 1>2way

Vous pourrez désormais envoyer et recevoir des données via nc proxy.

Exemple :6) Copier des fichiers à l'aide de nc/ncat

NC peut également être utilisé pour copier les fichiers d'un système à un autre, bien que ce ne soit pas recommandé et que ssh/scp soit installé par défaut sur tous les systèmes. Mais néanmoins, si vous avez rencontré un système sans ssh/scp, vous pouvez également utiliser nc comme dernier effort.

Commencez par la machine sur laquelle les données doivent être reçues et démarrez nc en mode écoute,

$ ncat -l  8080 > file.txt

Maintenant, sur la machine à partir de laquelle les données doivent être copiées, exécutez la commande suivante,

$ ncat 192.168.1.100 8080 --send-only < data.txt

Ici, data.txt est le fichier qui doit être envoyé. L'option –send-only fermera la connexion une fois le fichier copié. Si vous n'utilisez pas cette option, nous devrons appuyer sur ctrl+c pour fermer la connexion manuellement.

Nous pouvons également copier des partitions de disque entières en utilisant cette méthode, mais cela doit être fait avec prudence.

Exemple :7) Créer une porte dérobée via nc/nact

La commande NC peut également être utilisée pour créer une porte dérobée sur vos systèmes et cette technique est en fait beaucoup utilisée par les pirates. Nous devrions savoir comment cela fonctionne afin de sécuriser notre système. Pour créer une porte dérobée, la commande est,

$ ncat -l 10000 -e /bin/bash

e ‘ attache un bash au port 10000. Désormais, un client peut se connecter au port 10000 sur le serveur et aura un accès complet à notre système via bash,

$ ncat 192.168.1.100 1000

Exemple :8) Redirection de port via nc/ncat

Nous pouvons également utiliser NC pour la redirection de port à l'aide de l'option 'c' , la syntaxe pour accomplir la redirection de port est,

$ ncat -u -l  80 -c  'ncat -u -l 8080'

Désormais, toutes les connexions pour le port 80 seront transférées vers le port 8080.

Exemple :9) Définir les délais de connexion

Le mode d'écoute dans ncat continuera à fonctionner et devra être terminé manuellement. Mais nous pouvons configurer les délais d'attente avec l'option 'w',

$ ncat -w 10 192.168.1.100 8080

Cela entraînera la fin de la connexion dans 10 secondes, mais il ne peut être utilisé que côté client et non côté serveur.

Exemple :10) Forcer le serveur à rester actif en utilisant l'option -k dans ncat

Lorsque le client se déconnecte du serveur, après un certain temps, le serveur cesse également d'écouter. Mais nous pouvons forcer le serveur à rester connecté et à continuer l'écoute du port avec l'option 'k'. Exécutez la commande suivante,

$ ncat -l -k 8080

Désormais, le serveur restera actif, même si une connexion avec le client est interrompue.

Avec cela, nous terminons notre tutoriel, n'hésitez pas à poser toute question concernant cet article en utilisant la zone de commentaire ci-dessous.


Linux
  1. 14 exemples de commandes "ls" utiles sous Linux

  2. 12 exemples de commandes Wget utiles sous Linux

  3. 12 exemples de commandes IP pour les utilisateurs Linux

  4. 16 exemples de commandes 'cp' utiles pour les débutants Linux

  5. Commande ls sous Linux :17 exemples utiles expliqués

Tutoriel de commande Linux OD pour les débutants (6 exemples)

Tutoriel de commande Linux w pour débutants (5 exemples)

Tutoriel de commande Linux ss pour les débutants (8 exemples)

Commande de localisation Linux pour les débutants (8 exemples)

40 exemples utiles de commande Linux PS pour les aspirants administrateurs système

12 exemples de commandes de date Linux utiles