WordPress et CMS 2/4

Installation de WordPress

Après tous ces réglages et tests qui permettent de comprendre le fonctionnement assez général d’un serveur Web Apache (les autres marques de serveurs Web fonctionnent de manière similaire: Nginx, Microsoft IIS, NodeJs, Django, Tomcat, etc.).

Télécharger le fichier WordPress soit:

Commencer par dézipper le fichier WordPress-5.5.1-fr_FR.zip ( version Français de France oui il y a un WordPress fr_CA pour le Français du Canada) avec l’outil classique que vous utiliser dans un dossier et indiquer ce dossier à filezilla pour assurer le transfert.

NOTA: Les numéro de versions (par exemple 5.4.1) de WordPress sont à comprendre dans ce sens:

  • Le premier chiffre 5 est le plus important, nous avons WordPress en version 5 sortie le 12 décembre 2018
  • Le second chiffre 4 est le numéro de version secondaire qui indique des évolutions surtout dans la correction de bug dans cette version de WordPress
  • Le troisième chiffre 1 est le numéro de version sur les mises à jours de sécurités

Il faut installer la version la plus récente et réaliser rapidement la mise à jours de cette version pour obtenir la dernière version la plus débuggée et la plus sécurisée. Pour les mises à jours (upgrade) il faut garder à l’esprit que la mise à jours de sécurités ne doit pas avoir beaucoup d’impact sur votre site web par contre le changement de version important entraine des modifications importantes de votre WordPress.

 

Maintenant avec Filezilla, on va transférer tous les fichiers et les dossiers du WordPress vers le dossier www du serveur www.master-ctn.mines-ales.fr .

Indiquer bien le dossier où se trouve WordPress sur votre PC (en partie gauche), indiquez bien (ou cliquer sur le bon dossier à droite) le bon dossier www sur le serveur (en partie droite), sélectionner tous les fichiers/dossiers à gauche et faire glisser l’ensemble dans la zone fichier à droite (ou faite un clic droit > Envoyer):

Dans la « zone trasnfert de fichier » en bas vous devriez voir le transfert de fichier vers le serveur. Historiquement, le TP était en présentiel donc le transfert était assez rapide entre la salle de classe et la salle des serveurs dans le même bâtiment M. Maintenant, en fonction de votre hébergeur (de son coût aussi), de votre type de connexion, etc. le transfert peut prendre du temps. Regardez bien dans l’onglet « Transferts échoués » et s’il y a des messages d’erreur en rouge dans la « ZONE TECHNIQUE DE FILEZILLA ».

IMPORTANT: il faut que tous les fichiers et dossiers soient correctement transférer avant de démarrer l’installation. Ne commencer pas l’étape suivante tant que tous les fichiers et dossiers sont bien sur le serveur et non pas rejetés.

Une fois l’opération de transfert réalisée, on peut retourner sur le site web à l’adresse: http://www.master-ctn.mines-ales.fr/ctn20_jean/:

Appuyez sur « C’est parti! » et dans la nouvelle page, il faut indiquer les informations techniques récupérées à la page précédente:

  • nom de la base de données: ctn20_jean
  • identifiant de l’utilisateur de la base de données: ctn20_jean
  • mot de passe de l’utilisateur de la base de données
  • adresse du serveur de la base de données: localhost (essayez en cas de problème 127.0.0.1 ou le nom du serveur complet www.master-ctn.mines-ales.fr)
  • Préfixe de tables: laisser tel quel et voir la note technique plus bas

 

NOTE TECHNIQUE: le préfixe des tables de la base de données de Mysql est une technique qui permet dans une seule et unique base de données de mettre 2 wordpress qui font avoir un préfixe de table différent. Comme les hébergeurs facturent chaque base de données, les concepteurs de WordPress ont pensé que l’on puisse mettre plusieurs WordPress chez un hébergeur qui ne propose qu’une seule base de données. Chaque WordPress serait dans un sous-dossier dans www par exemple www/wordpress1/ et www/ mais tout deux seraient dans la même base de données en étant différencier par un prefix différent de nom de tables de base de données.

NOTE TECHNIQUE 2: Pour information l’Adresse IP (IP=Internet Procol) 127.0.0.1 est particulière. Chaque ordinateur a une adresse IP unique qui permet d’identifier les 2 ordinateurs qui communiquent en échangeant des informations. Votre ordinateur a une adresse IP, le serveur www.master-ctn.mines-ales.fr a une adresse IP (159.31.200.5). Parfois on doit indiquer à un ordinateur qu’il doit se consulter lui-même donc il y a une adresse spéciale 127.0.0.1 (appelé aussi localhost) qui indique que l’ordinateur doit communiquer avec lui-même. Une fois l’installation du serveur apache en local sur l’oridnateur via Mamp/Wamp, notre navigateur devra consulter ce serveur apache en local via l’adresse 127.0.0.1 qui a comme alias localhost.

 

Appuyez sur « Envoyer »

Cette page indique que l’installateur de WordPress a bien réussit à communiquer avec le logiciel de base de données Mysql et qu’il a constaté que l’installation peut se faire par rapport à ce logiciel.

NOTA: en cas d’erreur, il faut bien vérifier tous les réglages pour voir si les informations pour l’accès à la base de données sont correctes

 

La dernière étape permet d’indiquer des informations liés à l’installation du WordPress. La plus part des informations peuvent être modifiées par la suite mais ce sont des informations importantes:

  • Titre du site: Une information qui apparait ensuite dans le bandeau du site WordPress et qui apparait dans l’onglet du navigateur
  • Identifiant: l’identifiant de l’administrateur du site WordPress, habituellement on indique admin mais je recommande de mettre une autre information car ce nom d’utilisateur est l’identifiant qui permet de se connecter au site WordPress pour accéder à son backoffice
  • Le mot de passe: cette information est générée par WordPress comme mot de passe et modifiable. Il est critique de disposer d’un bon mot de passe pour votre identifiant sur le site WordPress
  • Adresse de messagerie: un email pour la récupération des informations de connexion en cas de perte du mot de passe
  • Visibilité par les moteurs de recherche: peu de moteur de recherche le prennent en compte, inutile tant que la réglementation n’obligera pas à prendre en compte cette information

NOTE TECHNIQUE: actuellement, beaucoup de site WordPress se font piratés car:

  • il est rentable d’attaquer des sites WordPress car le nombre de site cible est important par rapport aux autres CMS, WordPress serait utilisé dans 38% des sites dans le monde (https://fr.wikipedia.org/wiki/WordPress)
  • le nom de l’administrateur du WordPress est le nom du site web, nom du site www.truc.fr , nom de l’utilisateur truc.
  • les mots de passes sont trop simples à trouver (mot de passe déjà vu: wordpress , ou le nom du site , admin, 123456, etc.) et surtout ne sont jamais changés pendant des années.
  • le site est délaissé sans recevoir les mises à jours, le principe: »ça fonctionne, on n’y touche pas » entraine des failles de sécurités publiées par WordPress qui donne la méthode pour attaquer le site
  • des plugins/extensions/themes exotiques et/ou délaissés installés en nombre augmentant la surface d’attaque en proposant plus de failles potentielle
  • le mot de passe est utilisé sur un autre site dont l’attaquant a réussit à obtenir par une méthode ou une autre. Certains sites distribuant des contenus pirates demandent de créer un compte pour obtenir un couple identifiant/mot de passe qu’ils essayent sur différents sites en « espérant » qu’ils peuvent réutiliser.

Pour votre mot de passe, je ne peux que vous recommander de fabriquer une phrase dont certains mots sont remplacés par des symboles. Pour avoir des idées de robutesse: https://fr.wikipedia.org/wiki/Mot_de_passe#Crit%C3%A8res_de_robustesse

En cas de perte du mot de passe du site WordPress, nous verrons une méthode exploitant l’accès à la base de données directe pour refabriquer un mot de passe valide et de retrouver le nom de l’utilisateur si aussi il est oublié.

 

Appuyez sur « Installer WordPress » pour passer à la dernière étape:

Appuyez sur « Se connecter » pour avoir la page du backoffice:

La page pour accéder au  backoffice a un alias très utilisé http://www.master-ctn.mines-ales.fr/ctn20_jean/wp-admin/ qui est un accès similaire.

Notre site WordPress est opérationnel et en ligne.

Nous pouvons donc utiliser l’identifiant et le mot de passe de l’administrateur du site WordPress  pour accéder au backoffice, où nous constatons qu’il n’est pas à jours:

Donc il faut mettre à jours immédiatement notre WordPress, sauf que…

Le serveur www.master-ctn.mines-ales.fr utilise le protocole sftp pour la sécurité des connexions et malheureusement WordPress n’utilise pas ce protocole par défaut. Donc nous devons installer un plugin pour gérer l’installation via sftp, sauf que nous ne pouvons pas utiliser WordPress pour installer cet outil pour installer.

Donc nous devons installer cette extension/plugin à la main sans utiliser WordPress. Ce type d’installation arrive parfois sur certaines extensions/plugin donc ce mode de fonctionnement est utilisé de temps en temps et pour comprendre ce qu’il se passe sous le capot de Wordpess, je trouve cela très utile de l’avoir vu dans la formation.

En premier lieu, nous avons besoin de l’extension/plugin (https://fr.wordpress.org/plugins/ssh-sftp-updater-support/) ou via le serveur du Master CTN ( http://www.master-ctn.mines-ales.fr/install/ ). Téléchargez et dézippez ce fichier pour trouver le plugin dans filezilla pour le transférer:

  • En partie droite, trouver le dossier wp-content/plugins/ , on peut voir qu’il y a un plugin par défaut akismet que l’on retira plus tard.
  • Envoyer le dossier ssh-sftp-update-support sur le serveur via clic droit « Envoyer » ou en faisant glisser le dossier vers la droite
  • ATTENTION: une erreur classique est que l’outil qui fait le dezippage a pour le fichier ssh-sftp-updater-support.0.8.2.zip fabriquer un dossier parent ssh-sftp-updater-support.0.8.2/ contenant ssh-sftp-update-support/ et nous souhaitons envoyer ssh-sftp-update-support/ et non pas sftp-updater-support.0.8.2/ssh-sftp-update-support/

Une fois le transfert réalisé on doit disposer de cette structure sur le serveur avec le contenu du plugin/extension dans le dossier wp-content/plugins/, chaque extension devra être dans un sous-dossier de wp-content/plugins/.

Le transfert du dossier n’est pas suffisant, il faut aussi activer l’extension/plugin dans le backoffice. Cette double étape permet de conserver des plugins/extensions sur le site sans qu’ils ne soient actifs par exemple le temps de faire des tests.

Dans le backoffice, il faut aller dans « Extensions » et « Activer » le plugin « SSH SFTP Updater Support ».

On peut effacer maintenant les 2 plugins de démonstrations « Akismet Anti-Spam » et « Hello Dolly », cette opération déclenchera l’appel au plugin d’installation que nous venons d’installer, sauf que le nom du sFTP est mal nomé en SSH2:

  • Nom de l’hôte (localhost en fait): 127.0.0.1 (en cas de problème essayez www.master-ctn.mines-ales.fr)
  • Identifiant du sFTP: ctn20_jean
  • mot de passe: ce mot de passe est associé à l’utilisateur de filezilla
  • Type de connexion : SSH2 , attention l’écran change après avoir coché SSH2

La nouvelle fenêtre qui propose d’utiliser un système de clef public/clef privé que nous n’utiliserons pas:

Appuyez sur « Continuer » et normalement ce processus devrait désinstaller le plugin sélectionné.

L’étape critique suivante est de mettre à jours le WordPress grâce à ce nouveau plugin via le lien en haut (ou le menu « Mises à jours » à gauche): 

Le processus est similaire que pour retirer un plugin mais cette fois nous mettons à jours WordPress, la maintenance à jours des sites WordPress est une opération à faire de manière très régulière surtout si vous entendez des informations sur des périodes d’attaques de sites WordPress dans le monde:

Attention, comme indiqué par WordPress, la sauvegarde de votre site doit être fait avant les mises à jours pour pouvoir revenir en arrière. Nous n’avions pas beaucoup réalisé d’opérations pour devoir faire cette sauvegarde mais le premier plugin que nous allons installer gère la sauvegarde et la restauration de notre WordPress.

Pour ajouter une extensions faire « Extensions » puis « Ajouter » et chercher « Duplicator » qui doit sortir en premier le plugin « Duplicator » à installer et à activer de manière similaire à ce que l’on a vu précédemment:

Allez ensuite dans le menu « Duplicator » qui vient d’apparaitre, nous proposant de « Créer un paquet », chaque paquet sera une sauvegarde de notre site:

L’écran suivant inclus les informations critiques suivantes:

  • Le nom du paquet qui permet de le retrouver ensuite, la bonne pratique est de mettre la date pour le retrouver dans le liste
  • Le dossier sur le serveur qui contiendra le paquet de sauvegarde duplicator pour par exemple récupérer ces fichiers pour transférer le WordPress sur votre PC

Il est à noter que parfois votre WordPress est devenu trop gros pour être sauvegarder d’un seul coup par Duplicator. La solution est souvent de demander à Duplicator d’exclure le dossier wp-content/uploads/ qui contient toutes les ressources multimédia de la Médiathèque, à notre charge de réaliser la sauvegarde via Filezilla de ce dossier spécifique:

  • Activer les filtres de fichiers
  • Dossiers: le nom du dossier que l’on trouve via filezilla sur le serveur

NOTA: pour recréer ensuite le site web complet, on copiera ce dossier wp-content/uploads/ qui a été exclus dans le package Duplicator.

Nous pouvons constater que tous les informations techniques sont disponibles pour réaliser l’opération finale de création du « Paquet Duplicator ». Il peut y avoir par exemple des problèmes de fichiers trop importants ou de nom de fichier problématique (souvent avec accents):

 

La dernière étape permet de vérifier que la création du « Paquet Duplicator » et propose de télécharger les 2 fichiers soit le fichier d’installeur et le fichier zip d’archive. Ce dernier fichier est le plus critique car le fichier d’installation peut être retrouver dans le plugin Duplicator:

Le principe est donc de conserver l’archive et son installeur dans un lieu sécurisé pour pouvoir repartir sur cette version en cas de problème. Duplicator permet aussi de dupliquer le WordPress en local sur votre ordinateur pour disposer d’une version de test ou de pré-production sur un ordinateur avant chaque mise à jours ou ajout de contenu critique sur la version en ligne.

Télécharger le « Paquet Duplicator » et de l’installeur sur votre ordinateur dans un dossier sur votre PC en local pour préparer l’installation prochaine avec Wamp/Mamp.

En revenant sur la listes des « Paquets Duplicator », nous retrouverons la liste des sauvegardes disponibles pour WordPress. Attention à l’espace de stockage sur un serveur d’hébergement qui limiterait le stockage, heureusement le serveur www.master-ctn.mines-ales.fr dispose de suffisamment d’espace donc  multiplier les sauvegarde et les manipulations sur le serveur.

 

 

NOTA: via filezilla vous pouvez consulter le dossier wp-content/backups-dup-lite/ qui contient les fichiers du « Paquet Duplicator » et de l’installeur. on trouvera aussi des fichiers techniques (log, scan, config et log) pour gérer les problèmes techniques de Duplicator:

Nous verrons ensuite la restauration de ce « Paquet Duplicator » sur un PC pour réaliser une opération de duplication donc de sauvegarde.

NOTA: Il est critique de vérifier que le « Paquet Duplicator » est bien fonctionnel en réalisation une opération de restauration en local. En effet tout le processus peut sembler fonctionner et surtout la restauration peut avoir lieu dans un contexte de stress important.

Dernier point, utilisez votre WordPress, entrainez-vous à installer/réinstaller/utiliser/casser votre WordPress car c’est un bon moyen pour acquérir des connaissances sur son fonctionnement.

Il est par exemple important de comprendre la différence entre une page et un article. Historiquement, WordPress est un outil de blog donc les articles étaient la forme classique de présentation d’informations par catégorie mais l’ajout des pages de contenu statique permet de montrer un contenu unique qui n’est pas de type regroupement par rubrique de contenu. Comme exemple, sur ce site les articles de la catégorie « CTN » sont appelé par le menu « CTN » en haut alors que la page « Pierre JEAN ? » est un contenu unique accessible aussi par le menu.

 

 

 

 

A propos Pierre Jean

Ingénieur de Recherche Centre de recherche LGI2P Ecole des Mines d'Alès Formation TIC&Santé Plus de détails sur Pierre JEAN
Ce contenu a été publié dans CTN. Vous pouvez le mettre en favoris avec ce permalien.