Installation des 2 serveurs web sur les VM3 et VM4

Nous considérons que vous avez préparé 2 machines virtuelles avec les composants minimum requis. A savoir une distribution Linux Debian 11.
Quand vos 2 VMs sont prêtes, nous allons les configurer afin qu’elles :
– possèdent des adresses IP fixes et la configuration du masque de sous réseau et de la passerelle (gateway)
– aient toutes 2 un serveur Apache2 d’installé
– aient chacune une instance WordPress identique (nous utiliserons WordPress pour metre en place un site web rapidement).
– aient MariaDB d’installé pour piloter la base de données MySQL du site WordPress.

ATTENTION !
Assurez vous que vos VMs soient en mode “Bridge” (ou “pont” en français).

Rappel de l’architecture ci-dessous :

 

TP HAPROXY.drawio

1. Connexion à la VM3 (le 1er serveur web)

Une fois la VM3 prête, on se connecte directement dessus en utilisateur “root” pour vérifier son adresse IP qui sera en DHCP et que nous passerons en IP statique juste après. Nous suivront cette procédure pour toutes les VMs de cette infra.

puis on met le mot de passe

Debian GNU/Linux 11 haproxy1 tty1

haproxy1 login: root
Password: _

Fig. 2

Debian GNU/Linux 11 haproxy1 tty1

haproxy1 login: root
Password: 
Linux haproxy1 5.10.0-23-arm64 #1 SMP Debian 5.10.179-1 (2023-05-12) aarch64

The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extend permitted by applicable law.
root@haproxy1:~# _

 

On note l’adresse IP de la machine : 192.168.0.43 (4ème ligne en partant du bas de la Fig. au dessus. Il s’agit d’une adresse dynamique alouée via DHCP. Nous la configurerons en adresse IP fixe plus tard dans le tutorial.

Puis on va se connecter en SSH via un terminal que nous lançons sur notre machine locale 

Last login: Sun Jun  4 20:55:00 on ttys001
monidentifiant@MikeBook-Air ~ % ssh monlogin@192.168.0.43

On obtient ceci :

monidentifiant@MikeBook-Air ~ % ssh monidentifiant@192.168.0.43
The authenticity of host ‘192.168.0.43 (192.168.0.43)’ can’t be established.
ED25519 key fingerprint is SHA256:TutWHO/pGOvnEEE+kgBAJxFy7XjLzNMWgoX0lIH/xBY.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])?

On tape “yes”, on obtient ceci et on renseigne le mot de passe :

The authenticity of host ‘192.168.0.43 (192.168.0.43)’ can’t be established.
ED25519 key fingerprint is SHA256:TutWHO/pGOvnEEE+kgBAJxFy7XjLzNMWgoX0lIH/xBY.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added ‘192.168.0.43’ (ED25519) to the list of known hosts.
monidentifiant@192.168.0.43’s password: _

Configuration de l'adresse IP fixe de la machine

Une fois conecté en SSH à la machine, on se connecte en “root” pour pouvoir modifier la configuration de la machine. Nous indiquerons 3 variables indispensables : l’adresse IP fixe, le masque de sous réseau ainsi que la passerelle.
Nous effectuerons quelques tests pour nous assurer que notre VM est accessible via le reseau, accède et est accessible par les autres VMs. Et peut se connecter à Internet.

La commande su – permet de seconnecter en super utilisateur pour pouvoir modifier la configuration de la machine et installer les paquets (ou packages, en français les logiciels).
Tapez la commande ci-dessous.

monidentifiant@webserver1:~$ su –

Mot de passe : 

root@webserver1:~#

 

root@webserver1:~# vim /etc/network/interfaces

Le fichier s’ouvre dans VIM. Passez en mode insertion en tapant la touche “i”.
Repérez “dhcp” et le changez le par “static”. Notez également le nom de la carte réseau qui ici est “enp0s1”.

# This file describes the network interfaces available on your system

# and how to activate them. For more information, see interfaces(5).

 

source /etc/network/interfaces.d/*

 

# The loopback network interface

auto lo

iface lo inet loopback

 

# The primary network interface

allow-hotplug enp0s1

iface enp0s1 inet dhcp

 

# This is an autoconfigured IPv6 interface

iface enp0s1 inet6 auto

Le fichier s’ouvre dans VIM. Passez en mode insertion en tapant la touche “i”.
Repérer “dhcp” et le changez par “static”
Ensuite ajoutez les 3 lignes suivantes : 

 address 192.168.0.201 
 netmask 255.255.255.0
 gateway 192.168.0.1

 

 

 

Vous devriez avoir le fichier tel que ci-dessous.

# This file describes the network interfaces available on your system

# and how to activate them. For more information, see interfaces(5).

 

source /etc/network/interfaces.d/*

 

# The loopback network interface

auto lo

iface lo inet loopback

 

# The primary network interface

allow-hotplug enp0s1

iface enp0s1 inet static

 address 192.168.0.201

 netmask 255.255.255.0

 gateway 192.168.0.1

 

# This is an autoconfigured IPv6 interface

iface enp0s1 inet6 auto

Une fois le fichier modifié, tapez sur la touche Escape “esc” puis sur les touches :wq (w pour write, et q pour quit).

 

monidentifiant@webserver1:~$ su –

Mot de passe : 

root@webserver1:~#

 

root@webserver1:~# vim /etc/network/interfaces

root@webserver1:~# 

Une fois le fichier modifié, tapez sur la touche Escape “esc” puis sur les touches :wq (w pour write, et q pour quit). Afin d’appliquer les changement nous allons redémarrer la machine (plus rapide que désactiver et réactiver la carte réseau).
On tape la commande ci-dessous (reboot).

 

root@webserver1:~# reboot

La machine redémarre. On se reconnecte en SSH dès que la machine a redémarré et on vérifie la configuration réseau en effectuant les tests qui vont suivrent :
1 – on vérifie la nouvelle adresse IP fixe est bien configurée
2 – on “ping” depuis la VM sa machine locale (en l’occurence, mon IP locale est le 192.168.0.22).
3 – on vérifie que la VM puisse accéder à Internet (on va vérifier par exemple qu’on peut pinger le DNS 8.8.8.8 de Google ou le DNS 1.1.1.1 de CloudFlare)
4 – on “ping” un nom de domaine pour vérifier la résolution DNS. Par exemple google.com

Votre machine doit impérativement valider ces 4 tests avant depouvoir installer les packages nécessaires. En l’occurence Apache 2, Maria DB. L’installation de WordPress sera abordée dans le prochain chapitre.

1 – on vérifie que la nouvelle adresse IP fixe est bien configurée en lançant la commande “ip a”.

On voit ci-dessous que notre adresse IP pour notre VM3 est correctement configurée sur 192.168.0.201/24. En notation CIDR, le /24 indique que le masque de sous-réseau est 255.255.255.0.

Ici le réseau est sur 24 bits : 192.168.0.X,  et le “Host ID” sur 8 bits. Soit 254 adresses IP possibles. 
Pour tout savoir sur les adresses réseaux, consultez cette adresse : https://neptunet.fr/calcul-ip/

root@webserver1:~# ip a

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000

    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

    inet 127.0.0.1/8 scope host lo

       valid_lft forever preferred_lft forever

    inet6 ::1/128 scope host 

       valid_lft forever preferred_lft forever

2: enp0s1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000

    link/ether ce:5f:81:d1:82:92 brd ff:ff:ff:ff:ff:ff

    inet 192.168.0.201/24 brd 192.168.0.255 scope global enp0s1

       valid_lft forever preferred_lft forever

    inet6 fe80::cc5f:81ff:fed1:8292/64 scope link 

       valid_lft forever preferred_lft forever

root@webserver1:~# 

 

Si votre test est KO, ouvrez à nouveau votre fichier de configuration de carte réseau et vérifier bien que tous vos paramètres soient correctement renseignés (les 3 variables IP fixe, passerelle et gateway)

2 – on “ping” depuis la VM3 webserver1 sa machine locale (en l’occurence, mon IP locale est le 192.168.0.22).

root@webserver1:~# ping 192.168.0.22

64 bytes from 192.168.0.22: icmp_seq=1 ttl=64 time=0.337 ms

64 bytes from 192.168.0.22: icmp_seq=2 ttl=64 time=1.06 ms

64 bytes from 192.168.0.22: icmp_seq=3 ttl=64 time=1.25 ms

64 bytes from 192.168.0.22: icmp_seq=4 ttl=64 time=0.739 ms

— 192.168.0.22 ping statistics —

4 packets transmitted, 4 received, 0% packet loss, time 3021ms

rtt min/avg/max/mdev = 0.337/0.846/1.245/0.345 ms

 

3 – on vérifier que la VM puisse accéder à Internet (on va vérifier par exemple qu’on peut pinger le DNS 8.8.8.8 de Google ou le DNS 1.1.1.1 de CloudFlare)

root@webserver1:~# ping 8.8.8.8

PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.

64 bytes from 8.8.8.8: icmp_seq=1 ttl=115 time=96.1 ms

64 bytes from 8.8.8.8: icmp_seq=2 ttl=115 time=114 ms

64 bytes from 8.8.8.8: icmp_seq=3 ttl=115 time=24.3 ms

64 bytes from 8.8.8.8: icmp_seq=4 ttl=115 time=23.4 ms

— 8.8.8.8 ping statistics —

4 packets transmitted, 4 received, 0% packet loss, time 3013ms

rtt min/avg/max/mdev = 23.423/64.355/113.622/40.985 ms

root@webserver1:~# 

 

4 – on “ping” un nom de domaine pour vérifier la résolution DNS. Par exemple google.com

root@webserver1:~# ping google.com

PING google.com (142.250.75.238) 56(84) bytes of data.

64 bytes from par10s41-in-f14.1e100.net (142.250.75.238): icmp_seq=1 ttl=115 time=17.2 ms

64 bytes from par10s41-in-f14.1e100.net (142.250.75.238): icmp_seq=2 ttl=115 time=26.2 ms

64 bytes from par10s41-in-f14.1e100.net (142.250.75.238): icmp_seq=3 ttl=115 time=24.0 ms

64 bytes from par10s41-in-f14.1e100.net (142.250.75.238): icmp_seq=4 ttl=115 time=17.0 ms

— google.com ping statistics —

4 packets transmitted, 4 received, 0% packet loss, time 3010ms

rtt min/avg/max/mdev = 17.010/21.097/26.182/4.054 ms

root@webserver1:~# 

 

Si tous les tests sont OK, alors, votre VM3 est presque prête. 

Passons à l’installation des packages Apache2