1. Configuration du DNS pour le serveur WEB
Page de configuration de bind :
Installer à l’aide de la commande bind :
# apt-get install bind9
Nous avons ensuite installé les outils DNS avec la commande suivante
# apt-get install dsniff
Fichier dans lequel déclarer les zones gérées par le serveur :
# nano /etc/bind/ named.conf.local

Fichier pour la configuration des zones non inversée
# nano /etc/bind/ db.adrienjb.loc

Fichier pour la configuration des zones des zones inversée :
# nano /etc/bind/ db.0.10.in-addr.arpa

Ficher qui montre les zones par défaut :
# nano /etc/bind/ named.conf.default-zones

Taper la commande suivante pour tester les zones
# nano /etc/bind/named-checkzone
Mise en place du forwarder avec la commande :
# nano /etc/bind/named.conf.options

2.Configuration du serveur FTP
Pour commencer la configuration du serveur FTP nous avons installé « porftpd » avec la commande suivante :
# apt-get install proftpd

On utilise « apt-get » pour télécharger et installer le programme Proftpd, lors de l’installation une page se lancera pour nous demander quelle configuration des paquets choisir pour proftpd
Nous avons choisi la configuration « indépendamment » pour que le serveur soit plus réactif.
Par la suite nous avons créé un utilisateur « adrienjb » dans /home avec la commande pour nous connecter à filezilla avec cet utilisateur
# useradd adrienjb
Nous lui avons mis comme mot de passe « toto »
Après cela nous avons mis les droits au dossier important à l’aide de la commande :
# chomd 777 /var/www
Changer le propriétaire du groupe pour que le nouveau propriétaire soit « adrienjb » à l’aide de la commande :
# chown -R adrienjb /var/www
Puis nous sommes allé sur Filezilla pour mettre tous les dossiers de notre site dans le chemins « /var/www/public_html» .
3. Configuration du serveur apache2
Nous allons commencer la configuration de notre serveur WEB mais avant ça nous allons faire un la commande :
# apt-get update
Pour rechercher les mises à jour
Nous allons faire la commande suivante par la suite pour appliquer les mises à jour
# apt-get upgrade
Nous avons installé par la suite les paquets « apache » à l’aide de la commande :
# apt-get install apache2
Une fois l’installation finit pour voir si le serveur apache est bien installé il faut vérifier quels IP nous possédons en tapant « IP a » sur l’invite de commande puis la récupérer et l’insérer sur le navigateur internet par défaut.

3.1Serveur PHP :
Nous avons installé un serveur php avec la commande :
# apt-get install php7.0
Pour tester notre serveur PHP faudra se diriger dans le dossier WEB pour s’y rendre il faut rentrer dans le dossier « /var/www/html » une fois à l’intérieur nous avons listé les dossiers avec la commande « LS » il y aura un fichier nommer « index.html »
Nous avons remplacé « index.html » en « index.php » à l’aide de la commande :
# mv index.html index.php
Nous avons ensuite installé les paquets pour MySQL à l’aide de la commande :
# apt-get install php-msql
4. OPEN SSL
Pour démarrer la configurée de « openssl » nous avons commencé par les commandes suivantes pour les mises à jour etc..
# apt-get update
4.1. Activer le module SSL
#apt-get upgrade openssl
Dans cette section, nous activerons SSL sur notre Serveur
# a2enmod ssl
À la suite de cette commande nous avons redémarré Apache pour appliquer ces modifications avec la commande suivante :
# service apache2 restart
4.2. Créer un certificat SSL autosigné
Nous avons commencé par créer un nouveau répertoire dans lequel nous pouvons stocker la clé privée et le certificat
# mkdir /etc/apache2/ssl
Ensuite nous demandons un nouveau certificat, pour faire cette étape nous allons générer un nouveau certificat et une clé privée pour le protéger à l’aide de la commande suivante :
# sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/ssl/apache.key -out /etc/apache2/ssl/apache.crt

A la suite de cette commande nous avons spécifié l’adresse IP de notre serveur et les autres champs demandés après avoir inscrit cette commande dans l’invite de commande
Pour protéger notre certificat et notre clé privée nous avons défini les autorisations du fichier à l’aide de la commande suivante (lecture et écriture) :
# chmod 600 /etc/apache2/ssl
4.3. Configuration Apache pour utiliser SSL
Ouverture du fichier de configuration du serveur en utilisant « nano »
# nano /etc/apache2/sites-enabled/default-ssl.conf

Il nous a fallu rechercher la section qui commence par <VirtualHost_default_ :443> pour apporter les modifications suivantes :
Puis nous avons mis les chemins d’accès a jour pour qu’ils correspondent aux emplacements du certificat et de la clé générés précédemment

Une fois la manipulation finalisée nous avons vérifié que les fichiers de configuration d’hôte virtuel correspondent bien :
À la fin des manipulations nous avons redémarré Apache pour appliquer les modifications
# service apache2 restart
4.4. Test Apache avec SSL
Nous avons ouvert une connexion via le port HTTPS (443)
# openssl s_client -connect 10.0.120.120:443
À la fin de cette commande le certificat avec OPENSSL est terminé nous pouvons accéder à notre site en utilisant HTTPS devant l’url (https://adrienjb.loc) ce qui prouve qu’il est bien sécurisé avec OPENSSL.
4.5 Virthualhost


5. TLS pour serveur FTP sécurisé
Dans les fichiers de configuration :
# /etc/proftpd/proftpd.conf
Il nous a fallu décommenter les lignes « incluse /etc/proftpd/tls.conf » pour que l’on utilise ce chemin la

Nous allons maintenant ouvrir le fichier suivant :
# nano /etc/proftpd/tls.conf
Pour décommenter les lignes :


Nous avons aussi décommentée les deux lignes suivantes permettant de charger les certificats pour ensuite les créer dans les répertoires définis.

Pour la création de la clé il nous a fallu taper la commande suivante :
# openssl genrsa -out /etc/ssl/private/proftpd.key 1024
Pour la création de la du certificat il nous a fallu taper la commande suivante et renseigner les éléments demandés pour configurer notre certificat :
# openssl req -new -x509 -days 3650 -key/etc/ssl/private/proftpd.key -out /etc/ssl/certs/proftpd.crt
A la suite de cela nous avons redémarré le serveur FTP à l’aide de la commande :
# service proftpd restart
A la fin de ces manipulations le serveur FTP est sécurisé
6. Pare-Feu
6.1. Scan des ports
Nous avons commencé le TP par le scan des ports en installant « nmap » avec la commande suivante :
# apt-get install nmap
Puis nous avons effectué le scan avec la commande :
# nm p –v 10.0.120.120
6.2. Déclaration des règles
Nous allons configurer le pare-feu via le logiciel « iptables », pour ce faire nous allons l’installer à l’aide de la commande suivante :
# apt-get install iptables
6.3. La démarche à faire pour créer les règles
Nous allons commencer le script à l’aide de la commande suivante :
# nano /etc/firewall_mesregles.sh



Puis nous allons noter nos règles dans ce fichier :
6.4. Démarrage du firewall :
Nous allons démarrer le firewall :
Pour autoriser l’exécution du script :
# chmod +x /etc/firewall_mesregles.sh
On va se déplacer dans le dossier :
# cd /etc/
Puis on va lancer le script :
# ./firewall_mesregles.sh
On vérifie les nouvelles règles ajoutées :
# iptables –L –v

On va par la suite sauvegarder les règles en mémoire de iptables dans un autre fichier qui sera le suivant dans notre cas :
# iptables-save > /etc/firewall_mesregles.sh.save
Puis on va regarder le résultat à l’aide de la commande suivante :
# nano /etc/firewall_mesregles.sh.save


Et on ajoute à la règle dans le fichier « /etc/network/interfaces » la commande :
# post-up iptables-restore < /etc/firewall_mesregles.sh.save

Et pour finir on va reboot la machine et refaire la commande « iptables –L –v » pour vérifier si la configuration du script reste après un reboot
7.Regle prédéfini du pare-feu
Installation des paquets pour les règles à l’aide de la commande suivante :
# apt-get install fail2ban
Configuration des règles prédéfinies avec la commande :
# nano /etc/fail2ban/jail.conf
(Chercher destemail et rentrer un e-mail)
8. Antirootkit
L’antirootkit permet d’éviter un type de malware qui a été conçu pour infecter un PC et qui permet au pirate d’installer une série d’outils qui lui permettent d’accéder à distance à un ordinateur.
Installation des paquets pour l’antirootkit à l’aide de la commande suivante :
#apt-get install rkhunter
Chemin d’accès pour la configuration de l’antirootkit :
#nano /etc/default/rkhunter
Installation des paquets pour le scan des ports :
#apt-get install portsentry
Chemin d’accès pour la configuration :
#nano /etc/portsentry/portsentry.conf
Commande pour démarrer les logiciels tcp et udp:
#portsentry –audp
#portsentry –atcp
9.Logwatch
Logwatch est un utilitaire qui simplifie le travail des logs.
#apt-get install logwatch
# nano /usr/share/logwatch/default.conf/logwatch.conf

10.Configuration divers
Ceci est la configuration de notre machine virtuelle ou se trouve notre serveur WEB, DNS, …