L'objectif du TP est de configurer un site web en http pour qu'il soit accessible en https.
Nous supposons que les pages web sont stockées dans le répertoire WWW.
L'objectif du TP est de configurer un site web en http pour qu'il soit accessible en https. L'objectif n'étant pas le designde page web, nous supposons que les pages sont stockées dans le répertoire ``/var/www/html/index.html``.
Nous utilisons [git](https://fr.wikipedia.org/wiki/Git) et [vagrant](https://www.vagrantup.com/) qui utilise [VirtualBox](https://www.virtualbox.org/).
Le répertoire créé contient un `README.md`, le script d'installation de la machine `provision.sh` et le sujet du TP (`TP-https.m`).
Le répertoire créé contient un `README.md`, le fichier de configuration `Vagrantfile`,le script d'installation de la machine `provision.sh` et le sujet du TP (`TP-https.md`).
Le fichier `Vagrantfile` contient les éléements de configuration, en partilculier les ports utilisés, le fichier de configuration ici `provision.sh`. L'image de la machine virtuelle `mazenovi/debian` est stockée sur le site d'[hasicorp.com](https://www.hashicorp.com/atlas.html)
@@ -42,32 +55,52 @@ Pour se connecter sur la machine virtuelle
```bash
vagrant ssh
```
La commande suivante permet d'exectuer le script `provision.sh`. L'objectif du TP est donc de créer pas à pas votre script qui permet de configurer un site en https.
```bash
vagrant provision
```
Pour détruire la machine virtuelle (au prochain `vagrant up` il faudra recharger l'image de la machine ce qui peut prendre un temps certain en fonction de la vitesse de votre connexion)
```bash
vagrant destroy
```
#### Vérification que la machine foncitonne
Ouvrir dans un navigateur la page http://0.0.0.0
### Installation du serveur Apache2 et opensssl
La première ligne du script `provison.sh` doit contenir la commande suivnate de mise à jour des packets.
Afin d'installer Apache2 nous rajoutons la commande suivante, où le `y` permet de toujours répondre `yes` à la question de configuration d'apache.
```bash
sudo apt-get -y install apache2
```
#### Vérification que la machine fonctione
## How can you reexecute provioning script on it?
Pour cela il faut ouvrir dans un navigateur la page `http://0.0.0.0:8080` car le port 8080 a été défini dans la configuration du fichier `Vagrantfile`. Il s'agit de la page intitulée "Apache2 Debian Default Page".
En changeant le fichier `/var/www/html/index.html` vous pouvez vérifier que cela fonctione, en le remplaçant par
```bash
vagrant provision
<html>
It works!
</html>
```
* You can provision with provision.sh script
# Installation d'openssl
Ajouter la ligne de commande suivante à votre script afin d'installe `openssl`.