Faire des requêtes réseau dans le terminal

Je me suis intéressé récemment à faire des requêtes de al façon la plus basique possible. Loin des librairies qui vous masquent ce qui se passe sous le capot, on va voir les technique dans le shell qui permettent de faire des requêtes réseau, je suis sûr que je n’aurais pas la technique la plus bas niveau mais on va s’en rapprocher.

CURL

Ce programme est mondialement connu, il est présent partout, dans toutes les plateformes. Il est présent dans tous les langages. Par exemple la librairie curl en PHP permet de faire tout type de requête réseau. Voyons comment en shell nous pouvons faire une requête basique

curl https://yvonh.com/ -o yvonh.html
cat yvonh.html  //lire le fichier généré qui est vide

L’argument -o va rediriger l’output dans un fichier texte avec extension HTML.

Dans ce cas précis vous n’allez rien voir, car il y a une redirection vers www.yvonh.com, or par défaut Curl ne suit pas la redirection. Il va retourner un résultat vide. La requête suivante va instruire Curl de suivre les redirections.

curl -L https://yvonh.com -o yvonh.html

On en va pas voir en détail toutes les commandes de Curl, on va voir les autres méthode de requêtage réseau

wget

wget est une commande très souvent utilisée

wget -qO- https://www.example.com

openssl

openssl s_client -connect www.example.com:80

Il y a aussi d’autres commandes mais qui ne sont pas toutes présentes dans Linux

nc, /dec/tcp, telnet, /dev/udp

Retour en haut