Skip to main content

Installation de Gestsup

On met d'abord l'OS à jour puis on télécharge LAMP.

apt update && apt upgrade -y && apt dist-upgrade -y
apt install apache2 mariadb-server php7.3 php7.3-mysql php7.3-xml php7.3-curl php7.3-imap php7.3-ldap php7.3-zip php7.3-mbstring php7.3-gd unzip ntp -y 

On crée l'utilisateur gestsup et on lui donne les droits. (on peut attribuer les droits uniquement à la BDD de gestsup).

mariadb -u root
CREATE USER 'gestsup'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'gestsup'@'localhost';
FLUSH PRIVILEGES;
exit

On modifie la configuration de PHP.

nano /etc/php/7.3/apache2/php.ini
Max_execution_time = 480
Memory_limit = 512M
upload_max_filesize = 8M
Date.timezone = Europe/Paris

On télécharge Gestsup puis on l'extrait.

wget -P /var/www/html https://gestsup.fr/downloads/versions/current/version/gestsup_3.2.5.zip
unzip /var/www/html/gestsup_3.2.5.zip -d /var/www/html

On supprime l'archive et le fichier index.html.

rm /var/www/html/gestsup_3.2.5.zip
rm /var/www/html/index.html

On crée l'utilisateur gestsup et on modifie les permissions.

adduser gestsup --ingroup www-data
chown -R gestsup:www-data /var/www/html/
find /var/www/html/ -type d -exec chmod 750 {} \;
find /var/www/html/ -type f -exec chmod 640 {} \;
chmod 770 -R /var/www/html/upload
chmod 770 -R /var/www/html/images/model
chmod 770 -R /var/www/html/backup
chmod 770 -R /var/www/html/_SQL
chmod 660 /var/www/html/connect.php

On redémarre le serveur.

On se rend à l'adresse suivante dans un navigateur web : http://192.168.199.105/install/ (à remplacer par l'adresse IP du serveur ou le nom DNS).

On utilise l'utilisateur créé précédemment dans la base de données.

image-1614426619871.png

On clique sur "Suivant".

image-1614426672106.png

image-1614426726165.png

On supprime le répertoire d'installation . 

rm -rf /var/www/html/install/

On désactivese les utilisateurs inutiles pour notre utilisation dans "Administration" > "Utilisateurs".connecte.

 

image-1614427117718.png

On modifie le mot de passe par défaut.

image-1614427155249.png

image-1614427403905.png

On clique sur cette icône à droit du nom d'utilisateur.

image-1614427548760.png

On modifie les droits après installation.

chmod 640 /var/www/html/connect.php

Sécurisation

nano /etc/apache2/conf-available/security.conf

image-1614429457254.png

image-1614429498952.png 

nano /etc/apache2/apache2.conf

On supprime "Indexes".

image-1614429535426.png

On installe et configure fail2ban.

apt install fail2ban -y
systemctl enable fail2ban
nano /etc/fail2ban/jail.local
[apache-auth]
enabled = true
port    = http,https
logpath = %(apache_error_log)s

[apache-badbots]
enabled = true
port    = http,https
logpath = %(apache_access_log)s
bantime = 48h
maxretry = 1

[apache-noscript]
enabled = true
port    = http,https
logpath = %(apache_error_log)s

On redémarre ensuite fail2ban puis on vérifie le bon fonctionnement.

systemctl restart fail2ban
fail2ban-client status

image-1614432155327.png