Prérequis
Installation de nginx
Pour installer nginx, nous allons utiliser la commande:
dnf install nginx -y
Une fois que nous avons installé nginx, nous allons autoriser le http et https dans le firewall avec les commandes:
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --reload
On démarre maintenant nginx avec la commande:
systemctl start nginx
On va maintenant activer le démarrage automatisé de nginx lors de l’allumage de la machine avec la commande:
systemctl enable nginx
Nous avons désormais accès à la page par défaut
Nous allons maintenant créer une page web personnalisée
Tips: La localisation de la page est dans le répertoire var / www
On créé donc le répertoire www pour y ajouter notre site avec la commande:
mkdir /var/www/(nom_du_site)
On met les permissions pour que nginx puisse utiliser ce dossier
sudo chmod -R 755 /var/www/nomdusite
On créé nos fichier à l’aide de la commande:
touch index.html
On peut maintenant mettre le code u contenu de la page dans ce fichier.
Ensuite on créé un fichier de configuration avec la commande
touch /etc/nginx/conf.d/nomdusite.conf
On complète le fichier de confguration avec ceci:
server {
listen 80;
server_name nomdedomaine.com www.nomdedomaine.com ipdelamachine;
root /var/www/nomdusite;
index index.html;
location / {
try_files $uri $uri/ =404;
}
access_log /var/log/nginx/nomdusite.access.log;
error_log /var/log/nginx/nomdusite.error.log warn;
}
Une fois cela effectué, on doit paramétrer SELinux, on installe tout d’abord les dépendances nécessaires:
dnf install policycoreutils-python-utils -y
Puis on configure selon ces paramètres:
semanage fcontext -a -t httpd_sys_content_t "/var/www/nomdusite(/.*)?"
restorecon -Rv /var/www/nomdusite
Nous avons désormais accès à notre page web en http
Certbot
Installation de certbot
Pour installer Certbot, nous allon tout d’abord installer epel vec la commande:
dnf install epel-release -y
On peut maintenant installer certbot et le plug-in pour nginx à l’aide des commandes:
dnf install certbot -y
dnf install certbot python3-certbot-nginx -y
Configuration de Certbot
Avant de lancer Certbot, il faut arrêter Nginx, sinon, on peux avoir une erreur car le port 80 est en cours d’utilisaton
systectm stop nginx
Maintenant que nginx est éteint, on peux configurer nginx:
certbot --nginx -d nomdedomaine.com
J’ai continué avec mon 2e nom de domaine car ça allait casser le sertificat de mon serveur donc j’ai utilisé mon nom de domaine poubelle
Une fois que certbot à terminé, on peut relancer nginx avec la commande:
systemctl start nginx
On peux maintenant aller sur le site et mettre https://nomdedomane.com et on voit l’accès à page de manière sécurisée
On peux regarder le certificat via le navigateur