UNIVERSITÉ ARABE DES SCIENCES (UAS)
École Supérieure d’Ingénierie et de Technologie – ESIET
Enseignant : Rami HILA
TP : Sécurisation des communications
Étude de Telnet/SSH et HTTP/HTTPS, avec mise en œuvre d’une autorité de certification
(CA) et conversion d’un site HTTP en HTTPS
Objectifs :
Partie 1 : Capturer et afficher le trafic HTTP avec Wireshark
Partie 2 : Capture et analyser une session Telnet avec Wireshark
Partie 3 : Convertir un site HTTP en HTTPS
Partie 4 : Capturer et afficher le trafic HTTPS avec Wireshark
Partie 5 : Capture et analyse une session SSH avec Wireshark
Ressources requises
• VM Ubuntu
• VM Kali Linux
Partie 1 : Capturer et afficher le trafic HTTP avec Wireshark
1- Démarrer Wireshark sur la machine virtuelle Kali.
2- Ouvrir Firefox et accéder à l’URL [Link]
3- Saisir un nom d’utilisateur et un mot de passe, puis valider la connexion.
4- Arrêter la capture dans Wireshark et effectuer l’analyse du trafic collecté.
• Identifier la requête HTTP contenant l’authentification (méthode GET ou POST)
et vérifier si les identifiants transitent en clair.
• Observer les adresses IP source/destination et les ports utilisés.
Partie 2 : Capture et analyser une session Telnet avec Wireshark
1- Démarrer Wireshark sur la machine virtuelle Kali.
2- Ouvrir un terminal sur la VM Kali.
3- Établir une connexion Telnet vers la machine cible : telnet <Ubuntu_IP>.
4- Saisir le nom d’utilisateur et le mot de passe lorsque demandé.
5- Arrêter la capture dans Wireshark et analyser le trafic collecté.
• Dans le champ Filter, saisir Telnet puis cliquer sur Apply
• Dans la section Packet list, sélectionner l’option Follow TCP Stream
• La fenetre Follow TCP stream affiche les données de votre session Telnet (Noter
que les caractères du nom d’utilisateur sont dupliqués)
Partie 3 : Convertir un site HTTP en HTTPS
Objectif
Passer de : [Link]
A [Link]
en sécurisant le trafic avec un certificat signé par ta propre CA locale.
Étape 1 : Préparer l’environnement
# apt install -y openssl apache2
Créons un dossier dédié :
#mkdir -p /etc/ssl/myCA
#cd /etc/ssl/myCA
#mkdir certs newcerts private
#chmod 700 private
#touch [Link]
#echo 1000 > seria
Étape 2 : Créer la clé privée et le certificat de la CA
#openssl genpkey -algorithm RSA -aes256 -out private/[Link] -pkeyopt
rsa_keygen_bits:4096
(Cette commande génère la clé privée de l’autorité de certification (CA).
C’est le fichier le plus important de toute la hiérarchie SSL.
#chmod 400 private/[Link]
Créer le certificat racine auto-signé (valable 10 ans) :
#openssl req -x509 -new -nodes -key private/[Link] -sha256 -days 3650 -out
certs/[Link]
C=TN / ST=Tunis / L=Tunis / O=UAS-ESIET / OU=SSI / CN=GI-SSI
#chmod 444 certs/[Link]
Étape 3 : Créer la clé privée et la CSR du serveur
Créer le fichier /etc/ssl/myCA/[Link] :
[ req ]
prompt = no
default_md = sha256
distinguished_name = dn
[ dn ]
C = TN
ST = Tunis
L = Tunis
O = UAS-ESIET
OU = Reseaux
CN = [Link]
Ensuite, génère la clé privée et la CSR :
# openssl genpkey -algorithm RSA -out private/[Link] -pkeyopt
rsa_keygen_bits:2048
# openssl req -new -key private/[Link] -out [Link] -config [Link]
Étape 4 : Signer le certificat serveur avec ta CA
Créer le fichier /etc/ssl/myCA/v3_ext.cnf
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, keyEncipherment
extendedKeyUsage = serverAuth
subjectAltName = @alt_names
[alt_names]
DNS.1 = [Link]
Signer le certificat :
# openssl x509 -req -in [Link] \
-CA certs/[Link] -CAkey private/[Link] -CAcreateserial \
-out certs/[Link] -days 825 -sha256 -extfile v3_ext.cnf
Enter pass phrase for private/[Link]
# chmod 444 certs/[Link]
Étape 5 : Déployer les fichiers SSL pour Apache
#mkdir -p /etc/ssl/mycerts Sert à regrouper tous les fichiers SSL (certificat
serveur, clé privée, certificat CA) pour Apache.
Copier les fichiers dans ce répertoire
#cp certs/[Link] /etc/ssl/mycerts/ certificat serveur signé par ta CA.
#cp private/[Link] /etc/ssl/mycerts/ clé privée du serveur.
#cp certs/[Link] /etc/ssl/mycerts/ certificat de ta CA locale (pour la chaîne
de confiance).
Définir les permissions :
#chmod 600 /etc/ssl/mycerts/[Link]
#chmod 644 /etc/ssl/mycerts/*.pem
Étape 6 : Configurer Apache pour HTTPS
Activer les modules nécessaires :
# a2enmod ssl
# a2enmod headers
Créer le fichier /etc/apache2/sites-available/[Link] :
# Activation conditionnelle SSL
<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ServerName [Link]
SSLEngine on
SSLCertificateFile /etc/ssl/mycerts/[Link]
SSLCertificateKeyFile /etc/ssl/mycerts/[Link]
SSLCertificateChainFile /etc/ssl/mycerts/[Link]
<Directory /var/www/html>
AllowOverride None
DirectoryIndex [Link]
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error_ssl.log
CustomLog ${APACHE_LOG_DIR}/access_ssl.log combined
</VirtualHost>
</IfModule>
Étape 7 : Activer le site et redémarrer Apache
# a2ensite [Link]
# systemctl restart apache2
# systemctl status apache2
Etape 8 : Tester dans le navigateur
Sur la machine cliente (Kali, par exemple) :
[Link]
Si une alerte de certificat non fiable s’affiche → c’est normal tant que la CA n’est pas
importée.