La première chose après avoir installé un système d'exploitation Linux en tant que serveur est de configurer l'interface réseau pour avoir un accès à distance et depuis votre poste de travail/ordinateur portable et une tasse de café, vous pouvez gérer votre serveur à votre convenance.
Dans ce didacticiel, nous utiliserons nmcli qui signifie l'outil de ligne de commande Network Manager pour configurer nos interfaces réseau.
Remarque préliminaire
La particularité de cette commande est que vous n'avez besoin d'aucune exigence, cependant, elle est exécutée en tant que root
Le format de base de nmcli :
nmcli [OPTIONS] OBJECT { COMMAND | help }
OBJECT pourrait être l'une de ces options :connexion, appareil, général, réseau, radio, agent et moniteur et nous pouvons utiliser un préfixe de ces options :
nmcli -p périphérique --> nmcli -p dev --> nmcli -p d
Remarque :-p signifie --pretty est une option
Dans cette partie du didacticiel, nous aborderons deux objets :Connexion et Périphérique
Périphérique réseau
Nous pouvons utiliser cet objet avec les commandes les plus utilisées :status, show et set
Nous commencerons par afficher nos interfaces (appareils) si nous en avons plusieurs avec leur statut :
nmcli device status
Sortie :
La première colonne est le nom des interfaces, mon interface physique est ens33 elle peut être différente de votre environnement, la dernière colonne est le nom du profil on l'appelle aussi "profil de connexion".
Autre méthode :
nmcli -p device
L'option -p signifie Pretty est une sortie lisible par l'homme.
Sortie :
Nous utilisons nmcli dev show pour lister toutes les informations sur toutes les interfaces (c'est beaucoup d'informations), nous allons donc spécifier une interface que nous utiliserons ens33 :
nmcli dev show ens33
Sortie :
Toutes les informations ici sont très explicites, nous n'avons pas besoin de passer par cette sortie.
Nous pourrions configurer n'importe quel appareil pour qu'il soit géré avec nmcli ou non, en utilisant la commande set.
Pour répertorier nos appareils et vérifier s'ils sont gérés ou non.
nmcli device status
Sortie :
Remarquez la colonne STATE.
Maintenant, je vais changer ens33 en une interface non gérée.
sudo nmcli device set ens33 managed no
Sortie :
Notez que nous ne pouvons plus gérer l'interface ens33 avec NetworkManager mais l'appareil est toujours connecté.
Activons la gestion de l'interface ens33 :
sudo nmcli device set ens33 managed yes
Vérifier l'état de mes interfaces :
nmcli device status
sortie :
Enfin, nous verrons comment activer et désactiver nos appareils (interfaces) avec les commandes de déconnexion et de connexion.
sudo nmcli dev disconnect ens33
Vous devriez avoir un message de réussite :Appareil « ens33 » déconnecté avec succès.
Afficher l'état des appareils :
nmcli dev status
Sortie :
Notez que l'appareil ens33 est marqué en rouge, l'état est déconnecté et aucun profil de connexion n'est attaché. L'appareil sera automatiquement activé après le redémarrage ou nous pouvons l'activer manuellement.
Pour activer nos appareils :
sudo nmcli dev connect ens33
Sortie :
Le message avec une activation réussie et un UUID de la connexion au profil à la fin.
Statut de nos interfaces :
nmcli dev status
Sortie :
L'interface n'est plus désactivée.
Connexion de profil
Concentrons-nous maintenant sur le profil en affichant les informations :
nmcli connection show
Sortie :
La première colonne est le nom de la connexion (pas le nom de l'appareil), la seconde est l'UUID ou Universal Unique Identifier et la dernière est le nom de l'appareil.
Les profils sont la configuration enregistrée des interfaces stockées dans /etc/sysconfig/network-scripts/ et nommées avec un préfixe ifcfg- puis le nom du profil, voyons :
Les profils avec le nom des appareils sont générés automatiquement, ifcfg-amine est créé manuellement.
Créons maintenant quelques profils.
Remarque :J'ai deux interfaces physiques attachées à mes machines virtuelles ens33 et ens37.
Nous allons créer un profil de configuration Ethernet avec une adresse IP dynamique.
sudo nmcli con add type ethernet con-name HomeDHCP ifname ens37
L'interface est de type Ethernet, HomeDHCP est le nom du profil, ens37 est l'interface à laquelle le profil est attaché.
Sortie :
Voyons maintenant les profils :
Remarquez ici que le profil est créé mais pas attaché à l'interface ens37, nous devons activer notre nouveau profil en :
sudo nmcli con up HomeDHCP
Attention le nom du profil est sensible à la casse.
Sortie :
Revoyons :
Notez que la première colonne NAME HomeDHCP est attachée à l'interface ens37. Et le profil ens37 (généré automatiquement) n'est attaché à aucune des interfaces.
Voyons à l'intérieur du profil :
nmcli con show HomeDHCP
Et vérifiez le fichier créé dans /etc/sysconfig/network-scripts/ifcfg-HomeDHCP
Désactivons le profil HomeDHCP de l'interface ens37.
sudo nmcli con up HomeDHCP
sortie :
Notez que le profil par défaut est attaché à l'interface ens37.
Supprimons le profil HomeDHCP :
sudo nmcli con delete HomeDHCP
Sortie :
Plus de profil HomeDHCP.
Créons maintenant un profil de configuration Ethernet nommé HomeStatic avec une adresse IP statique.
sudo nmcli con add type ethernet con-name HomeStatic ifname ens37 ip4 192.168.0.10/24 gw4 192.168.0.1
Sortie :
Consultez nos interfaces de connexion :
nmcli con s
Sortie :
Rappelez-vous que nous devons attacher le profil à l'interface en activant le profil :
sudo nmcli con up HomeStatic
Sortie :
Affichez la configuration du profil :
nmcli dev show ens33
Sortie :
Une autre façon mais il y a beaucoup d'informations donc nous allons nous concentrer sur ce que nous voulons voir.
Sortie :
Notez ici que nous n'avons aucune information sur les serveurs DNS, nous allons donc ajouter un serveur DNS avec une autre commande :
sudo nmcli con modify HomeStatic ipv4.dns "8.8.8.8 8.8.4.4"
vérifier :
nmcli c s HomeStatic
Une autre façon d'ajouter une adresse de serveur DNS :
sudo nmcli c mod HomeStatic +ipv4.dns "192.168.0.1"
Et bien sûr pour supprimer une adresse de serveur DNS :
sudo nmcli c mod HomeStatic -ipv4.dns "192.168.0.1"
Jusqu'à présent, nous passons en revue les opérations de base de la mise en réseau pour communiquer avec nos serveurs avec ces deux objets et leurs commandes dans le prochain didacticiel que nous continuerons à explorer et essayerons de terminer avec un script pour résumer ce que nous avons fait.