Projet Multisite
Objectif
Héberger les sites portfolios des étudiants sur un serveur en multisite
Critères de succès
- un serveur web opérationnel
- plusieurs noms de domaine
- plusieurs sites différents accessibles par chaque nom
- en https
I – Créer le nom de sous-domaine www :
- Se connecter à ns1 avec WinSCP
login:debian
mdp : k3BvtJwQmsUA
Ouvrir Putty
options > préférences > integration > application
- Aller dans le fichier avec la commande : sudo nano /etc/bind/zones/db.btsinfo.nc
- Créer un enregistrement de type A :
- 1ere colonne : nom de la machine (www)
- 2eme colonne : IN
- 3eme colonne : A
- 4eme colonne : adresse IP (139.99.134.195)
- Redémarrer le programme : sudo systemctl restart bind9
- Vérifier que le procédé fonctionne avec un cmd : nslookup www.btsinfo.nc ns1.btsinfo.nc
sudo
II – Installer le site web:
- Se connecter à ns2 avec WinSCP
Nom d’utilisateur : debian
Mot de passe : R7xgNc2N4pyR
Ouvrir Putty options > préférences > integration > application
- Inventer un mot de passe : chocolatcafelait
- sudo mysql -u root -p
- CREATE DATABASE stephenl_db;
- Création d’un compte user :
- GRANT ALL ON [nom de la base de données]_db.* TO ‘[wordpress]_user@’localhost’ IDENTIFIED BY ‘[password]’;
- FLUSH PRIVILEGES;
- exit;
- Installer WordPress
https://www.tecmint.com/install-wordpress-alongside-lamp-on-debian-10/
Aller dans le dossier ‘www’ :
- cd /var/www/
Créer un dossier stephenl dans /var/www :
- sudo mkdir stephenl
Dans ce dossier, on installe wordpress :
- sudo curl -O https://wordpress.org/latest.tar.gz
- sudo tar -xvf latest.tar.gz
- sudo rm latest.tar.gz
- Changer les permissions sur wordpress:
- sudo chown -R www-data:www-data /var/www/stephenl/wordpress
- sudo find /var/www/stephenl/wordpress/ -type d -exec chmod 750 {} \;
- sudo find /var/www/stephenl/wordpress/ -type f -exec chmod 640 {} \;
- Configurer apache pour wordpress:
- Dans /etc/apache2/sites-available/, créer stephenl.conf à partir du fichier nicolass.conf :
- sudo cp /etc/apache2/sites-available/stephenl.conf /etc/apache2/sites-available/eddyp.conf
- Et modifier dans ce fichier :
- sudo nano [nom du fichier]
ServerName stephenl.btsinfo.nc
DocumentRoot /var/www/eddyp/wordpress
- Activer le site :
- sudo a2ensite stephenl.conf
- stephenl.btsinfo.nc fonctionne !
III – Passage en HTTPS :
Activer HTTPS sur votre serveur Web
Créer un certificat du serveur
Installer le certificat sur www.btsinfo.nc
- login :
- mdp :
Installer la certification de certbot:
- sudo apt install python3-certbot-apache
Obtenir un certificat SSL
Tutoriel à suivre pour installer le certificat de sécurité Let’s Encrypt :
https://www.pragmaticlinux.com/2020/10/install-a-free-lets-encrypt-ssl-certificate-on-debian-10/
https://certbot.eff.org/lets-encrypt/debianbuster-apache
Définir :
-ServerName sur www.btsinfo.nc
–ServerAlias sur btsinfo.nc
dans le fichier 000-default.conf (chemin : /etc/apache2/sites-available)
Après modification, redémarrer apache2 :
- sudo systemctl restart apache2
Vérification :
- sudo systemctl status apache2
Succès :
- site accessible sur https://www.btsinfo.nc
- redirection du http vers https
IV – Multisite / Virtual hosts :
Cahier des charges :
Chaque étudiant de SISR dispose d’un site wordpress à son nom, en https, hébergé sur 139.99.134.195
Specs :
https://www.liquidweb.com/kb/configure-apache-virtual-hosts-ubuntu-18-04/
1) – DNS : créer les domaines de chaque étudiant :
Saisir un enregistrement par personne pour disposer d’un sous domaine sur ns1
- Se connecter à ns1.btsinfo.nc avec winscp et putty,
- login : debian
- Mot de passe : k3BvtJwQmsUA
- Modifier le fichier de la zone btsinfo.nc
- /etc/bind/zones/db.btsinfo.nc
- Convention de nommage :
- prénom + 1ère lettre du nom de famille
- Enregistements de type A vers 139.99.134.195
- Critère de succès :
2) – WordPress : créer les sites de chaque étudiant :
- créer un dossier par personne dans /var/www/ :
- dossier prénomN
- Créer une Base de données
- GRANT ALL ON stephenl_db.* TO ‘stephenl_user’@’localhost’ IDENTIFIED BY ‘stylopierreordinateur’;
Se connecter à MySQL donner un login et un mot de passe sur son propre site pour avoir un user à son nom :
- Installer wordpress dans un sous-dossier wordpress
- https://www.tecmint.com/install-wordpress-alongside-lamp-on-debian-10/
- Convention de nommage db :
“prénom + première lettre du nom”_db
- Paramétrer le virtualhost dans /etc/apache2
3) – HTTPS : installer un certificat let’s encrypt :
Installation d’un certificat de sécurité Let’s Encrypt pour se connecter en https :
https://www.pragmaticlinux.com/2020/10/install-a-free-lets-encrypt-ssl-certificate-on-debian-10/
- sudo certbot –apache
Sélectionner le site pour lequel vous voulez installer le certificat en entrant le numéro correspondant à l’adresse de votre site
Laisser un commentaire