Modules and modifications
Installing mod_remoteip
This application is used to keep the visitor real IP when using Nginx as a proxy in front of Apache. Without this module, it would not be possible to use Nginx as a proxy server and have so viable statistics.
The installer will install the cPanel RPM "ea-apache24-mod_remoteip" if it detects that the module was not already installed.
Installing Nginx
Nginx plays the role of proxy between the users and the Apache server. Its main role is to keep a version of the requested resource (page, CSS, image, etc.) in cache in order to significantly increase the loading speed of web pages. Nginx is the heart of our module. It will be registered in cPanel as a service, therefore, if the service stop working, it will be restarted automatically will notify the server administrator.
The module will install Nginx version 1.16 directly from the official Nginx "repo", not from the EPEL "repo" of CentOs.
When installing Nginx, the module will use the OpenSSL library to create a "Diffie-Hellman" exchange key that is required for secure connections.
CPanel \ WHM Management Module
cPanel \ WHM module aims to provide a graphical interface to help the user to modify the various settings and activate the cache in a simple and intuitive way. Two interfaces are available, one for cache activation in the cPanel control panel and the other for configuration management in WHM.
Changing server settings
Adding service in cPanel TailWatch
The Nginx service is added to the cPanel TailWatch to ensure that it is always functional and rebooted automatically as needed.
Update ConfigServer Firewall settings
If the ConfigServer Firewall extension is installed, the module will add an instruction to the "csf.pignore" file to avoid creating false alarms. It will also add the Nginx log files to those available in the ConfigServer Firewall GUI for watch and search.
New CRON jobs
Recurring tasks (cron) will be added to the server for two tasks. Make sure that no changes of a website configuration (at Apache level, such as a new SSL, subdomain, etc.) go unnoticed in the event of a "WSAD" service failure and speed up purges of cached files when needed.
New entry in LogRotate
An entry will be created to rotate module logs so that the maximum size of log files does not exceed 100 MB.
Modifying Apache listening ports
The Apache listening ports will be changed from 80 to 8080 and from 443 to 8443 in the cPanel configuration. Nginx will use ports 80 and 443
Changing the format of Apache log entries
The format of Apache log entries will be changed to reflect the actual IP and not the proxy IP.
WSAD Service
The module will install a service in the server to check for possible site configuration changes and purge the cache.
Modules et modificationsInstallation de mod_remoteip
Cette application est utilisée lors de la communication entre Nginx et Apache afin de garder la provenance de l’adresse IP d’origine qui a effectué la requête. Sans ce module, il ne serait pas possible d’utiliser Nginx en tant que serveur mandataire.
L’installateur va installer le RPM de cPanel « ea-apache24-mod_remoteip » s’il détecte que le module n’était pas déjà installé.
Installation de Nginx
Celui-ci aura pour but de jouer le rôle de mandataire entre les utilisateurs et le serveur Apache. Son rôle principal est de garder une version de la ressource demandée (page, CSS, image, etc.) en cache afin d’augmenter de façon significative la vitesse de chargement des pages web. Nginx est le cœur même de notre module. De plus, ce dernier sera enregistré dans cPanel en tant que service. C’est-à-dire qu’en cas d’erreur, celui-ci va être redémarré automatiquement et vous serez avisé à l’aide d’une notification par courriel.
Le module installera la version 1.16 de Nginx directement du "repo" officiel de ce dernier et non du "repo" « EPEL repository » de CentOs.
Lors de l’installation de Nginx, le module utilisera la librairie OpenSSL pour créer une clé d’échange « Diffie-Hellman » qui est nécessaire pour les connexions sécurisées.
Module de gestion cPanel \ WHM
cPanel \ WHM ont pour but de fournir une interface graphique afin d’aider l’utilisateur à modifier les divers réglages du module et d’activer la cache de façon simple et intuitive. Deux interfaces sont disponibles. Une pour l’activation de la cache dans le panneau de contrôle cPanel. L’autre pour la gestion des configurations dans WHM.
Modification des paramètres du serveur
Ajout de service dans cPanel TailWatch
Le service Nginx est ajouté dans le TailWatch de cPanel pour s’assurer qu’il soit toujours fonctionnel et redémarré automatiquement au besoin.
Mise à jour de ConfigServer Firewall
Si l’extension ConfigServer Firewall est installée dans le serveur, le module ajoutera une instruction dans le fichier « csf.pignore » pour éviter de créer de fausse alerte. Il ajoutera également les fichiers journaux de Nginx à ceux disponibles dans l’interface graphique de ConfigServer Firewall.
Ajout de tâches CRON
Des tâches récurrentes (cron) seront ajoutées dans le serveur pour deux tâches particulières;
Pour s’assurer qu’aucune modification à un site web (au niveau d’Apache, comme un nouveau SSL, sous-domaine, etc.) ne passe inaperçue en cas de problème du service « WSAD ».
Pour accélérer les purges des fichiers cachés lorsque nécessaire.
Nouvelle entrée dans LogRotate
Une entrée sera créée pour effectuer une rotation des entrées du module de sorte que la taille maximale des fichiers journaux ne dépasse pas 100 Mo.
Modification des ports d’écoute d’Apache
Les ports d’écoute d’Apache seront changés de 80 à 8080 et de 443 à 8443 dans la configuration de cPanel. C’est Nginx qui utilisera les ports 80 et 443.
Changement du format des entrés journaux d’Apache
Le format des entrés journaux d’Apache seront modifiés pour prendre en considération l’IP réel et non celle du serveur mandataire.
Service WSAD
Le module installera un service dans le serveur afin de vérifier les modifications possibles aux configurations des sites ainsi que pour procéder à la purge de la mémoire cache.
