accueil > Gestion réseau > nc

nc : Connexion et écoute réseau

nc (netcat) est un utilitaire polyvalent utilisé pour établir des connexions réseau et lire/écrire des données via les protocoles TCP ou UDP. Il est parfois surnommé le "couteau suisse du réseau" car il peut effectuer diverses tâches réseau telles que le scan de ports, le transfert de fichiers et la création de serveurs de chat simples.

Aperçu

nc est un outil puissant utilisé pour envoyer et recevoir des données sur le réseau. Il est utilisé pour établir une communication bidirectionnelle dans un modèle client-serveur, vérifier si un port spécifique est ouvert, et pour divers diagnostics et tests réseau.

Principaux domaines d'application

  • Scan de ports et vérification de leur ouverture
  • Création de serveurs et clients TCP/UDP simples
  • Transfert de fichiers (via le réseau)
  • Débogage et test de services réseau
  • Connexions de chat ou de shell simples

Options principales

La commande nc offre diverses options pour effectuer des opérations réseau flexibles.

Connexion et écoute

Contrôle du comportement

Commande générée :

Essayez de combiner les commandes.

Description:

`nc` Exécute la commande.

Essayez d'exécuter virtuellement les commandes avec l'IA en combinant les options ci-dessus.

Exemples d'utilisation

Divers exemples d'utilisation de la commande nc.

Vérifier si un port spécifique est ouvert (TCP)

nc -zv google.com 80

Vérifie si le port 80 de google.com est ouvert. -z tente la connexion sans transfert de données, et -v fournit une sortie détaillée.

Serveur TCP simple (écoute)

nc -lvp 1234

Attend les connexions entrantes sur le port local 1234. Une fois connecté, le client peut envoyer et recevoir du texte.

Client TCP simple (connexion au serveur)

nc localhost 1234

Se connecte au serveur en cours d'exécution (localhost:1234). Après la connexion, vous pouvez entrer du texte pour communiquer avec le serveur.

Transfert de fichier (côté serveur)

nc -lvp 1234 < file_to_send.txt

Le serveur écoute sur le port 1234 pour transférer le fichier 'file_to_send.txt' vers le client.

Transfert de fichier (côté client)

nc localhost 1234 > received_file.txt

Le client se connecte au serveur (localhost:1234) et enregistre le fichier transféré sous le nom 'received_file.txt'.

Envoyer une requête HTTP GET

printf "GET / HTTP/1.0\r\n\r\n" | nc example.com 80

Utilise nc pour envoyer directement une requête HTTP GET à un serveur web et vérifier la réponse.

Installation

nc (netcat) est généralement préinstallé sur la plupart des distributions Linux, ou peut être facilement installé via le gestionnaire de paquets de la distribution. Selon la distribution, il peut être fourni sous le nom 'netcat-traditional' ou 'ncat' (une version améliorée du projet Nmap).

Debian/Ubuntu

sudo apt update
sudo apt install netcat-traditional

Installation à l'aide du gestionnaire de paquets apt.

CentOS/RHEL/Fedora

sudo yum install nc
# Ou
sudo dnf install nmap-ncat

Installation à l'aide des gestionnaires de paquets yum ou dnf.

Conseils et précautions

nc est un outil très puissant, mais son utilisation abusive peut entraîner des problèmes de sécurité, il faut donc l'utiliser avec prudence.

Considérations de sécurité

nc peut être utilisé à des fins malveillantes telles que des portes dérobées ou des connexions shell. Il est donc conseillé de ne pas l'utiliser sans une compréhension de la sécurité du système. Soyez particulièrement prudent lorsque vous contournez les règles du pare-feu ou transférez des données sensibles.

  • Ne pas ouvrir de ports inutiles
  • Éviter les connexions avec des sources non fiables
  • Vérifier et configurer les règles du pare-feu

Différence entre nc et ncat

Sur certains systèmes, 'nc' fait référence à 'netcat-traditional', tandis que sur d'autres, il peut faire référence à 'ncat' (qui fait partie du projet Nmap). ncat offre plus de fonctionnalités telles que la prise en charge d'IPv6, SSL et proxy. Par conséquent, si vous avez besoin de fonctionnalités spécifiques, vous pouvez envisager d'installer et d'utiliser explicitement 'ncat'.

Utilisation dans les scripts

nc est très utile pour automatiser des tâches réseau complexes en le combinant avec d'autres commandes via des scripts shell et des pipes (|). Par exemple, vous pouvez surveiller la réponse d'un service spécifique ou créer des prototypes de services réseau simples.


Commandes de la même catégorie