Comment configurer et configurer des fichiers TCP/IP sous Linux (paramètres TCP/IP pour Linux)

Même les non-geeks ont probablement entendu parler de " TCP/IP " mais est-ce que tout le monde sait ce que c'est ou comment le configurer sur un serveur Linux en (Linux)utilisant la ligne de commande(using the command line) ?

Cela aide à définir la terminologie de base en premier. À tout le moins, cela vous permet de développer un cadre sur lequel construire votre compréhension. TCP/IP ne fait pas exception. 

Cette section sur la terminologie n'est pas une liste exhaustive. Cela vous donnera une base sur laquelle commencer votre voyage pour comprendre le réseau et comment configurer les fichiers TCP/IPLinux

The *Nix World

Vous êtes-vous déjà demandé ce que signifie *nix ? Qu'en est-il de la relation entre Unix et Linux(Unix and Linux are related) (sans parler de toutes les différentes versions de chacun) ?

*nix est une méthode pour référencer Linux et/ou Unix (ou n'importe quelle distribution) en utilisant un joker (l'astérisque) pour le faire. 

* Nix a été développé à la fin des années 1960. AT& T Bell Labs a(T Bell Labs) développé Unix à peu près au même moment. A travers diverses itérations et développements, Linux est également né.

Le résultat de ces innovations parallèles est qu'une fois que vous avez appris à effectuer des installations sur un serveur via la ligne de commande, vous avez acquis une compétence qui est probablement compatible avec de nombreuses autres tâches sur une variété de serveurs  Unix ou Linux .

Pages de manuel – Des informations à portée de main(Man Pages – Information at Your Fingertips)

Tout comme Google , Linux possède son propre ensemble d'outils de recherche et de recherche qui permettent aux utilisateurs de trouver les ressources dont ils ont besoin. Ces ressources sont connues sous le nom de « pages de manuel ». Lorsque vous êtes connecté à un serveur Linux (ou à un système d'exploitation basé sur (Linux)Linux ), vous pouvez ouvrir l'application de ligne de commande et saisir ce que vous souhaitez rechercher, comme saisir un terme de recherche dans un fichier de documentation interactif.

Si vous choisissez un sujet que vous souhaitez rechercher, comme un utilitaire Linux , un outil, un (Linux)démon, un script(daemon, script) , vous pouvez le rechercher en tapant "man", puis le mot. Vous apprendrez comment procéder plus loin dans cet article.

Les pages de manuel sont faciles à utiliser. Commencez simplement(Just) à taper quelques mots et le système d'exploitation Linux(Linux OS) commencera à vous renvoyer les informations. S'il n'y a pas de page de manuel pour un sujet particulier , Linux vous le dira.

Pour la plupart, les pages de manuel sont raisonnablement précises pour la version du logiciel sur laquelle elles apparaissent. Par exemple, si vous êtes connecté à un serveur Linux vieux de 10 ans, la page de manuel affiche des informations relatives à cette version (et à son âge).

Les pages de manuel sont faciles à utiliser et précises, mais il y a quelques mises en garde. Illustrons ces mises en garde via des images. 

Dans l'image ci-dessous, la page de manuel d' ARP indique qu'ARP(ARP) est obsolète (sous la section "notes") et qu'il faut plutôt rechercher ip neigh . Il semblerait, par cette notation, que l'on veuille taper « man ip neigh » pour accéder aux informations sur l'outil/protocole de remplacement. 

Cependant, taper « man ip neigh » ne recherche pas la page de manuel pour « ip neigh ». Au lieu de cela, il recherchera deux pages de manuel… une pour "ip" et l'autre pour "neigh". 

S'il est vrai que vous obtiendrez une page de manuel si vous tapez "man ip neigh", à moins que vous ne fassiez très attention, vous risquez de manquer que ce n'est pas vraiment ce que vous cherchiez. 

Vous pouvez ajouter un tiret (même si ce n'est pas ce qui s'affiche dans la page de manuel lorsque vous faites référence à l'outil de remplacement)... Donc, si vous ajoutez un tiret et tapez "man ip-neigh" cela fonctionne aussi bien mais ce n'est pas correct Soit.

Vous pouvez essayer de taper « man ip-neighbor(man ip-neighbour) » (notez l'orthographe britannique). Lorsque vous tapez cette phrase particulière, vous verrez la page de manuel appropriée pour remplacer la page de manuel ARP (ou remplacer le protocole ARP ). L'essentiel est le suivant : si vous ne trouvez pas ce dont vous avez besoin, essayez d'utiliser différentes combinaisons jusqu'à ce que vous obteniez la page de manuel souhaitée.

Par exemple, essayez de consulter la page de manuel de l'outil nslookup. Pour ce faire, tapez "man nslookup". Lorsque vous faites cela, vous verrez une page de manuel qui ressemble à l'image/capture d'écran ci-dessous. Vous apprendrez tout ce que vous voudriez savoir sur l'outil nslookup.

Une fois que la page de manuel apparaît sur votre écran, vous pouvez faire défiler, lire, appliquer, tester et même fermer la page de manuel (en tapant la lettre "q" et en laissant la page de manuel se fermer automatiquement).

Si vous demandez une page de manuel qui n'existe pas, Linux vous indiquera qu'il n'y a pas d'entrée pour cette page de manuel et vous demandera d'en essayer une autre.

IPv4 et IPv6(IPv4 and IPv6)

IPv4 et IPv6 sont techniquement (IPv6)les(IPv4) mêmes, mais ils ne nous semblent pas identiques. Ils permettent d'identifier des machines ou des périphériques sur un réseau local ( LAN ). Ils sont privés dans la mesure où ils identifient les périphériques du LAN .

IPv4 utilise des nombres séparés par des points/points. La plupart d'entre nous connaissent le type d'adresses IP que nous voyons pour les ordinateurs connectés à nos réseaux privés utilisant le format IPv4 .

Les ordinateurs d'un réseau ont également une adresse IPv6 , mais elle semble différente. IPv6 est composé de caractères alphanumériques séparés par des deux-points ( : ). 

Quelles sont donc les différences entre IPv4 et IPv6 ? Pensez(Think) -y comme un nom de réseau. L'un est comme le prénom et l'autre est le nom de famille. Les deux noms pointent vers la même personne (ou dans ce cas, un ordinateur). Tout comme nous avons généralement un prénom différent de notre nom de famille, le "nom" IPv4(IPv4 “) sera différent du "nom" IPv6(IPv6 “) même s'ils pointent tous les deux vers la même machine.

Carla Schroeder a écrit un article facile à lire et utile sur IPv4 et IPv6(useful article about IPv4 and IPv6) .

Accès root sur un serveur Linux (et su et sudo)(Root Access on a Linux Server (and su and sudo))

Pour la plupart des tâches à accomplir, un accès root (alias administrateur ou superutilisateur) est requis. En effet, bon nombre de ces utilitaires et applications sont suffisamment sensibles pour être restreints pour des raisons de sécurité. 

Une solution alternative à la connexion en tant que root ou au déclenchement de l'accès superutilisateur (su) consiste à faire précéder une commande par "sudo" indiquant à la machine Linux que cette commande particulière doit être exécutée en tant que superutilisateur/root, mais que les commandes suivantes ne le font pas (à moins que également précédé de la directive "sudo"). 

Dans les cas où "sudo" est utilisé et ajouté à la commande, Linux demandera le mot de passe su afin d'authentifier l'identité et les autorisations du superutilisateur.

Protocoles réseau(Networking Protocols)

il existe de nombreux protocoles différents à prendre en compte lorsque l'on parle de Linux . Les deux protocoles principaux de cet article sont TCP et IP.

Protocole de contrôle de transmission (TCP)(Transmission Control Protocol (TCP))

Transmission Control Protocol , plus souvent appelé TCP , est un protocole utilisé pour la transmission de paquets, comme son nom l'indique.

Voir ci-dessous pour une explication de divers outils, y compris l' outil Linux appelé Traffic Control (tc). 

TCP indique au système d'exploitation Linux comment les paquets doivent se déplacer d'un endroit à un autre. Il contrôle également le trafic réseau et dirige la transmission de paquets d'informations (comme des dossiers de données(data) se déplaçant d'un endroit à un autre). 

C'est pourquoi le protocole s'appelle  Transmission Control Protocol (TCP). 

Protocole Internet (IP)(Internet Protocol (IP))

Le protocole Internet(Internet Protocol) est communément désigné par son acronyme, IP.

Dans le cas de l' IP , vous disposez d'une zone plus large ( Internet ) pour transmettre des paquets. C'est comme avoir une super autoroute plus large, plus longue et plus fréquentée… appelée Internet. Alors que TCP contrôle le mouvement des paquets sur un réseau, IP contrôle le mouvement des paquets sur Internet.

Protocole ICMP(ICMP Protocol)

ICMP signifie Internet Control Messaging Protocol . Bien qu'il s'agisse d'un protocole disponible dans la plupart des distributions Linux , il peut ne pas être disponible sur toutes les distributions Linux . Cela a été démontré par l'absence d'une page de manuel(Centos) dans une installation Centos(Man) actuelle .

À première vue, il peut sembler que ce protocole particulier ne soit pas si essentiel, mais en réalité il l'est. ICMP est chargé de fournir des messages d'erreur si/quand un paquet n'atteint pas correctement sa destination. ICMP est essentiel pour recevoir des mises à jour d'état sur la livraison (ou la réception) des paquets d'informations transmis.

Protocole de diagramme utilisateur (UDP)(User Diagram Protocol (UDP))

Le protocole de diagramme utilisateur(User Diagram Protocol) ( UDP ), comme le protocole de contrôle de transmission(Transmission Control Protocol) ( TCP ), est un protocole de transmission de paquets d'informations d'un point à un autre. Dans le cas de TCP , dans le cadre du processus/transmission, il y a une vérification de la livraison réussie du ou des paquets, ce qui le rend plus fiable que UDP .

Dans le cas d' UDP , il n'y a pas de processus de vérification, vous ne saurez donc pas si les paquets ont été transmis ou reçus avec succès et sans erreur. En tant que tel, c'est un protocole assez facile à utiliser mais il n'est pas vérifiable ou ne peut pas être authentifié. 

Configurer Linux(Linux Configuration)

Plusieurs fichiers de configuration sont disponibles dans le système d'exploitation Linux

Par exemple, si vous exécutez un serveur Apache sur votre machine Linux , les fichiers de configuration Apache sont importants. (Apache)Ces fichiers permettent au serveur Web Apache de savoir ce qui se passe avec le domaine et plus précisément, le site hébergé sur ce serveur.

Parfois, le fichier de configuration est étiqueté comme httpd.conf. Parfois, il est étiqueté apache.conf. Ou il pourrait s'agir d'une étiquette / d'un nom complètement différent. Vous pouvez trouver les fichiers de configuration à un emplacement sur un serveur, et d'autres fois, ils se trouvent à un emplacement complètement différent sur un autre serveur.

Heureusement, il existe des commandes utiles qui peuvent aider à localiser des fichiers de configuration spécifiques. Par exemple, vous pouvez taper ce qui suit pour localiser le fichier de configuration « httpd.conf », s'il existe :

find / -name “httpd.conf”

Le premier mot, "trouver", permet à Linux de savoir quelle commande/utilitaire vous utilisez, qui dans ce cas est l'utilitaire "trouver". Le deuxième composant de la ligne de commande est le "/" qui permet à l'utilitaire de recherche de savoir qu'il doit rechercher le chemin à partir du niveau racine du serveur.

Si vous cherchiez dans un emplacement plus spécifique, vous pourriez avoir quelque chose comme "/etc" pour faire savoir à Linux qu'il doit démarrer dans le répertoire etc et suivre ce chemin. En fournissant un chemin/emplacement spécifique, vous pouvez potentiellement accélérer le processus, car Linux n'a pas à rechercher dans des endroits redondants.

L'option « -name » permet à Linux de savoir ce que vous recherchez dans le nom du fichier ou du répertoire. Il est utile d'inclure le nom entre guillemets et vous pouvez également utiliser un astérisque (*) comme caractère générique lors de la recherche.

Voici quelques exemples de fichiers et de répertoires de configuration dans le répertoire/chemin « /etc » : 

  • pam.d - un répertoire qui contient des utilitaires liés aux modules d'authentification. "Su" et "sudo" s'y trouvent, par exemple.
  • sysconfig - un répertoire qui inclut les fonctions de l'ordinateur, comme la gestion de l'alimentation, la souris, etc. 
  • resolv.conf - un fichier qui facilite la fonctionnalité du serveur de noms de domaine, si la machine Linux est utilisée à ce titre.
  • services – ce fichier contient les connexions disponibles (c'est-à-dire les ports ouverts) disponibles sur la machine Linux .

Si vous vous demandez si des fichiers, des chemins ou des utilitaires sont obsolètes ou obsolètes, utilisez les pages de manuel pour vérifier. C'est un moyen utile de garder un œil sur ce qui est actuel et ce qui a changé.

Comprendre le système de fichiers Linux(Understanding the Linux File System) 

Dans de nombreuses distributions Linux(Linux distributions) , les fichiers de configuration se trouvent dans le répertoire network-scripts sous le chemin « etc/sysconfigS'ils ne se trouvent pas là, il est probable qu'il existe un emplacement/chemin similaire. Les fichiers présents dans ce cas particulier sont présentés dans la capture d'écran ci-dessous.

Comme vous le verrez dans la capture d'écran ci-dessous, il existe deux fichiers de configuration. Chacun d'eux est étiqueté en fonction de ses interfaces respectives (c'est-à-dire ifcfg-eth0).

Les fichiers de configuration sont précédés de " ifcfg " qui remplace la commande ifconfig(ifconfig command) (et fait également partie du nom du fichier d'interface). Cela dit, il a maintenant été quelque peu remplacé également puisque l'ifcfg n'est pas compatible avec IPv6 .

Les deux références d'interface ( ifcfg-eth0 et ifcfg-lo ) font référence à des types d'interfaces spécifiques. Les développeurs Linux(Linux) ont été utiles dans ce domaine, fournissant une définition et une direction sous la forme de noms de fichiers. Dans le cas de l'interface se terminant par " eth0 ", il s'agit d'une interface connectée via " ethernet " ou dotée d'une capacité Ethernet.

L'utilisation des lettres « eth » vous oriente dans la bonne direction. Le nombre qui suit « eth » fournit le numéro de l'appareil. Ainsi, le prochain périphérique Ethernet peut être quelque chose comme " ifcfg-eth1 " et ainsi de suite.

Le nom de fichier qui se termine par "lo" fait référence à une interface "loopback". Il est également référencé comme " localhost ". Il s'agit d'une connexion réseau qui n'est techniquement pas une véritable connexion réseau. Il permet simplement aux processus de communiquer sur l'appareil sans communiquer sur le réseau. Pensez « virtuel » lorsque vous pensez à cette interface particulière.

Toutes les distributions Linux sont capables d'avoir un bouclage (ou localhost) et sont généralement configurées pour un par défaut. Ils utilisent une interface qui se termine par "-lo". L'adresse IP de l'hôte local est généralement 127.0.0.1. Dans de nombreux cas, l'interface virtuelle de bouclage peut être utilisée pour tester les connexions et exclure d'autres problèmes de réseau potentiels.

Les fichiers(The Files)

Il existe différentes façons de modifier les fichiers de configuration (ainsi que de les afficher). Une méthode consiste à utiliser « l' éditeur vi(vi editor) » accessible via la commande « vi » suivie du nom du fichier. Dans ce cas, lorsque l'on tape « vi ifcfg-eth0 » (sans les guillemets), il est possible d'afficher les informations réseau pour cette interface particulière (eth0).

Cependant, il serait plus conseillé de le faire de manière traditionnelle et de suivre les instructions de configuration réseau trouvées dans la page de manuel d'ifcfg.

Cela peut également être plus facile pour la personne non technique. L'utilisation de l'éditeur vi nécessite un peu d'attention aux détails, donc si vous êtes soucieux des détails (ou si vous êtes déjà programmeur ou administrateur système), l'éditeur vi peut être une solution optimale lorsque vous travaillez avec des fichiers de configuration Linux .

En accédant aux pages de manuel, nous sommes en mesure d'examiner les informations sur le script ifcfg qui a remplacé le script ifconfig (comme indiqué dans la capture d'écran ci-dessus de la page de manuel). De plus, en regardant la liste des interfaces de la distribution Linux , nous remarquons les commandes ifup et ifdown. Ceux-ci aussi peuvent être passés en revue dans leur(s) page(s) de manuel.

Une capture d'écran de la page de manuel est illustrée dans l'image ci-dessous. Comme vous le verrez dans la page de manuel, il existe des fichiers de configuration Linux supplémentaires (et les chemins d'accès à ces fichiers) qui peuvent être consultés (et modifiés) lors de l'installation et de la configuration des fichiers TCP/IPLinux .

Si vous utilisez un éditeur de texte en ligne de commande comme l'éditeur vi pour afficher le fichier de configuration, vous remarquerez que certaines options sont définies. Par exemple, en regardant l'interface réseau, vous pouvez voir des mots en majuscules, suivis d'un signe égal (=), puis d'un autre mot. 

Par exemple, il peut y avoir une directive « ONBOOT » et elle peut dire « ONBOOT=yes » comme exemple d'option de configuration. Il existe également plusieurs autres points de configuration et options. Par exemple, un autre est NETMASK

Si vous voyez la directive de configuration « NETWORKING », elle doit être suivie d'un « oui ». S'il est suivi de "non", cela peut représenter un problème car cela indiquerait que l'interface réseau n'est pas activée pour la mise en réseau. 

Voici un processus étape par étape pour corriger la situation qui vient d'être décrite :

  1. Faites une copie du fichier de configuration, pour être sûr. Il y a quelques façons de le faire. L'un des plus simples est avec la fenêtre de commande.

    Tapez : cp ifcfg-eth0 ifcfg-eth0_20200101

    Ensuite, sur la ligne suivante, tapez : mv ifcfg-eth0_20200101 /home/mydirectory/ifcfg-eth0_20200101

    Cela déplace la copie de fichier que vous venez de faire vers un répertoire que vous utilisez pour les sauvegardes.
  2. Maintenant que vous avez fait une sauvegarde du fichier de configuration, il est temps d'apporter des modifications à ce fichier de configuration. Si vous utilisez l'éditeur vi, vous devez taper ce qui suit :

    vi ifcfg-eth0

    Après cela, le fichier s'ouvrira dans l'application terminal/commande (de la même manière qu'une page de manuel s'ouvre lorsque vous la déclenchez).

    Une fois le fichier de configuration ouvert, recherchez la ligne qui inclut « NETWORKING=no » et supprimez cette ligne ou remplacez-la par « NETWORKING=yes ». Cela peut être fait avec le " cw” dans l'éditeur vi. En tapant une barre oblique, vous indiquez à l'éditeur vi que vous recherchez quelque chose. Dans ce cas, vous faites savoir à l'éditeur que vous recherchez "RÉSEAU" et lorsqu'il est trouvé (en dirigeant la souris vers cet emplacement), vous pouvez utiliser la touche fléchée droite pour passer au mot "non".

    Lorsque vous arrivez au mot « non », arrêtez-vous sur le « n » et tapez « cw » vous permettant de changer le « non » en « oui ». Le "cw" signifie changement de mot et Linux vous permet de changer le mot entier d'un mot ("non") à un autre ("oui"). Si vous ne vouliez changer qu'une lettre, vous pouvez utiliser un "r" pour remplacer une lettre ou un caractère.

    Les captures d'écran montrent ce processus ci-dessous.
     
  3. Après avoir enregistré le fichier de configuration (c'est à dire en tapant esc pour sortir du mode INSERT puis un double Z pour enregistrer le fichier), il est temps de redémarrer le service ou l'ordinateur. Cela peut être fait de plusieurs manières différentes. Une méthode pour redémarrer l'ordinateur consiste à taper la ligne de commande suivante :

    shutdown -r now

    La commande shutdown indique à la machine Linux de s'arrêter. (Linux)L'option -r indique à la commande qu'il ne s'agit pas simplement d'un arrêt, mais d'un redémarrage et de le faire maintenant.

    Astuce :(Tip:) Si vous voulez savoir quand l'ordinateur ou le serveur a terminé le redémarrage, tapez « ping », puis l'adresse IP publique de l'ordinateur/du serveur (ou un nom de domaine d'un site hébergé sur le serveur Linux ).

    En utilisant la commande ping, vous verrez que le serveur n'est pas "pingable" (ce qui se produit lors du redémarrage), puis lorsque le serveur redémarre avec succès, le ping répondra par une réponse positive, indiquant un redémarrage réussi.

Voici quelques images qui aident à illustrer les étapes de la liste ci-dessus.

Étape 1:

Étape 2:

Astuce :(Tip:) Gardez à l'esprit que rien dans le monde des serveurs n'est singulier. Par exemple, vous pouvez modifier la configuration d'une interface particulière (dans ce cas eth0) mais cela peut n'être qu'une interface sur un réseau et peut être affecté par (ou affecter) un autre serveur.

Ainsi, dans l'exemple ci-dessus, en redémarrant le serveur, il déclenchera également le redémarrage des périphériques réseau. Ce n'est pas l'option singulière pour cette interface mais cette interface serait affectée par une commande de redémarrage. 

/etc/hosts File(s)

Le fichier /etc/hosts peut exister ou non. S'il existe, il peut ou non être utilisé dans la configuration. Par exemple, vous pouvez avoir un système différent qui gère les configurations d'hôte, plutôt que de gérer le fichier directement. De plus, le fichier hosts lui-même varie. Par exemple, IPv4 et IPv6 gèrent la configuration différemment, comme vous pouvez le voir dans l'image ci-dessous.

Configuration Files; Locations/Paths; Terms; and More

Voici quelques noms de fichiers et emplacements de fichiers supplémentaires utiles :

  • /etc/sysconfig/network-scripts/ (chemin du fichier de configuration)
  • /etc/sysconfig/network-scripts/ifcfg-eth0 (fichier de configuration)
  • /etc/hosts (fichier de configuration)
  • /etc/resolv.conf (fichier de configuration avec les informations du serveur de noms)

Dans de nombreux cas, le logiciel système ou serveur crée automatiquement les fichiers de configuration. De plus, si DHCP est utilisé, d'autres aspects de la configuration réseau sont calculés à la volée, car les adresses IP statiques ne sont pas utilisées dans ce cas.

Les commandes de ligne de commande (CL) suivantes ont été (ou sont) utilisées dans la plupart des distributions Linux. Lorsqu'elles sont obsolètes ou obsolètes, la commande de remplacement est répertoriée.

  • route ( obsolete / deprecated ): était utilisé pour afficher et modifier les routes. Remplacé par ip route .
  • hostname : Utilisé pour afficher ou manipuler et modifier le nom d'hôte de la machine. 
  • netstat : Afficher les connexions réseau, les tables de routage, les statistiques d'interface, les adhésions multicast, etc.
  • arp : ( obsolete / deprecated ) Utilisé pour être utilisé pour afficher les informations IPv4 ; spécifiquement le cache du voisin réseau. IPv6 est devenu l'adresse réseau, remplaçant la collection IPv4 de quatre nombres séparés par des points. À la lumière de ces changements, cette commande obsolète a été remplacée par ip neigh .
  • ip : Non seulement IP signifie "protocole Internet" et le WAN ultime (réseau étendu"), mais c'est aussi un utilitaire qui permet à l'administrateur système ou à l'utilisateur de l'ordinateur de visualiser les paramètres TCP/IP ainsi que de les définir comme avait besoin.
  • tc : Cela signifie "contrôle du trafic" et est un utilitaire pour aider à gérer le trafic entrant et sortant sur la machine  Linux .

Outils de configuration : GUI Vs. Ligne de commande (CL)(Configuration Tools: GUI Vs. Command Line (CL))

Pour fournir un point de référence, les trois images suivantes affichent un mécanisme d'interface utilisateur graphique ( GUI ) pour gérer la configuration de la mise en réseau, y compris TCP/IP

La première image est l' interface graphique d'Apple Mac(Apple Mac GUI) ( System Preferences > Networking ) et les deux images suivantes sont celles du système d'exploitation Windows(Windows Operating System) (bien que cela varie d'une version à l'autre). Il est accessible via le Panneau de configuration Microsoft(Microsoft Control Panel) et Connexions réseau(Network Connections) , comme vous pouvez le voir sur les captures d'écran.

Avantages et inconvénients de l'interface graphique par rapport à l'éditeur de texte ou à la ligne de commande (CL)(Pros and Cons of GUI Versus Text Editor or Command Line (CL))

Bien que de nombreuses personnes préfèrent les interfaces utilisateur graphiques ( GUI ) en raison de leur facilité d'utilisation, de leur présentation visuelle et de leur simplicité générale, il est utile de comprendre les fichiers de configuration (dans ce cas, liés à la mise en réseau) afin de pouvoir dépanner et corriger tout problème. 

Vous voudrez peut-être d'abord saisir l' interface graphique(GUI) , mais cela aide d'être pleinement informé… juste au cas où. De plus, certains systèmes d'exploitation n'ont pas nécessairement d' interface graphique(GUI) (ou n'en ont pas encore), encore une fois ; il est utile d'être préparé.

Dans la section suivante, nous aborderons les fichiers de configuration et comment y accéder, les mettre à jour, ainsi que la gestion des fichiers et des utilitaires.

Outils, utilitaires, scripts et démons Linux en ligne de commande (CL)(Linux Command-Line (CL) Tools, Utilities, Scripts, and Daemons)

De nombreux outils sont disponibles pour les distributions Linux . Encore une fois(Again) , comme d'autres commandes, il existe des similitudes (et des différences) entre la façon dont ces outils sont utilisés dans les différentes distributions. Dans certains cas, des outils sont disponibles mais doivent d'abord être installés, et le processus d'installation varie souvent.

L'outil de ligne de commande est souvent référencé en tant que shell et au début, terminal . Il existe d'autres termes pour cela mais généralement, c'est une application qui permet à l'utilisateur d'accéder aux systèmes d'exploitation en tapant des commandes dans une fenêtre.

Regardons quelques exemples. Le premier provient du système d'exploitation Windows et semble probablement familier aux utilisateurs de Windows . L'outil est ouvert en tapant CMD (comme indiqué dans les captures d'écran ci-dessous). 

La deuxième capture d'écran est celle d'une application appelée Terminal qui est préinstallée sur la plupart des ordinateurs Apple .

NSLookup (nslookup)

Dans le cas de nslookup , le ns signifie nameserver et la partie de recherche(lookup) de la commande est une « recherche » d'informations. Donc, ce que le nom de cet outil nous dit, c'est qu'il recherchera des informations généralement disponibles via un serveur de noms.

NSLookup est un outil pratique. Dans ce cas, nous l'utilisons pour rechercher des informations sur eBay. Pour ce faire, nous tapons "nslookup ebay.com" et nous sommes présentés avec des informations similaires à ce qui est montré dans l'image ci-dessous.

La commande s'affiche en haut de la capture d'écran (après les informations privées floutées). Ensuite, la sortie de cette requête (le nslookup ) est affichée ci-dessous, avec des informations telles que Server (l'adresse IP publique), l' adresse IP(IP address) spécifique , etc. 

Contrôle du trafic (tc)(Traffic Control (tc))

Un autre outil est l'outil "Traffic Control" (également appelé "tc"). C'est un outil qui permet l'ordonnancement et le traitement de paquets de données. 

La commande vous indique comment(how) les paquets se déplacent sur un réseau. Cet aspect inclut les(how) réponses à des questions telles que le timing, la vitesse, les appareils, etc. Voici une représentation en ligne de commande (CL) de l'utilisation de Traffic Control (tc) :

Bien que cela puisse ressembler à du "charabia" pour certains, chaque mot de la ligne de commande représente quelque chose d'important. Voici la liste :

  • tc : C'est l'outil, dans ce cas "Traffic Control" (alias "tc"). Cela indique à l'application/au logiciel de ligne de commande quel outil Linux utiliser.
  • qdisc : Cette abréviation signifie discipline de mise en file(queuing discipline) d'attente et est une autre façon de décrire un ordonnanceur simple.
  • add : Puisque nous construisons une configuration (oui, techniquement un fichier), nous indiquons à l'outil que nous ajoutons(adding) aux contrôles.
  • dev eth0 : Le « dev » fait référence au « périphérique », indiquant à l'outil que nous sommes sur le point de définir le périphérique. Le « eth0 », dans ce cas, est la référence à l'appareil. Vous remarquerez que cela ressemble à ce qui apparaît dans une interface utilisateur graphique ( GUI ) pour une étiquette de périphérique.
  • root : cela indique à l'outil que nous modifions le trafic sortant à partir du niveau racine, ou de sortie.
  • netem : Ce mot représente l'expression « émulateur de réseau ». Bien qu'il ne s'agisse pas du réseau matériel, il émule la même chose. Ceci est similaire à la façon dont le logiciel Parallels émule le logiciel Windows pour les ordinateurs Apple . Certes, c'est un logiciel complètement différent, mais c'est un logiciel d'émulation de la même manière que netem émule un réseau. Dans ce cas, netem représente un WAN (réseau étendu) par opposition à un LAN (réseau local). 
  • delay : Ce mot indique à l'outil tc que nous modifions le composant "delay" de la transaction.
  • 400ms : Nous avons déjà dit à l'outil que nous affectons le délai, mais nous devons maintenant définir de combien nous affectons le délai. Dans ce cas, c'est de 400 millisecondes. 

Gestionnaire de réseau(Network Manager)

L'objectif du gestionnaire de réseau(Network Manager) est de simplifier et d'automatiser la configuration de votre réseau. Pour les utilisateurs DHCP , le gestionnaire de réseau(Network Manager) peut obtenir une adresse IP, remplacer les routes par défaut et échanger automatiquement les serveurs de noms.

L'outil nmtui pour utiliser votre gestionnaire de(Manager) réseau est disponible dans la plupart des distributions Linux , mais pas toutes . Aussi, gardez à l'esprit que certains outils sont « disponibles » et pourtant non disponibles. En d'autres termes, certains outils et démons doivent être installés et ne sont pas nécessairement préinstallés sur la distribution Linux en question.

Autres sujets de réseautage(Other Networking Topics)

De nombreux aspects de la mise en réseau et de TCP/IP sont particulièrement fascinants, en particulier lorsqu'il s'agit d'une distribution Linux . N'oubliez(Don) pas que vous avez des pages de manuel (c'est-à-dire des pages de manuel) disponibles directement dans l' installation de Linux . Ainsi, bien que cela puisse sembler être une sorte de liste indépendante de ce que vous ne devriez pas faire, vous pouvez toujours utiliser une page de manuel pour comprendre ce que vous devriez faire.

Linux comme routeur(Linux as the Router)

De nos jours, la plupart des gens utilisent du matériel dédié à la tâche de routage (c'est-à-dire un routeur) pour gérer la tâche de routage du réseau(manage the network route task) .

Souvent, c'est parce que les routeurs font partie du forfait avec les forfaits/contrats Internet à domicile ou au bureau. Le client est généralement surpris à payer des frais de location/bail par mois (ou annuellement) ou à devoir acheter le routeur. 

Quelle que soit la manière dont il est géré, Linux n'a guère besoin de fonctionner comme un routeur, même s'il est capable de fonctionner comme un seul. Les scénarios décrits ci-dessus créent une situation presque de pseudo-dépréciation pour Linux , mais cela ne signifie pas que Linux est complètement hors jeu. Il est possible de configurer un serveur Linux en tant que routeur matériel (et logiciel ultérieur) si nécessaire.

Route IP (anciennement "Route")(IP Route (Formerly “Route”))

L'image suivante montre une capture d'écran de la page de manuel de "Route" et des directives possibles avec cet outil. 

SNORT - Un système de détection d'intrusion(SNORT – An Intruder Detection System)

Snort Software est un (Snort Software)système de détection d'intrusion(Intrusion Detection System) ( IDS ) open source développé à l'origine par Martin Roesch et acquis depuis par Cisco Systems(Martin Roesch and since acquired by Cisco Systems) . Il fonctionne sur la base de règles qui utilisent les couches TCP/IP du réseau. La définition de ces règles identifie les intrusions pour protéger un réseau.

How to Set Up Linux > TCP/IP Settings for Linux

Les mini-tutoriels suivants vous aideront dans certaines tâches courantes que vous pourriez rencontrer dans le monde Linux

Gardez à l'esprit que les temps changent rapidement, il est donc utile d'utiliser vos pages de manuel ainsi que les recherches dans Google pour vérifier les étapes suivantes et vous assurer qu'il n'y a pas d'autres outils qui pourraient mieux faire le travail. Au moment de la rédaction de cet article, ce n'est pas le cas.

Tutoriel 01 : Attribution d'une adresse IP statique à une machine Linux(Tutorial 01: Assigning a Static IP Address to a Linux Machine)

La première question que vous devez vous poser est de savoir si l'ordinateur/serveur a besoin ou non d'une adresse IP statique (celle qui ne change pas) ou d'une adresse IP modifiable (comme DHCP - Dynamic Host Configuration Protocol ). S'il s'agit de votre ordinateur personnel (et non d'un serveur), il est probable que vous utilisiez DHCP pour votre accès à Internet.

Cela signifie que vous n'avez pas à vous soucier d'attribuer une adresse IP statique à votre ordinateur. Votre fournisseur de services Internet ( FAI(ISP) ) et tout matériel fourni/loué calculent automatiquement une adresse IP à la volée pour vous permettre de vous connecter à Internet. En d'autres termes, si vous n'avez pas besoin d'une adresse IP statique, une adresse à changement dynamique convient parfaitement à votre ordinateur non serveur.

Si vous avez un serveur et que vous avez besoin qu'il soit accessible aux autres (c'est-à-dire à l'extérieur de votre domicile ; un WAN/internet ; non-LAN), vous aurez besoin d'une adresse IP statique pour que soit le domaine que vous utilisez y soit mappé via le serveur de noms d'hébergement attribué au domaine, ou accessible directement via l'adresse IP statique.

Si personne n'a besoin d'accéder à votre ordinateur ou à votre serveur en dehors de votre domicile, une adresse IP changeante (dynamique ; non statique) convient parfaitement, car personne n'utilise une adresse IP statique.

Remarque : Certaines personnes ont utilisé une adresse IP DHCP(DHCP IP) pour un accès public (oui, même en tant que serveur) mais,

  1. Cela nécessite une personne très technique pour le faire, donc ce n'est pas aussi courant.
  2. C'est beaucoup plus difficile à maintenir (en raison de sa nature en constante évolution) qu'une adresse IP statique.

Si vous avez besoin d'une adresse IP statique, continuez et suivez les étapes ici. Sinon, vous pouvez ignorer cette section.

Comme vous le verrez, la commande (illustrée ci-dessus) inclut "sudo" au début de la ligne. Bien qu'il soit possible d'utiliser la commande "su" (superutilisateur) et de se connecter en tant que superutilisateur, l'utilisation de "sudo" n'exécute que cette commande en tant que superutilisateur.

L'autre méthode, la connexion en tant que superutilisateur, permet d'effectuer toutes les tâches en tant que superutilisateur, ce qui facilite l'exécution de ce qui doit être fait.

Cependant, cela s'accompagne d'un risque de sécurité, c'est pourquoi il est plus sûr de simplement démarrer la commande avec sudo et de permettre à l'application de demander un mot de passe (si nécessaire) pour terminer la commande en tant que superutilisateur pour cette tâche/commande.

Le choix vous appartient et devrait être basé sur la méthode la plus simple. Le fichier représenté par la capture d'écran ci-dessous est accessible via la commande suivante :

sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0

Avant d'utiliser cette commande, le numéro de périphérique réseau est vérifié ( eth0 ) pour s'assurer qu'il est correct. Comme vous vous en souvenez, les configurations Linux sont gérées dans le fichier de l'interface, il est donc essentiel que le numéro d'interface soit vérifié à partir de ce fichier avant de modifier le fichier de configuration.

Un autre aspect du fichier de configuration à prendre en compte est l'utilisation du mot "statique". Puisque nous ajoutons une adresse IP statique, il est important de faire savoir au fichier de configuration que c'est le cas. 

Les notes ont été ajoutées dans la capture d'écran ci-dessous pour des raisons d'illustration, mais ne doivent pas être incluses dans votre fichier de configuration. De plus, dans certaines distributions Linux , les guillemets sont obligatoires. Dans ce fichier de configuration particulier, aucun guillemet n'était présent dans le fichier de configuration créé automatiquement, de sorte que la tendance s'est poursuivie et qu'aucun guillemet n'a été ajouté.

La capture d'écran suivante montre comment le fichier apparaîtrait réellement, avec les notes et les espaces supplémentaires supprimés.

Le fichier de configuration suivant (et final) à éditer est accessible en tapant :

sudo vi /etc/resolv.conf

Dans ce fichier, les serveurs de noms peuvent être ajoutés (ou modifiés). Ces serveurs de noms doivent correspondre à l'autre fichier de configuration qui vient d'être modifié. Dans ce cas, dans /etc/sysconfig/network-scripts/ifcfg-eth0 (la capture d'écran ci-dessus).

Le verbiage qui sera utilisé est "nameserver". Ainsi, là où le fichier de configuration de l'appareil affiche DNS1=8.8.8.8 , le fichier resolv.conf doit afficher nameserver 8.8.8.8 .

L'équivalent de DNS2=4.4.4.4 apparaîtrait comme serveur de noms 4.4.4.4(nameserver 4.4.4.4 ) dans le fichier resolv.conf.

En gros, les étapes ci-dessus fonctionnent sur la distribution Red Hat Linux , mais il n'y a aucune garantie que cela fonctionnera à l'avenir, avec les changements technologiques qui se produisent. C'est pourquoi les configurations doivent être testées et vérifiées.

Une fois les configurations terminées, redémarrez l'interface réseau avec la méthode préférée décrite ci-dessus. Cela appliquera les modifications. Il est également utile de tester l'adresse IP statique. Vous pouvez le faire en essayant de vous connecter à cette adresse IP statique publique à partir d'un autre appareil (de préférence sur un réseau différent).

Vous pouvez également appeler un ami ou un associé et lui demander de tenter une connexion à l'adresse IP statique à partir d'un autre emplacement géographique (et d'un réseau différent).

Tutoriel 02 : Alias ​​IP réseau(Tutorial 02: Network IP Aliasing)

Il est possible d'attribuer plusieurs adresses IP à une carte d'interface réseau ( NIC ). C'est ce qu'on appelle l'alias IP réseau(Network IP Aliasing) car une seule adresse IP serait réelle, de sorte que les adresses IP supplémentaires sont des alias de la même carte. Pour attribuer l'adresse IP, utilisez votre méthode préférée d'attribution de l'adresse IP comme décrit dans le didacticiel 01.

Ce n'est pas qu'il doit être statique, mais pour avoir plusieurs adresses IP attribuées à l'aide de Network IP Aliasing , il faut attribuer des adresses IP à l'aide d'une adresse IP statique.

Tutoriel 03 : Modifier le nom d'hôte de la machine Linux(Tutorial 03: Change Host Name of the Linux Machine)

Utilisez les étapes suivantes pour modifier le nom d'hôte de votre machine Linux à l'aide de votre éditeur préféré :

1. Modifiez le fichier de configuration du nom d'hôte en saisissant ce qui suit dans l'application de ligne de commande :

   sudo vi /etc/hostname

Partout où vous voyez l'ancien nom d'hôte dans ce fichier de configuration, remplacez-le par le nouveau nom d'hôte.

2. Modifiez le fichier de configuration des hôtes en saisissant ce qui suit dans l'application de ligne de commande :

   sudo vi /etc/hosts

Partout où vous voyez l'ancien nom d'hôte dans ce fichier, remplacez-le par le nom d'hôte nouvellement choisi/désigné de la même manière que vous l'avez fait avec le fichier de configuration du nom d' hôte(hostname) à la première étape ci-dessus.

3. Redémarrez le serveur ou l'ordinateur Linux . Une méthode pour ce faire (selon votre distribution Linux ) consiste à taper ce qui suit dans l'application de ligne de commande :(Linux)

   sudo shutdown –r now

Ce redémarrage est nécessaire pour que les modifications prennent effet.

Tutoriel 04 : Activer et désactiver votre carte réseau(Tutorial 04: Enable and Disable Your NIC)

L'une des choses les plus fascinantes que vous pouvez faire via la ligne de commande sous Linux est d'activer ou de désactiver votre connexion Ethernet .

Pour ce faire, tapez la commande appropriée parmi ces deux :

   sudo ip link setup
   sudo ip link setdown

Avec les anciennes versions de Linux , vous pouviez exécuter ifconfigup ou ifconfigdown, mais il est possible que ces commandes soient obsolètes ou obsolètes dans les nouvelles distributions Linux . Dans ce cas, la nouvelle commande ip est préférable.

Tutoriel 05 : Activer le transfert réseau(Tutorial 05: Enable Network Forwarding)

Votre système d'exploitation Linux est capable de connecter une variété de réseaux et peut agir comme un routeur. Il vous suffit de uncomment the net.ipv4.ip_fporward=1 line qui vous permettra de rediriger l'adresse IP.

Le fichier de configuration nécessaire est normalement stocké dans /etc/sysctl.conf :

Pour des exemples sur la façon de le configurer, consultez « How to enable IP forwarding on Linux (IPv4 / IPv6) ».

Si vous configurez un serveur Linux en utilisant DHCP (au lieu d'une adresse IP statique), vous pouvez opter pour une forme de transfert réseau. Ce n'est pas courant, mais référencé ici car c'est faisable et cela représente un cas où quelqu'un peut être enclin à le faire.

Tutoriel 06 : Commandes à distance via Shell(Tutorial 06: Remote Commands Via Shell)

Dans le cas où vous avez besoin d'accéder à un serveur Linux et que ce serveur n'est pas géographiquement situé au même endroit que vous, vous devrez peut-être utiliser des commandes à distance pour accéder à ce serveur Linux distant. 

Pour ceux qui sont programmeurs ou administrateurs système, «l'accès à distance» à un serveur est un événement normal. 

L'une des façons les plus populaires de le faire est d'utiliser la commande " ssh ", indiquant à l'application de ligne de commande que vous souhaitez accéder en toute sécurité au serveur Linux , même si vous le faites via une connexion non sécurisée. 

En plus de l'utilisation de la commande "ssh", vous devez fournir des informations sur l'endroit où vous vous connectez et comment (parmi d'autres options disponibles).

Vous pouvez utiliser un nom de domaine pour l' accès au serveur Linux ou même une adresse IP statique publique. Le nom ou l'adresse IP indique à la commande ssh à quoi elle accède et où le trouver.

D'autres options peuvent inclure le nom d'utilisateur qui sera utilisé pour se connecter au serveur distant. Sans cette option définie, elle peut être demandée mais c'est aussi une option pour la définir en même temps que la commande ssh.

Par example:

   ssh username myserver.com

Le mot de passe peut également être configuré dans la commande mais il est recommandé, pour des raisons de sécurité, de le saisir au moment de la connexion avec le serveur distant. 

Pourquoi? Si le mot de passe est saisi dans la commande, en texte brut, il peut être consulté par la prochaine personne utilisant ce même ordinateur et ils auraient accès au mot de passe.

Pour des raisons de sécurité supplémentaires, vous souhaiterez peut-être accéder au serveur Linux via un port spécifique. (Linux)En désignant un port pouvant être utilisé, vous pouvez bloquer d'autres ports et empêcher les tentatives de pirates ou les attaques DOS (déni de service). 

Il existe de nombreux points de configuration différents pour ssh. Certains d'entre eux sont répertoriés sur shellhacks.com .

Tutoriel 07 : Outils de surveillance du réseau(Tutorial 07: Network Monitoring Tools)

Un élément important de la gestion d'un réseau consiste à vérifier que tout fonctionne et continue de fonctionner. Vous pouvez le faire via la surveillance du réseau. Les outils qui prennent en charge la surveillance du réseau varient mais atteignent finalement des buts et des objectifs similaires.  

Cacti est l'un de ces outils de surveillance de réseau . Cacti   est un outil de surveillance de réseau open-source. Cacti surveille le réseau et fournit des représentations graphiques de ce qui a été enregistré. Cela aide les utilisateurs (en particulier les débutants) à identifier où il peut y avoir des problèmes.

Le frontal peut accueillir de nombreux utilisateurs et est parfois utilisé par les services d'hébergement pour afficher des informations de bande passante en temps réel et d'autres données dans les graphiques suivants.

Les données peuvent être introduites dans Cacti via n'importe quel script ou commande externe. Cacti rassemblera les données via une tâche cron et remplira votre base de données MySQL avant de la présenter sous forme de graphique utilisateur frontal.

Pour gérer la collecte de données, vous pouvez fournir à cacti les chemins d'accès à n'importe quel script/commande externe ainsi que toutes les données que l'utilisateur devra "remplir". Cacti rassemblera ensuite ces données dans une tâche cron et remplira une base de données MySQL .

Cacti est un outil utile pour les administrateurs réseau qui souhaitent surveiller l'utilisation du réseau et fournir des visuels faciles à comprendre aux consommateurs. Cacti peut être téléchargé gratuitement sur cacti.net . Le site Web comprend une documentation pour installer et configurer l'outil de surveillance du réseau.

Les alternatives à Cacti que vous pouvez essayer incluent Solarwinds NPM , PRTG et Nagios . Solarwinds prendra en charge SNMP ainsi que ICMP/Ping , WMI , Netflow , Sflow , Jflow et IPFIX , pour n'en nommer que quelques-uns. Les modèles, graphiques et alertes prédéfinis vous aident à commencer à surveiller votre réseau rapidement.

PRTG fournit jusqu'à cent Sensors gratuitement. Il a des fonctionnalités similaires à Solarwinds , plus des alertes flexibles et des applications pour Smartphones , tablettes, iPads.

Nagios possède tous les outils que vous trouverez dans Cacti , mais nécessite un peu plus de configuration. Il existe de nombreux plugins parmi lesquels choisir. Il a une solide réputation comme l'un des plus anciens outils de gestion et de surveillance de réseau. Mais, vous devrez vous salir les mains dans la maintenance de ses fichiers de configuration.



About the author

Je suis un ingénieur logiciel avec plus de deux ans d'expérience dans les applications mobiles et de bureau. J'ai une expertise dans les mises à jour Windows, les services et Gmail. Mes compétences font de moi le candidat idéal pour des tâches telles que le développement d'applications Windows ou la maintenance de clients de messagerie.



Related posts