Comment installer ElkArte Forum avec Apache et Lets Encrypt sur Debian 10
Sur cette page
- Exigences
- Mise en route
- Installer Apache, MariaDB et PHP
- Configurer la base de données pour ElkArte
- Télécharger ElkArte
- Créer un hôte virtuel pour ElkArte
- Accéder à l'interface Web d'ElkArte
- Sécuriser ElkArte avec Lets Encrypt
ElkArte est un logiciel de forum gratuit, open-source et puissant qui vous permet de créer votre propre communauté de forum en ligne. C'est une plate-forme de forum simple, légère et moderne basée sur PHP et utilise MySQL/MariaDB pour stocker ses données. ElkArte est livré avec une multitude de fonctionnalités, notamment les notifications, les likes pour les publications, les brouillons, la sauvegarde automatique, le glisser-déposer de la pièce jointe, l'intégration de vidéos intégrées pour youtube, la publication par e-mail, des mesures anti-spam améliorées et bien d'autres.
Dans ce tutoriel, nous allons vous expliquer comment installer ElkArte sur le serveur Debian 10.
Exigences
- Un serveur exécutant Debian 10.
- Un mot de passe root est configuré sur votre serveur.
Commencer
Avant de commencer, vous devrez mettre à jour votre système avec la dernière version. Vous pouvez le faire en exécutant la commande suivante :
apt-get update -y
apt-get upgrade -y
Une fois votre serveur mis à jour, redémarrez votre serveur pour appliquer les modifications.
Installer Apache, MariaDB et PHP
Tout d'abord, vous devrez installer le serveur Web Apache, le serveur de base de données MariaDB, PHP et les autres bibliothèques requises sur votre serveur. Vous pouvez tous les installer en exécutant la commande suivante :
apt-get install apache2 mariadb-server php libapache2-mod-php php-common php-curl php-intl php-mbstring php-xmlrpc php-mysql php-gd php-pgsql php-xml php-cli php-imagick php-bcmath php-gmp php-zip unzip -y
Une fois tous les packages installés, ouvrez le fichier php.ini et modifiez certains paramètres :
nano /etc/php/7.3/apache2/php.ini
Modifiez les lignes suivantes :
memory_limit = 256M
upload_max_filesize = 100M
max_execution_time = 360
date.timezone = America/Chicago
Enregistrez et fermez le fichier lorsque vous avez terminé. Ensuite, redémarrez le serveur Web Apache avec la commande suivante :
systemctl restart apache2
Configurer la base de données pour ElkArte
Ensuite, vous devrez créer une base de données et un utilisateur pour ElkArte. Pour ce faire, connectez-vous au shell MariaDB avec la commande suivante :
mysql -u root -p
Fournissez votre mot de passe root lorsque vous y êtes invité, puis créez une base de données et un utilisateur avec la commande suivante :
MariaDB [(none)]> CREATE DATABASE elkartedb;
MariaDB [(none)]> CREATE USER 'elkarte'@'localhost' IDENTIFIED BY 'password';
Ensuite, accordez tous les privilèges à ElkArte avec la commande suivante :
MariaDB [(none)]> GRANT ALL ON elkartedb.* TO 'elkarte'@'localhost' WITH GRANT OPTION;
Ensuite, videz les privilèges et quittez le shell MariaDB avec la commande suivante :
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;
Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.
Télécharger ElkArte
Tout d'abord, vous devrez télécharger la dernière version d'ElkArte à partir du référentiel Git. Pour le télécharger, exécutez la commande suivante :
wget https://github.com/elkarte/Elkarte/archive/master.zip
Une fois le téléchargement terminé, décompressez le fichier téléchargé avec la commande suivante :
unzip master.zip
Ensuite, déplacez le répertoire extrait vers le répertoire racine Web d'Apache :
mv Elkarte-master /var/www/html/elkarte
Ensuite, modifiez le propriétaire du répertoire elkarte et fournissez les autorisations nécessaires avec la commande suivante :
chown -R www-data:www-data /var/www/html/elkarte
chmod -R 755 /var/www/html/elkarte
Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.
Créer un hôte virtuel pour ElkArte
Ensuite, vous devrez créer un fichier de configuration d'hôte virtuel Apache pour servir ElkArte. Vous pouvez le créer avec la commande suivante :
nano /etc/apache2/sites-available/elkarte.conf
Ajoutez les lignes suivantes :
<VirtualHost *:80>
ServerAdmin
DocumentRoot /var/www/html/elkarte
ServerName example.com
<Directory /var/www/html/elkarte/>
Options FollowSymlinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Enregistrez et fermez le fichier lorsque vous avez terminé. Ensuite, activez le fichier d'hôte virtuel et le module de réécriture Apache avec la commande suivante :
a2ensite elkarte.conf
a2enmod rewrite
Enfin, redémarrez le serveur Web Apache pour appliquer les modifications :
systemctl restart apache2
Accéder à l'interface Web d'ElkArte
ElkArte est maintenant installé et configuré. Il est temps d'accéder à l'interface Web d'ElkArte.
Ouvrez votre navigateur Web et saisissez l'URL http://example.com. Vous serez redirigé vers la page d'accueil d'ElkArte :

Cliquez sur le bouton Continuer. Vous devriez voir la page suivante :

Indiquez votre nom de base de données, votre nom d'utilisateur de base de données, votre mot de passe et cliquez sur le bouton Continuer. Vous devriez voir la page suivante :

Indiquez le nom de votre forum, l'URL du forum et cliquez sur le bouton Continuer. Vous devriez voir la page suivante :

Maintenant, cliquez sur le bouton Continuer. Vous devriez voir la page de création d'administrateur :

Indiquez le nom d'administrateur, le mot de passe, l'e-mail, le mot de passe de la base de données souhaités et cliquez sur le bouton Continuer. Une fois l'installation terminée, vous devriez voir la page suivante :

Maintenant, cliquez sur \votre forum nouvellement installé\. Vous devriez voir le tableau de bord ElkArte sur la page suivante :

Sécurisez ElkArte avec Lets Encrypt
Tout d'abord, vous devrez installer Certbot sur votre serveur. Certbot est utilisé pour obtenir un certificat SSL de Let's Encrypt et configurer Apache pour utiliser ce certificat.
Par défaut, la dernière version de Certbot n'est pas disponible dans le référentiel par défaut de Debian 10. Vous devrez donc ajouter le référentiel Certbot sur votre serveur.
Commencez par ajouter le référentiel Certbot avec la commande suivante :
add-apt-repository ppa:certbot/certbot
Une fois le référentiel ajouté, mettez à jour le référentiel et installez Certbot avec la commande suivante :
apt-get update -y
apt-get install certbot python-certbot-apache -y
Certbot est maintenant installé et prêt à être utilisé.
Exécutez la commande suivante pour obtenir le certificat SSL de votre domaine :
certbot --apache -d example.com
Tout d'abord, vous devrez fournir une adresse e-mail valide et accepter les conditions d'utilisation comme indiqué ci-dessous :
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator apache, Installer apache
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel):
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for example.com
Enabled Apache rewrite module
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/example.com-le-ssl.conf
Deploying Certificate to VirtualHost /etc/apache2/sites-available/example.com-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/example.com-le-ssl.conf
Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2
Ensuite, choisissez l'option 2 pour télécharger et installer un certificat SSL gratuit pour votre domaine. Une fois l'installation terminée avec succès. Vous devriez obtenir la sortie suivante :
Enabled Apache rewrite module
Redirecting vhost in /etc/apache2/sites-enabled/example.com.conf to ssl vhost in /etc/apache2/sites-available/
example.com-le-ssl.conf
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://example.com
You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/example.com/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/example.com/privkey.pem
Your cert will expire on 2019-10-22. To obtain a new or tweaked
version of this certificate in the future, simply run certbot again
with the "certonly" option. To non-interactively renew *all* of
your certificates, run "certbot renew"
- Your account credentials have been saved in your Certbot
configuration directory at /etc/letsencrypt. You should make a
secure backup of this folder now. This configuration directory will
also contain certificates and private keys obtained by Certbot so
making regular backups of this folder is ideal.
- If you like Certbot, please consider supporting our work by:
Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-le
Toutes nos félicitations! votre ElkArte est maintenant sécurisé avec un certificat SSL. Vous pouvez maintenant y accéder en toute sécurité en visitant l'URL https://example.com.