[Linux] Installation d’une Debian 9 + WordPress + Nginx + Netfilter

 

Installation d’une Debian 9 + WordPress + Nginx + Netfilter

 

Version de l’OS Debian 9
Version de WordPress 4.8.3

 

Pré-requis  Php, Mariadb

 

  • Installation du système
  • Configuration de WordPress
  • Configuration du vhost Nginx
  • Générer un certificat
  • Configuration de Netfilter
  • Lancement de WordPress

 

 

  • Installation du système

 

Récupérer une image ISO en netinstall sur le site de Debian

Passer en mode Install

 

Choisir le langage du système.

 

Choisir la localisation.

 

Choisir le langage du clavier.

 

Entrer le nom du système.

 

Entrer son domaine.

 

Mettre en mot de passe a l’utilisateur root et le confirmer.

 

Créer un utilisateur et son mot de passe.

 

Pour le partitionnement j’ai par habitude de faire du LVM, mais pas chiffré.

Je ne fais que sur les postes clients pas sur un serveur.

/!\ Je le fait dans ce tuto mais c’est pas une bonne idée en prod si le serveur ou la vm reboot pour x raison, la vm restera en attente de la passphrase.

 

Entrer une passphrase, celle-ci sera demandé au démarrage du système.

 

Récapitulatif du partitionnement et validation.

 

Si vous disposez de cd supplémentaire faire oui.

Sinon choisir le miroir et le dépôt et proxy si il en a un.

 

Choisissez de participer a la collecte des données.

 

Choisir les paquets a installés.

 

Utiliser grub au démarrage et choisir le le premier disque /dev/sda

 

Installation complète, cliquer sur continuer pour redémarrer.

 

Au redémarrage si le disque est chiffré, il est demandé de taper la passphrase.

 

Il n’y a plus qu’a se connecter avec l’utilisateur précédemment crée.

 

Pour se connecter avec l’utilisateur root utiliser la commande

 

On va juste l’utiliser pour installer le paquet sudo

 

puis faire un visudo pour ajouter l’utilisateur dans le groupe sudoers.

Se déconnecter avec la combinaison de touche CTRL+D ou exit pour revenir a l’utilisateur.

 

Faire un update pour vérifier si le système est a jour. Faire un upgrade des paquets trouvés.

 

Installer quelques paquets utiles

 

Éditer la carte réseau et mettre une IP fixe

Commenter la ligne inet dhcp, remplacer par static et ajouter votre ip/mask/gw

 

Éditer ensuite le fichier resolv.conf

Mettre le dns de votre provider ou autre

 

Redémarrer la carte réseau

ou

 

 

  • Configuration de WordPress

 

Procédons a l’installation de MariaDB, PHP et Nginx

 

PHP va installer le paquet Apache2, il faut l’arrêter et désactiver le service car on va s’appuyer sur Nginx

 

Il faut maintenant configurer MariaDB, démarrer et activer le service en auto.

 

Sécurisé a minima mysql avec la commande

 

On va ensuite créer la  db, user et mot de passe pour WordPress

 

Query OK, 1 row affected (0.00 sec)

Query OK, 0 rows affected (0.00 sec)

Query OK, 0 rows affected (0.00 sec)

Bye

 

Télécharger WordPress (release 4.8.3 au 11/2017)

 

Extraire l’archive et déplacer le contenu dans /var/www/

 

Renommer le fichier wp-config, supprimer le fichier readme, créer le répertoire uploads

 

Puis configurer le fichier wp-config.php, ajouter les infos précédemment créer dans Mariadb

A rajouter également dans wp-config.php pour forcer la connexion en HTTPS, en fin de ligne juste après require_once

 

Enfin faire un chown pour changer le propriétaire de wordpress puis un chmod 644 sur les fichiers et 755 sur les répertoires.

 

 

  • Configuration du vhost Nginx

 

Création du vhost Nginx, j’ai volontairement commenté les lignes pour les certificats letsencrypt.

 

Le fichier de conf nginx doit ressembler a ceci

 

Faire un lien symbolique et supprimer le vhost par defaut

 

 

  • Générer un certificat

 

Générer un certificat avec Cerbot

/!\ Attention il faut un nom de domaine valide, et y déclarer un CNAME ou un A, dans mon exemple avec domaine.local cela ne fonctionnera pas.

J’ai fait un article ici

Une fois le certificat généré, celui ci rajoute les lignes nécessaires dans le vhost, pour cela que je les ai commentés plus haut.

 

Ré-éditer le vhost, effacer les lignes rajoutées en fin de fichiers et de-commenter les 3 lignes.

 

Puis redémarrer les services

 

WordPress est normalement opérationnel

Si vous entrez l’url https://srv-wordpress.domaine.local, vous arrivez sur la page d’accueil pour finaliser l’installation.

Mais avant on va installer la partie firewall.

 

  • Installation et configuration de Netfilter

 

Installer le paquet netfilter

Les règles iptables actuelles peuvent être sauvegardées dans le fichier de configuration /etc/iptables/rules.v4. Ces règles seront ensuite chargées automatiquement au démarrage du système.
Les règles ne sont sauvegardées automatiquement que pendant l’installation du paquet. Voir la page de manuel de iptables-save (8) pour des instructions sur la mise à jour du fichier de règles.
Enregistrer les règles IPv4 actuelles?

 

Il faudra également confirmer si vous utiliser IPV6

 

Les fichiers iptables se trouvent dans le repertoire /etc/iptables et sont rules.v4 et rules.v6

Pour l’ipv6, je ne l’utilise pas je drop tous les paquets

 

Puis éditer le fichier rules.v4 et créer les règles pour autoriser les flux

 

Redémarrer iptables en utilisant la commande netfilter-persistent

 

Faire un status pour verifier le bon fonctionnement

 

Sauvegarder la configuration

 

Vérifier iptables

 

 

  • Lancement de WordPress

Il n’y a plus qu’a relancer le navigateur et a tester wordpress, entrer les informations demandées puis cliquer sur suivant.

 

Entrer l’identifiant précédemment créer

 

Page d’accueil de WordPress

 

 

/!\ 03/2018 – Tips

Améliorer les performances de WordPress avec OPcache

Éditer et modifier le fichier suivant puis redemarrer le service

De-commenter et modifier les valeurs comme ci dessous.

 


Ajuster le nombre de cœurs pour utiliser toute la puissance

Pour connaître leur nombre taper la commande

Puis éditer le fichier et modifier la valeur.

Toujours dans le fichier nginx.conf, désactiver le numéro de version de Nginx, pour cela décommentez la directive dans le bloc http

Puis redémarrer le service nginx

 

Source: https://howto.wared.fr/installation-wordpress-ubuntu-nginx/

 

 

Rating: 5.0/5. From 8 votes.
Please wait...

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.