Académique Documents
Professionnel Documents
Culture Documents
L’administrateur réseau est responsable de ce qui peut se passer dans un réseau administré ; ainsi les
rôles d’un administrateur réseau peuvent se résumer comme suit :
Depuis Ubuntu 15.10, udev intègre l’implémentation Stateless Persistent Network Interface
Names qui, depuis le passage à Systemd, renomme automatiquement les interfaces réseau.
Cette solution appelée ifnames permet de donner un nom persistant à un équipement, en se
basant sur les informations fournies par le BIOS et le firmware (numéro d’index, nom du slot
PCI, etc.).
Les noms commenceront toujours par un "e" pour Ethernet" et un "w" pour le WiFi.
Exemples :
o enp0s3 pour une carte Ethernet
o wlp0s3 pour une carte WiFi
Il est possible de fixer un nom d’interface dont on connaît l’adresse MAC avec le fichier
/etc/udev/rules.d/10-network.rules :
SUBSYSTEM=="net",ACTION=="add",ATTR{address}=="aa:bb:cc:dd:ee:ff",NAME="xx"
c. La commande ifconfig
La commande ifconfig est utilisée pour configurer manuellement et maintenir les interfaces réseau.
Si aucun argument n’est donné, ifconfig affiche simplement l’état des interfaces actuellement
définies (actives).
Pour attribuer une adresse IP à une interface réseau, on peut utiliser la commande ifconfig :
ifconfig <interface> <adresse ip>
Note : Dans le cas d'un réseau local connecté à Internet, vous devez aussi ajouter l'adresse IP de la
passerelle et l'adresse IP d'un ou plusieurs serveurs DNS.
• Pour ajouter une passerelle, on peut utiliser la commande route : $ sudo route add default gw
192.168.1.1
• Pour afficher les routes vers les différents réseaux : $ sudo route -n
• Pour modifier l’adresse DNS # echo "nameserver 8.8.8.8" > /etc/resolv.conf (Attention faire une
copie de ce fichier avant d’exécuter cette commande)
Pour voir si la carte réseau est bien configurée, on peut utiliser la commande :
ifconfig enp0s3
Université Sultan Moulay Slimane
Ecole Supérieure de Technologie
-Fkih -Ben Salah-
→ La commande ifconfig permet aussi d’actviver (et désactiver) une interface réseau :
→ Tester le réseau
Pour tester si la carte réseau fonctionne, on peut essayer de communiquer avec une autre machine
avec la commande
ping <adresse ip>
d. La commande dhclient
La commande dhclient fournit un moyen de configurer une ou plusieurs interfaces réseau en
utilisant le protocole DHCP :
$ dhclient enp0s3
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.1.2
netmask 255.255.255.0
gateway 192.168.1.1
auto eth0
iface eth0 inet dhcp
Pour que les modifications de ce fichier soient prises en compte, il faut redémarrer le
service networking ou utiliser les commandes ifup et ifdown.
Par exemple : $ sudo ifup eth0
// ou :
$ service <nom> [enable|diable|start|stop|restart|reload|status]
▪ par Upstart (un des successeurs des scripts system V) :
$ initctl [enable|disable|start|stop|restart|reload|status] <nom>
▪ par systemd (qui remplace upstart et son prédécesseur les scripts system V) :
$ sudo systemctl [enable|disable|start|stop|restart|reload|status] <nom>
g. Ip et Netplan
Étant donné que ifconfig est progressivement supprimé, il est temps de s'habituer au
nouveau système. Par défaut, Ubuntu 18.04 et plus n'utilise plus ifconfig et utilise à la place
les nouvelles commandes ip et netplan.
I. Avec la commande ip (pour plus de détails utiliser man ip) :
▪ Pour configurer l'interface réseau eth0 avec l'IP 192.168.1.100 : sudo ip addr add
192.168.1.100/24 dev eth0
▪ Afficher votre IP en utilisant ip : ip addr show
▪ Activer ou désactiver une interface en utilisant ip : ip link set eth1 up ip link set
eth1 down
▪ Affichage des routes en utilisant ip : ip route show
II. Netplan est un nouvel outil de configuration réseau qui utilise des fichiers de description
YAML, qui sont stockés sous /etc/netplan. Les interfaces de mise en réseau de fichiers par
défaut pour une nouvelle installation d'Ubuntu 20.04 sont /etc/netplan/00-installer-
config.yaml.
Depuis Ubuntu 18.04 le fichier /etc/network/interfaces n’est donc plus utilisé. Pour revenir à
cette utilisation : il faut installer le package ifupdown.
La configuration est centralisée dans /etc/netplan/.
Note : Configuration de Netplan pour une attribution IP par un DHCP Windows Server
Si la configuration par défaut ne fonctionne pas alors que votre machine Ubuntu est soumise
au DHCP d’un serveur Windows, il est possible de lui ajouter une information « dhcp-
identifier » pour une meilleure compatibilité.
network:
version: 2
ethernets:
enp0s3:
dhcp4: yes
dhcp-identifier:mac
Pour appliquer les nouveaux paramétrages, vous devrez recharger vos configurations de
réseau Netplan.
Si vous voyez des erreurs , Essayez de déboguer pour enquêter sur le problème
h. Configurations complémentaires
1. Résolution de noms d'hôte
Le fichier /etc/host.conf indique comment les noms doivent être résolus (c'est à dire
comment passer d'une adresse IP à un nom, et inversement). Par exemple :
# D'abord traduire avec les serveurs DNS et ensuite avec /etc/hosts.
order bind,hosts
# Il existe des machines avec plusieurs adresses
multi on
# Vérifie l'usurpation d'adresse IP
nospoof on
2. Serveurs DNS
Le fichier /etc/resolv.conf contient les adresses IP des serveurs DNS. Par exemple :
nameserver 208.164.186.1
nameserver 208.164.186.2
search foo
3. Fichier hosts
Le fichier /etc/hosts contient une liste de résolutions de noms (adresses IP et noms de
machine). Par exemple:
192.168.105.2 serverestfbs
Cette ligne indique que serverestfbs correspond à l'adresse IP 192.168.105.2, qui sera
accessible par cet alias.
Le protocole NFS (Network file system ou système de fichiers en réseau) permet de partager
des fichiers entre des machines Unix, et donc Linux.
Université Sultan Moulay Slimane
Ecole Supérieure de Technologie
-Fkih -Ben Salah-
C'est un modèle client-serveur : une machine met à disposition (exporte) des répertoires de
son système de fichier local sur le réseau. Suivant les droits d'accès, les autres stations
(clients ou serveurs) du réseau peuvent monter ces répertoires, qui seront alors vus comme
des répertoires locaux. Un ordinateur peut être à la fois client et serveur NFS.
/etc/init.d/nfs-kernel-server reload
La commande reload ne coupe pas les transferts en cours si la nouvelle configuration permet
toujours leur accès au serveur. Vous pouvez donc la lancer plus ou moins à n'importe quel
moment.
Pour vérifier que l'export a bien eu lieu, taper sur le serveur NFS la commande :
showmount -e
Si l'export n'est pas effectif, il faut faire restart du service NFS mais attention cela peut
interrompre les transferts en cours :
showmount -e serveur.local
Université Sultan Moulay Slimane
Ecole Supérieure de Technologie
-Fkih -Ben Salah-
Pour accéder à un NFS, il faut le "monter". il s'agit de dire au service qui s'occupe des
disques durs (au niveau des machines clientes) que ce serveur NFS est comme un disque dur.
Pour monter un système de fichier distant, utiliser la commande mount avec l'option nfs :
Par exemple :
d. Connexion au démarrage
Il est possible de connecter les répertoires partagés au démarrage de la station.
Le plus simple est de renseigner le fichier /etc/fstab qui contient une liste des systèmes de
fichiers connus.
→ Modifier /etc/fstab
1. Il faut tout d'abord créer un dossier dans lequel le NFS viendra se loger. Ouvrez donc un
terminal sur vos clients puis tapez :
Explorer Un site web peut fournir tout type de contenu (des fichiers textes, HTML, Flash, zip…).
Ce contenu peut être statique (le serveur transmet un fichier au navigateur) ou dynamique (le
contenu est généré par un programme exécuté par le serveur). Les sites web contiennent
généralement plusieurs types de documents, certains étant statiques et d'autres dynamiques.
a. Installation
Assurez-vous que votre système est à jour et corrigé. Pour ce faire, tapez la
commande apt suivante :
Note : Pour démarrer, arrêter, redémarrer, puis retrouver l'état du service apache, utilisez les
commandes suivantes. Sudo systemctl [start/stop/restart/reload/status] apache2.service
Avant de tester Apache, il est nécessaire de modifier les paramètres du pare-feu pour
permettre à l'extérieur d'accéder aux ports web par défaut, vous devriez avoir un pare-feu
UFW configuré pour restreindre l'accès à votre serveur.
Lors de l'installation, Apache s'enregistre auprès de l'UFW pour fournir quelques profils
d'application qui peuvent être utilisés pour activer ou désactiver l'accès à Apache à travers le
pare-feu.
Université Sultan Moulay Slimane
Ecole Supérieure de Technologie
-Fkih -Ben Salah-
- Taper la commande sudo ufw [enable, disable, status] pour activer, désactiver et voir l’etat
du par-feau
▪ Apache : ce profil n'ouvre que le port 80 (trafic web normal, non crypté).
▪ Apache Full : ce profil ouvre à la fois le port 80 (trafic web normal, non crypté) et le
port 443 (trafic crypté TLS/SSL).
▪ Apache Secure : ce profil n'ouvre que le port 443 (trafic crypté TLS/SSL).
Activer le profil le plus restrictif qui autorisera tout de même le trafic que vous avez configuré.
Comme nous n'avons pas encore configuré le SSL pour notre serveur dans ce guide, nous
devrons seulement autoriser le trafic sur le port 80 :
Comme l'indique la sortie, le profil a été activé pour permettre l'accès au serveur web
Apache.
b. Tests
Après avoir vérifier que le serveur web apache est bien démarré (sudo systemctl status
apache2). Essayer accéder à la page d'accueil par défaut d'Apache pour confirmer que le
logiciel fonctionne correctement grâce à votre adresse IP : Si vous ne connaissez pas l'adresse
IP de votre serveur, vous pouvez l'obtenir de plusieurs façons différentes à partir de la ligne
de commande.
Exécutez l'une des commandes suivantes :
// Adresse local
Hostname -I
ip a
ip a s enp0s3
Note: Utiliser l'outil Icanhazip, qui devrait vous donner votre adresse IP publique telle qu'elle est lue
depuis un autre endroit sur Internet, constitue une autre option :
//adresse publique
curl -4 icanhazip.com
Une fois que vous avez l'adresse IP de votre serveur, saisissez-la dans la barre d'adresse de
votre navigateur : http://adresse_ip_serveur
Vous devriez voir la page web par défaut d'Apache Ubuntu 20.04 :
Université Sultan Moulay Slimane
Ecole Supérieure de Technologie
-Fkih -Ben Salah-
Pour tester directement sur le serveur, il faut installer lynx, un navigateur en mode console :
$ lynx http://127.0.0.1/
Ou
c. Configuration de base
Université Sultan Moulay Slimane
Ecole Supérieure de Technologie
-Fkih -Ben Salah-
L’ensemble de ces fichiers définissent une configuration par défaut qui rend le serveur HTTP
Apache fonctionnel dès le départ.
Port d’écoute du serveur
Ce fichier décrit en outre un hôte virtuel par défaut qui sera employé si aucun hôte virtuel
correspondant n’existe.
Lorsque vous utilisez le serveur web Apache, vous pouvez utiliser des hôtes virtuels pour
encapsuler les détails de la configuration et héberger plusieurs domaines à partir d'un seul
serveur.
Apache sur Ubuntu 20.04 a un bloc serveur activé par défaut qui est configuré pour servir des
documents à partir du répertoire /var/www/html. Même si cela fonctionne bien pour un seul
site, cela peut devenir ingérable si vous hébergez plusieurs sites. Au lieu de
modifier /var/www/html, créons une structure de répertoire au sein de /var/www pour
un your_domain (estfbs), en laissant /var/www/html en place comme répertoire par défaut
qui sera utilisé si une demande du client ne correspond à aucun autre site.
Les autorisations de la racine de votre site Internet devraient être correctes si vous n'avez pas
modifié votre valeur umask, qui définit les autorisations de fichier par défaut. Pour vous assurer
que vos autorisations sont correctes et permettre au propriétaire de lire, écrire et exécuter les
fichiers tout en accordant uniquement des autorisations de lecture et d'exécution aux groupes
et aux autres, vous pouvez saisir la commande suivante :
Ensuite, créez une page index.html à l'aide de nano ou de votre éditeur favori :
/var/www/estfbs /index.html
<html>
<head>
<title>Welcome to ESTFBS!</title>
</head>
<body>
<h1>Success! The your_domain virtual host is working!</h1>
<div><h2>Bienvenue Ecole Supérieure de Technologie Fkih Ben Salah</h2><br> En
construction…</div>
</body>
</html>
Pour qu'Apache puisse servir ce contenu, il est nécessaire de créer un fichier d'hôte virtuel
avec les directives correctes. Au lieu de modifier directement le fichier de configuration par
défaut situé dans /etc/apache2/sites-available/000-default.conf, créons-en un
nouveau dans /etc/apache2/sites-available/estfbs.conf :
/etc/apache2/sites-available/your_domain.conf
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName estfbs
ServerAlias www.estfbs
DocumentRoot /var/www/estfbs
ErrorLog ${APACHE_LOG_DIR}/error.log
Université Sultan Moulay Slimane
Ecole Supérieure de Technologie
-Fkih -Ben Salah-
Notez que nous avons mis à jour le DocumentRoot dans notre nouveau répertoire et
le ServerAdmin dans un e-mail auquel l'administrateur du site estfbs peut accéder.
Nous avons également ajouté deux directives : ServerName, qui établit le domaine de
base qui doit correspondre à cette définition d'hôte virtuel, et ServerAlias, qui
définit d'autres noms qui doivent correspondre comme s'ils étaient le nom de base.
Syntax OK
→ Si votre serveur DNS n’est pas fonctionnel, on assure alors la résolution de noms (ici en local sur le
serveur) :
127.0.0.1 localhost
…..
Université Sultan Moulay Slimane
Ecole Supérieure de Technologie
-Fkih -Ben Salah-
Youradresslocal estfbs
$ lynx http://estfbs
!! En cas d’erreur 403 (Forbidden), il vous faut évidemment vérifier tout d’abord les droits d’accès
(XX5 pour les répertoires et XX4 pour les fichiers). En cas de présence d’une directive Directory sur
/srv dans /etc/apache2/apache2.conf pour une version 2.4.6-2 d’Apache, il vous faut appliquer la
règle : Require all granted au lieu de Require all denied.
...
<Directory /srv/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
…
$ cat /etc/apache2/apache2.conf
...
<Directory /var/www>
Options Indexes FollowSymLinks
Université Sultan Moulay Slimane
Ecole Supérieure de Technologie
-Fkih -Ben Salah-
AllowOverride None
Require all granted
</Directory>
…
La directive Options contrôle les fonctionnalités spécifiques du serveur qui sont disponibles dans un
répertoire particulier. Elle est suivie d’une liste d’options à activer. L’option None désactive toutes les
options. Inversement, l’option All les active toutes sauf MultiViews.
— FollowSymlinks indique au serveur qu’il doit suivre les liens symboliques et donc effectuer la
requête sur le fichier réel qui en est la cible.
— Includes active les inclusions côté serveur SSI (Server Side Includes). Il s’agit de directives
directement intégrées dans les pages HTML et exécutées à la volée à chaque requête.
— Indexes autorise le serveur à retourner le contenu du dossier si la requête HTTP pointe sur un
répertoire dépourvu de fichier d’index (tous les fichiers de la directive DirectoryIndex ayant été
tentés en vain).
La directive AllowOverride définit si des Options peuvent être annulées par les instructions présente
dans un fichier .htaccess. Par défaut, aussi bien le répertoire racine que le répertoire DocumentRoot
sont paramétrés pour ne permettre aucune annulation via .htaccess.
La directive DirectoryIndex précise la liste des fichiers à essayer pour répondre à une requête sur un
répertoire (une URL se terminant par /). Le premier fichier existant est appelé pour générer la
réponse.
S’il ne trouve aucun des fichiers et que Options Indexes est paramétrée pour ce répertoire, le serveur
génère et renvoie une liste au format HTML, des sous-répertoires et fichiers contenus dans le
répertoire (à moins que la fonctionnalité de listage des répertoires ne soit desactivée).
Les directives Allow from (autoriser en provenance de) et Deny from (refuser en provenance de), qui
s’appliquent à un répertoire et à toute l’arborescence qui en est issue, paramètrent les restrictions
d’accès.
La directive Order contrôle simplement l’ordre dans lequel les directives Allow et Deny sont
analysées.
La directive Allow spécifie le client pouvant accéder à un répertoire donné. Le client peut être all, un
nom de domaine, une adresse IP, une adresse IP partielle, une paire réseau/masque réseau, etc.
Université Sultan Moulay Slimane
Ecole Supérieure de Technologie
-Fkih -Ben Salah-
La directive Deny fonctionne selon le même principe que Allow, sauf que cette fois-ci, l’accès est
refusé à un client donné.
<Directory /var/www/lib>
Order Deny,Allow
Deny from All
</Directory>
Le protocole DHCP est très souvent mis en oeuvre par les administrateurs de parc de stations car il
offre l'énorme avantage de centraliser la configuration des stations sur une unique machine : le
serveur DHCP. Le principal danger de DHCP est qu'en cas de panne du serveur DHCP, plus aucune
station n'accède au réseau.
• attribuer une configuration fixe à certains postes (on les reconnaît grâce à leur adresse MAC)
On peut par exemple donner une adresse IP fixe à certains serveurs, et attribuer des adresses
variables aux autres postes. Le protocole est prévu pour qu'un poste qui revient sur le réseau
récupère la même adresse qu'il avait la première fois. Elle lui est réservée un certain temps (le lease
time).
a. Installation
Par défaut, le package du serveur DHCP est inclus dans le référentiel par défaut d'Ubuntu. Vous
pouvez l'installer avec la commande suivante :
Une fois l'installation terminée, démarrez le service DHCP et activez-le au redémarrage du système
avec la commande suivante :
b. Configuration
Fichier de configuration par défaut du serveur DHCP situé dans /etc/dhcp/dhcpd.conf.
Université Sultan Moulay Slimane
Ecole Supérieure de Technologie
-Fkih -Ben Salah-
Il possède des options globales, généralement placées au début, et des sections pour chaque hôte ou
réseau à configurer.
c. Interfaces
Par défaut, le serveur DHCP(Dynamic host configuration protocol) est lancé sur toutes les interfaces.
Dans ce cas il est impératif de configurer un réseau par interface dans dhcpd.conf.
Pour choisir les interfaces sur lesquels le serveur est lancé, il faut modifier /etc/default/isc-dhcp-
server en indiquant par exemple
INTERFACES="enp0s3 enp1s3"
Il est obligatoire d'avoir une section "subnet" (voir ci-dessous) pour le réseau de chaque interface.
d. Adresse dynamique
Pour configurer une plage d'adresses à attribuer dynamiquement aux adresses MAC inconnues, on
utilise une section subnet dans dhcpd.conf.
La section suivante attribuera par exemple des adresses comprises entre 192.168.1.101 et
192.168.1.199 :
e. Adresse fixe
Pour donne une adresse fixe à un poste, il faut connaître son adresse MAC et écrire une section host.
Par exemple la section suivante attribue l'adresse 192.168.0.47 au poste cobalt dont l'adresse MAC
est 00:13:d4:bd:b7:9a :
host cobalt {
Université Sultan Moulay Slimane
Ecole Supérieure de Technologie
-Fkih -Ben Salah-
f. Options
Le serveur DHCP peut fournir d'autres informations que l'adresse IP. Ces options peuvent être définies
de manière globale en les plaçant en dehors de toute section. Elles s'appliqueront alors à toutes les
sections qui ne les redéfinissent pas. Si elles sont placées dans une section particulière, elles ne
s'appliquent qu'à celle-ci.
L'option domain-name-servers permet par exemple d'indiquer au poste les adresses des serveurs DNS.
L'option routers indique la passerelle.
Toutes les options sont décrites dans la page de man. On peut également consulter cette
documentation sur internet.