WATERBEAR:Installation

De WIKI sur Linux (ADB)
Aller à la navigation Aller à la recherche

But

Cette rubrique décrit les différentes étape afin d'installer le logiciel Waterbear sur votre serveur Linux. Nous allons utiliser la distribution Fedora Version 32.


Prérequis

  • Un serveur LINUX avec la distribution Fedora (version 32)

Nous nommerons le nom de la machine: serveur (voir le fichier /etc/hostname). Il a l'adresse IP, par exemple, 192.168.1.100 .

  • Installer le serveur WEB Apache (version 2.4):
dnf install httpd
  • Installer PHP (version 7.4):
dnf install php php-gd
  • Installer le gestionnaire de base de données MariaDB (version 10.4):
dnf install mariadb-server
dnf install php-mysqlnd

Note: Nous n'abordons pas ici les aspects sécuritaires.


Télécharger WATERBEAR et le mettre en place

  • Sous Linux, créer un répertoire par exemple /web/waterbear
mkdir /web
mkdir /web/waterbear
  • Transférer le fichier waterbear.zip sous Linux et le décompresser:
unzip waterbear.zip
  • En parcourant l'arborescence générée, copier le contenu du sous-répertoire waterbear dans le répertoire créé plus haut /web/waterbear.
  • Récupérer le fichier contenant les adaptations et correctifs pour PHP 7.4.
Télécharger le fichier ZIP des modifications de Waterbear
  • Faire les mêmes opérations effectuées pour le fichier waterbear.zip.
  • Changer le propriétaire de ce répertoire /web/waterbear et l'attribuer au propriétaire du processus Apache (HTTPD). Sous Fedora, c'est par défaut l'utilisateur apache et le groupe apache:
chown -R apache:apache /web/waterbear
  • Changer les droits d'accès.

Au plus simple mais peu sécurisé, on peut de lui mettre tous les droits:

chmod -R 770 /web/waterbear

Mais il est préférable d'être plus restrictif:

chmod -R 550 /web/waterbear

Mais alors certains répertoires doivent avoir un accès en écriture tels les répertoires LOG, download, upload:

chmod -R 750 /web/waterbear/LOG
chmod -R 750 /web/waterbear/download
chmod -R 750 /web/waterbear/upload


Configuration d'Apache

Nous n'aborderons pas ici l'aspect de son accès direct à partir d'Internet. Cet aspect est abordé sous la rubrique Linux. Nous supposons ici qu'il est accessible sur le réseau local. La liaison entre son adresse IP et son nom peut être défini de différentes façons:

- via votre serveur DNS interne
- via le modem de votre FAI si c'est possible
- via le fichier hosts de la machine client à partir de laquelle vous utiliser un navigateur 
  (/etc/hosts sous Linux, C:\windows\system32\drivers\etc\hosts sous Windows).

L'URL d'appel, sera HTTP://serveur/waterbear

  • Sous Fedora, les fichiers de configurations se trouvent par défaut dans le répertoire /etc/httpd/conf.d

Le fichier de configuration se nommera waterbear.conf

Voici son contenu:


Alias /waterbear /web/waterbear/
<Directory /web/waterbear>
 <IfModule mod_headers.c>
  Header always append X-Frame-Options SAMEORIGIN
  Header always set X-XSS-Protection "1; mode=block"
  Header always set X-Content-Type-Options nosniff
  Header always set Strict-Transport-Security "max-age=15552001; includeSubDomains;"
 </IfModule>
 DirectoryIndex bib.php
 Options +FollowSymLinks -Indexes
 AllowOverride All
 <IfModule mod_authz_core.c>
   Require all granted
 </IfModule>
 <LimitExcept GET POST HEAD>
   Require all denied
 </LimitExcept>
</Directory>
<Directory /web/waterbear/doc>
 <IfModule mod_headers.c>
  Header always append X-Frame-Options SAMEORIGIN
  Header always set X-XSS-Protection "1; mode=block"
  Header always set X-Content-Type-Options nosniff
  Header always set Strict-Transport-Security "max-age=15552001; includeSubDomains;"
 </IfModule>
 DirectoryIndex doc.php
 Options +FollowSymLinks -Indexes
 AllowOverride All
 <IfModule mod_authz_core.c>
   Require all granted
 </IfModule>
 <LimitExcept GET POST HEAD>
  Require all denied
 </LimitExcept>
</Directory>

Explications:

- L'option "Alias" fait la liaison entre le chemin de l'URL et le répertoire du système
- Les deux blocs Directory à définir les options de des deux répertoires principaux. Le premier est l'entrée de base du logiciel et le second concerne sa documentation.
- Les options Header sont facultatives mais aident fortement à sécuriser le site
- L'option DirectoryIndex définit quelle fichier est à lancer par défaut.
- L'option AllowOverride sert à activer les fichiers .htaccess
- L'option "Require all granted" permet que tout le monde aie accès au site
  • Redémarrer le service HTTPD
systemctl restart httpd.service

Note: pour activer le service:

systemctl enable httpd.service

Note: Ce service lance par la même occasion le service php-fpm.service

Vous pouvez consulter les journaux de ces services respectivement:

- dans le répertoire /var/log/httpd pour le service httpd.service
- dans le répertoire /var/log/php-fpm pour le service php-fpm.service


Configurer PHP

Configurer MySql (Mariadb)


->retour au menu de Waterbear