Dans cette partie nous allons mettre en place 2 sites sur un server Apache.
Créer un fichier index.html
nano /var/www/vhosts/site1/index.html
:abc:
Créer un fichier d'hôte virtuel
nano /etc/apache2/sites-available/port_vhosts.conf
:abc:
Activer le nouveau fichier de l'hôte virtuel
Redémarrer le service Apache
:abc:
Tester les configurations en allant sur le domaine
http://192.168.64.133/
:abc:
Nous pouvons remarquer que les accents ne sont pas pris en compte donc nous allons corriger le problème d'encodage.
Vérifier les locales générées sur le système.
grep -v "^#" /etc/locale.gen
:abc:
Décommenter la ligne pour activer le paramètre AddDefaultCharset
nano /etc/apache2/conf-enabled/charset.conf
:abc:
Vérifier le résultat
Sur un navigateur Web :
:abc:
Lorsqu'on essaye de naviguer sur une adresse eronnée, nous constatons que des données sensible concernant le server sont visible.
Nous allons donc masquer les informations.
nano /etc/apache2/conf-enabled/security.conf
Sur un navigateur Web :
http://192.168.64.133/t
:abc:
Le protocole TLS permet à deux machines de communiquer de manière sécurisée. Les informations échangées entre les deux machines sont de ce fait pratiquement inviolables. Il doit assurer l'authentification du serveur grâce à un certificat. La confidentialité des données grâce au chiffrement et l’intégrité des données.
Un certificat permet de fournir diverses informations concernant l'identité de son détenteur (la personne qui publie les données). Ce certificat s'accompagne d'une clé publique qui est indispensable pour que la communication entre les machines soit chiffrée.
Activer le module SSL d’Apache, Activer le site «default-ssl» d’Apache
:abc:
Installez le paquet OpenSSL
:abc:
Générer le certificat
Modifier les permissions sur la clé
chmod 440 /etc/apache2/server.crt
:abc:
Configuration d’Apache
/etc/apache2/sites-available/default-ssl
Modifiez ces deux options si nécessaire afin d’indiquer le chemin vers les fichiers, Suite aux dernières vulnérabilités découvertes au sein du protocole SSL en 2014, il est recommandé également d'effectuer la configuration suivante dans Apache pour plus de sécurité :
activez le module SSL
:abc:
Désactiver le site HTTP
a2dissite default
Rediriger le HTTP vers HTTPS automatiquement, modifier le fichier suivant
nano /etc/apache2/sites-available/port_vhosts.conf
Dans le virtualhost, ajoutez la ligne suivante :
Redirect permanent / https://192.168.64.133/site1
:abc:
Redémarrer le service Apache2
service apache2 reload
:abc:
Vous pouvez remarquer que lorsque vous allez naviguer sur http://192.168.64.133, le site vous redirigera vers https://192.168.64.133/site1
Cliquer sur accéder à la page web
Créer un fichier .htaccess dans le répertoire /var/www/vhosts/site1/
nano /var/www/vhosts/site1/.htaccess
:abc:
Créer le fichier ".htpasswd"
htpasswd -c /var/www/site/.htpasswd nom_utilisateur
Consulter le fichier .htpasswd
cat /var/www/vhosts/site1/.htpasswd
:abc:
Modifier la configuration d'Apache
nano /etc/apache2/apache2.conf
:abc:
Rendre publique une sous-partie du site protégé
mkdir /var/www/vhosts/site1/open nano /var/www/vhosts/site1/open/.htaccess
:abc:
Lors de connexion sur https://192.168.64.133/site1
Lors de connexion sur https://192.168.64.133/site1/open
Modifier le fichier de configuration Apache
nano /etc/apache2/apache2.conf
:abc:
Activer le module CGI
:abc:
Nous allons maintenant créer une page index.py sur le site 2
nano /var/www/vhosts/site2/index.py
:abc:
:abc: Résultats :
Nous allons maintenant créer un formulaire
nano /var/www/vhosts/site2/formulaire.py
:abc:
:abc: Résultats :
Créer un fichier livredor.py
nano /var/www/vhosts/site2/livredor.py
:abc:
:abc: Résultats :
Créer un fichier compteur.py
nano /var/www/vhosts/site2/compteur.py
:abc:
:abc: Résultats :
1ère visite
50ème visite