Licence Sciences et Technique : Génie Informatique
Administration Système et Sécurité Réseau
TP5
Objectifs :
• Installer et configurer un serveur FTP en utilisant vsFTPd
• Installer et configurer SAMBA
• Mise en place du NFS
• Installer un serveur Web NgINX
• Ajouter la base de données MariaDB
• Ajouter l’interpréteur PHP
Prérequis :
• 1 VM avec le nom srv_ubuntu avec l’OS ubuntu 24.04
• 1 VM avec le nom client_ubuntu avec l’OS ubuntu 24.04
• Les deux machines sous mode bridged
Remarque : Faire des Snapshots pour sauvegarder l’état de votre VM.
Partie 1 : vsFTPd
1. Commencer par mettre à jour les deux machines Serveur et client
sudo apt update
sudo apt upgrade
2. Connectez-vous à la machine srv_ubuntu en utilisant le client Putty
3. Vérifier la connexion internet ping [Link]
4. Sur la machine srv_ubuntu, Vérifier que vsFTPd n’est pas installé
dpkg -l | grep vsFTPd
Pr. MIHI Soukaina 2025-2026
Licence Sciences et Technique : Génie Informatique
Administration Système et Sécurité Réseau
5. Installer vsFTPd sur la VM srv_ubuntu puis vérifier l’emplacement du fichier de configuration
sudo apt install vsftpd
6. Faire une copie du fichier de configuration
7. Ouvrir le fichier [Link] avec votre éditeur préféré
sudo nano /etc/[Link]
Dans ce fichier, mettre la configuration suivante :
Anonymous_enable = NO (désactiver l’accès aux utilisateurs anonymes)
• Dé commenter les lignes suivantes :
Ascii_upload_enable=YES
Ascii_download_enable=YES
Write_enable=YES (pour permettre l’accès en écriture)
Pr. MIHI Soukaina 2025-2026
Licence Sciences et Technique : Génie Informatique
Administration Système et Sécurité Réseau
//Restreindre les utilisateurs à leurs dossiers personnels
//Chroot_local_users=YES
//
Ftpd_banner=Welcome to UNIXMEN FTP Service (vous pouvez personnaliser le
message Welcome, mettre par exemple « Welcome to GI service)
• Ajouter à la fin du fichier :
Use_localtime=YES
Enregistrer et quitter l’éditeur
8. Démarrer et activer le service vsftpd
Sudo systemctl start vsftpd
Sudo systemctl enable vsftpd
Vérifier que vsftpd est activé et démarré
Systemctl vsftpd –-no-pager -l
9. Sur la VM client faire
Sudo apt install ftp
10. Sur le dossier personnel de l’utilisateur normal (créer un utilisateur normal sinon),
créer un fichier [Link]
Pr. MIHI Soukaina 2025-2026
Licence Sciences et Technique : Génie Informatique
Administration Système et Sécurité Réseau
touch [Link] sur /home/user
11. Récupérer l’adresse ip de votre VM srv_ubuntu et à partir du terminal de la VM client
entrer
ftp IP_ADRESS
Entrer votre nom d’utilisateur et mot de passe.
Vous êtes à présent connecté à votre serveur FTP
12. Entrer bi et hash
Bi sert à passer au mode binaire
Tandis que hash vous permettra d’afficher un hash « # » pour chaque bloc de
données transféré avec succès
13. Pour transférer le fichier [Link], entrer
put [Link]
Pr. MIHI Soukaina 2025-2026
Licence Sciences et Technique : Génie Informatique
Administration Système et Sécurité Réseau
14. Sur votre VM srv_ubuntu, vérifier que vous avez bien le fichier ajouté
15. Ajouter du contenu à votre fichier [Link] toujours sur srv_ubuntu
16. Vérifier que le contenu a été ajouté sur le client en entrant la commande sur l’invite
de commande FTP :
get [Link]
17. Tester la connexion à partir de votre machine physique Windows en installant filezilla
ou WinSCP
Entrer l’adresse IP du serveur, username et mot de passe
Pr. MIHI Soukaina 2025-2026
Licence Sciences et Technique : Génie Informatique
Administration Système et Sécurité Réseau
18. Dans le fichier /etc/[Link], rajouter les lignes de configuration pour le mode
passif. Ces deux lignes précisent l’intervalle de port que peut utiliser FTP pour le canal
de données.
pasv_min_port=30000
pasv_max_port=31000
puis redémarrer le serveur vsFTPd
sudo systemctl restart [Link]
Partie2: SAMBA
Sur la machine srv_ubuntu
1. Mettre à jour le système
Sudo apt update
Sudo apt upgrade
2. Installer le logiciel Samba
Sudo apt install –y samba
3. Vérifier l’installation de Samba
Dpkg –l | grep samba ou bien dpkg –get-selections | grep samba
4. La configuration de SAMBA se fait le fichier : /etc/samba/[Link]. Avant de configurer le
fichier il faut préparer le dossier de partage et l’utilisateur Samba.
Créer un dossier share_smb
Sudo mkdir /home/share_smb
5. Aller sur /etc/samba/[Link], ouvrir le fichier en vi pour le vider rapidement (dd pour
supprimer ligne par ligne)
Pr. MIHI Soukaina 2025-2026
Licence Sciences et Technique : Génie Informatique
Administration Système et Sécurité Réseau
Ajouter les lignes au fichier :
[global]
workgroup = WORKGROUP
netbios name = Ubuntu
security = user
map to guest = bad user
dns proxy = no
[Anonymous]
path = /home/share_smb
browsable = yes
writable = yes
guest ok = yes
guest only = yes
read only = no
L’explication des options est la suivante :
comment : Permet de renseigner une description de partage
create mask : paramètre indique les droits appliqués sur les fichier. En rajoutant un 0 devant.
directory mask : paramètre indique les droits appliqués sur les répertoires. En rajoutant un 0 devant.
path : Indique le chemin absolu du répertoire partager
browseable =yes : Rendre le répertoire visible par les clients, c'est à dire les autoriser à le voir.
public : Autoriser ou non les connexions sans mot de passe.
valid users = utilisateur1, utilisateur2, @groupe1, @groupe2 :Définir une liste d'utilisateurs autorisés
à accéder à ce repertoire vous pouvez des groupes en rajoutant le symbole @ devant le nom du
groupe.
read only et write list Il est possible de déclarer un partage : ▪ en lecture/écriture pour tous, ▪ en
lecture seule pour tous, ▪ en lecture seule pour certains utilisateurs et lecture/écriture pour d'autres
utilisateurs.
read only = No : Afin de rendre un partage accessible en lecture et en écriture pour tous.
read only = Yes : C'est le mode par défaut Pour distinguer les droits en fonction des utilisateurs. Le
principe est de déclarer le partage en lecture seule pour tous mais d'autoriser des exceptions :
read only = Yes write list = utilisateur1, utilisateur2, @groupe
Pr. MIHI Soukaina 2025-2026
Licence Sciences et Technique : Génie Informatique
Administration Système et Sécurité Réseau
6. Désactiver le firewall
#sudo ufw disable
7. Démarrer les services smb et nmb
#sudo systemctl start [Link]
#sudo systemctl start [Link]
8. Aller à votre machine windows
Sur le menu réseau, ajouter un lecteur réseau comme suit
Clic droit sur réseau
Puis ajouter lecteur réseau
Pr. MIHI Soukaina 2025-2026
Licence Sciences et Technique : Génie Informatique
Administration Système et Sécurité Réseau
Entrer \\IP_SRV\anonymous
Vous avez maintenant accès à votre fichier [Link]
Créer un fichier [Link] à partir de windows et tester son existence sur le srv_ubuntu
Vous pouvez aussi tester le partage à partir de votre terminal srv_ubuntu
Cette ligne de commande smb vous donne l’accès à plusieurs commandes :
Partie 3 NFS
1. Installation du NFS sur le serveur :
Normalement, sur les distributions Linux, les packages qui permettent de mettre en place un
partage via NFS sont déjà installés. Vous pouvez vérifier l’installation en utilisant l’outil dpkg
(dpkg –l | grep nfs-kernel-server) ou bien l’outil RPM sur Centos ( rpm –qa |grep nfs-kernel-
server)
NFS possède deux packages, coté serveur (nfs-kernel-server pour le coté serveur et nfs-
common pour le coté client). Sous Centos le package est nfs-utils.
Pr. MIHI Soukaina 2025-2026
Licence Sciences et Technique : Génie Informatique
Administration Système et Sécurité Réseau
• Sur la machine srv_ubuntu, installer le serveur NFS:
#sudo apt install nfs-kernel-server
• Sur la machine client_ubuntu, installer le client NFS :
#sudo apt install nfs-common
2. Activation des services:
Après l’installation, activer les services NFS, exécuter les commandes :
#systemctl enable rpcbind
#systemctl enable nfs-server
3. Dossier de partage :
Sur srv_ubuntu, votre répertoire home/user, créer un dossier share_nfs et attribuer les droits
RWX sur ce dossier (user est votre nom d’utilisateur).
# mkdir share_nfs
#chmod a+rwx /home/user/share_nfs
4. Configuration :
• Pour configurer le service NFS, vous devez savoir l’adresse IP du serveur et client. Entrer
ip a ou ifconfig
• Modifier le fichier /etc/exports en ajoutant le dossier de partage :
Cette ligne respecte la structure :
Nom_dossier IP_client(options)
Les options sont :
• rw : Lire et modifier
• sync : Les modifications sur le dossier sont immédiatement enregistrées sur le
disque
• no_root_squash : L’utilisateur root sur le client garde ses droits root sur le
serveur (sans cette option, l’utilisateur root n’aura pas les privilèges de root sur
le serveur).
Enregistrer et quitter l’éditeur de fichiers.
Pr. MIHI Soukaina 2025-2026
Licence Sciences et Technique : Génie Informatique
Administration Système et Sécurité Réseau
• Vérifier que les exports sont bien inclus sur /etc/exports en entrant la
commande (IP_SERVER est l’adresse IP de la VM srv_ubuntu sur laquelle vous avez
installé NFS) :
#exportfs –rav
#showmount –e IP_SERVER
5. Redémarrer le service NFS
6. Désactiver le firewall
Afin de rendre le partage possible, désactiver le firewall ufw
7. Configuration côté client :
• Lancer le service rpcbind sur le client
• Arrêter le firewall ufw
Pour accéder à un dossier de partage NFS, il faut le monter sur la machine client. Pour cela,
créer un dossier mnt_share sur /media
• Vérifier le dossier NFS mis pour le partage en exécutant cette commande sur le client :
Pr. MIHI Soukaina 2025-2026
Licence Sciences et Technique : Génie Informatique
Administration Système et Sécurité Réseau
[Link] étant l’adresse IP du SRV_UBUNTU
8. Monter le dossier de partage sur votre machine client
• [Link] : IP serveur
• /home/lstgi/share_nfs : Dossier à partager sur le serveur NFS
• /media/mnt_nfs : Dossier de montage sur le client
• Nfs : File system du NFS
• Defaults, nfserv=3 : Pour la version 3 du NFS qui permet l’authentification par IP (NFS4
ne permet pas l’authentification par IP).
• Auto, user : montage automatique pour l’utilisateur système.
Vous pouvez monter manuellement le dossier
Puis exécuter la commande pour mettre à jour les montages :
#mount –a
Votre partage est actuellement mis en place. Vous pouvez créer un fichier sur le dossier partagé sur
le serveur, mettre du contenu et vérifier son existence sur le client.
Partie 4 : Serveur Web NGINX
Pour faciliter l’installation du serveur NGINX, reverser l’état de la machine srv_ubuntu au
snapshot de la première installation.
Sur VMware, menu VM cliquer sur le snapshot manager=> revert to
Pr. MIHI Soukaina 2025-2026
Licence Sciences et Technique : Génie Informatique
Administration Système et Sécurité Réseau
1. Installation :
Sur la machine srv_ubuntu, installer le serveur NGINX :
2. Démarrer les services NGINX et vérifier son état
#sudo systemctl enable nginx
#sudo systemctl start nginx
#sudo systemctl status nginx
3. Désactiver le firewall
#sudo ufw disable
4. Configuration du serveur NGINX:
Le fichier de configuration est /etc/nginx/[Link]
Pour ne pas altérer le fichier initial, nous allons créer un nouveau fichier de configuration
et y mettre la configuration.
Pr. MIHI Soukaina 2025-2026
Licence Sciences et Technique : Génie Informatique
Administration Système et Sécurité Réseau
#sudo nano /etc/nginx/conf.d/[Link]
Et mettre la configuration suivante :
Server
{
listen 80;
server_name [Link];
root /var/www/mysite/html;
index [Link];
location /
{
try_files $uri $uri/ =404;
}
}
Le serveur écoute sur le port 80, mettre son adresse IP sur server_name. La racine du
site se trouve dans le dossier /var/www ou on va créer le dossier mysite/html.
La page d’accueil est [Link]
Si l’url n’est pas reconnue, le serveur affiche l’erreur 404 (Not found)
5. Créer le dossier du site Web
mkdir -p /var/www/mysite/html/
cd /var/www/mysite/html/
nano [Link]
Sur le fichier [Link] mettre la ligne suivante :
<h1> My first site with NGINX </h1>
6. Tester et redémarrer le serveur NGINX
Pr. MIHI Soukaina 2025-2026
Licence Sciences et Technique : Génie Informatique
Administration Système et Sécurité Réseau
nginx -t
systemctl restart nginx
[Link]
Partie 5 : Installer et configure le serveur DB : MariaDB
MariaDB Server est un système de gestion de base de données relationnelle open source.
C’est l’un des serveurs de bases de données les plus populaires au monde, avec des
utilisateurs notables comme Wikipedia, [Link] et Google. MariaDB Server est publié
sous licence open source GPLv2 ce qui apporte la garantie de rester open source.
1. Installer et démarrer MariaDB
#apt install mariadb-server mariadb-client -y
systemctl start mariadb
systemctl enable mariadb
systemctl status mariadb
Vous pouvez définir un mot de passe root pour sécuriser Mariadb en entrant :
Mysql_secure_database
Ensuite définir le mot de passe root.
Pr. MIHI Soukaina 2025-2026
Licence Sciences et Technique : Génie Informatique
Administration Système et Sécurité Réseau
2. Création de DB et utilisateur
Sudo mysql –u root –p
Ensuite sur le prompt mysql entrer
Create database my_db ;
Create user ‘lstgi’@’localhost’ identified by ‘123’;
Ensuite, rajouter les privileges:
grant all privileges on my_db.* to 'lstgi'@'localhost';
flush privileges;
show databases;
exit;
3. Manipulation des données sous MariaDB
Créer une table personnes et remplir cette table avec des données.
Sudo mysql –u root -p
Pr. MIHI Soukaina 2025-2026
Licence Sciences et Technique : Génie Informatique
Administration Système et Sécurité Réseau
USE my_db;
CREATE TABLE personnes ( id INT PRIMARY KEY AUTO_INCREMENT, nom VARCHAR(100),
profession VARCHAR(100) );
Ensuite, insérer des données
INSERT INTO personnes (nom, profession) VALUES ('Alice', 'Engineer'), ('Bob', 'Doctor'),
('Charlie', 'Teacher');
Afficher les données:
Partie 6 Rajouter PHP à notre installation
1. Installer php pour nginx
sudo apt install php-fpm -y
sudo systemctl restart nginx
2. Vérifier la version de php installée
php -v
Pr. MIHI Soukaina 2025-2026
Licence Sciences et Technique : Génie Informatique
Administration Système et Sécurité Réseau
3. Créer un fichier php dans notre dossier /var/www/mysite/html
echo "<? Hello World! php phpinfo(); ?>" | sudo tee /var/www/mysite/html/[Link]
4. Sur le fichier /etc/nginx/conf.d/[Link], rajouter la configuration de php-fpm :
location ~ \.php$ {
include snippets/[Link];
fastcgi_pass unix:/run/php/[Link]; # Véri>
fastcgi_param SCRIPT_FILENAME $document_root$fastc>
include fastcgi_params;
}
Personnaliser la version 8.3 selon la version installée sur votre serveur
Redémarrer php-fpm et nginx
#sudo systemctl restart php8.3-fpm
#sudo systemctl restart nginx
5. Afficher le site :
END !
Pr. MIHI Soukaina 2025-2026