Skip to Content

Sécuriser son VPS : Bonnes pratiques et configurations essentielles

March 31, 2025 by
Sécuriser son VPS : Bonnes pratiques et configurations essentielles
Patois Thomas

Sécuriser son VPS : Bonnes pratiques et configurations essentielles

Après avoir mis en place mon site sur un VPS avec Odoo, Nginx et Cloudflare, il est crucial d'assurer la sécurité du serveur. Dans cet article, je vais détailler les mesures que j’ai mises en place pour protéger mon serveur contre les attaques et les intrusions.

1. Configuration du pare-feu avec UFW

Un pare-feu est indispensable pour restreindre l’accès aux ports sensibles. J’utilise UFW (Uncomplicated Firewall) pour gérer les règles de pare-feu sur mon serveur.

Installation et activation d’UFW

apt install ufw -y
ufw default deny incoming
ufw default deny outgoing

Autorisation des ports nécessaires

ufw allow ssh
ufw allow http
ufw allow https
ufw enable

On vérifie l’état du pare-feu :

ufw status verbose

2. Sécurisation de SSH

Le service SSH est une cible fréquente des attaques par force brute. Voici quelques mesures de sécurité possibles.

Modification du port SSH

Éditez le fichier de configuration SSH :

nano /etc/ssh/sshd_config

Modifiez la ligne suivante :

Port 2222  # Remplacez 2222 par un autre port personnalisé

Redémarrez SSH :

systemctl restart sshd

Si besoin, ouvrez le nouveau port dans UFW :

ufw allow 2222/tcp

Désactivation de la connexion root

Dans /etc/ssh/sshd_config, modifiez :

PermitRootLogin no

Redémarrez SSH après modification.

3. Protection contre les attaques par force brute avec Fail2Ban

Fail2Ban bloque les IP après plusieurs tentatives de connexion échouées.

Installation et configuration

apt install fail2ban -y

Copiez la configuration de base :

cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
nano /etc/fail2ban/jail.local

Dans [sshd] et [ssh], activez la protection :

[ssh]
enabled = true
port    = ssh
filter = sshd
logpath = /var/log/auth.log
backend = systemd
maxretry = 6 #nombre d'essai infructueux avant d'être banni

[sshd]
enabled = true
logpath = %(sshd_log)s
backend = %(sshd_backend)s
action = systemd

Redémarrez Fail2Ban :

systemctl restart fail2ban

4. Sécurisation de Nginx

Activation du HTTPS et des en-têtes de sécurité

pour activer ssl sur mon site j'ai utilisé lets encrypt avec certbot

sudo apt install certbot python3-certbot-apache
sudo certbot
#choisir le bon nom de domaine

5. Protection avec Cloudflare

Cloudflare ajoute une couche de sécurité supplémentaire :

  • Protection DDoS
  • Firewall applicatif (WAF)
  • Mode "Under Attack" en cas de menace
  • Gestion des certificats SSL

J’ai activé ces options dans mon tableau de bord Cloudflare.

6. Sauvegarde automatique de la base de données Odoo

L’extension Automatic Database Backup de Cybrosys Solutions permet d’automatiser les sauvegardes d’Odoo.

Installation et configuration

  1. Aller sur odoo apps et rechercher "Automatic Database Backup"
  2. Installer l’extension en la rajoutant dans le dossier addons
  3. Configurer l’intervalle de sauvegarde et l’emplacement de stockage

idéalement il faut plusieurs sauvegardes à intervalles et destinations différents pour respecter la règle du "3-2-1-1-0"

Conclusion

Avec ces mesures, mon serveur est bien sécurisé contre les principales menaces. Néanmoins, la sécurité est un processus continu : il faut surveiller les logs, mettre à jour les paquets et revoir les configurations régulièrement.

Dans le prochain article, je parlerai de l’optimisation SEO du site.

Sécuriser son VPS : Bonnes pratiques et configurations essentielles
Patois Thomas March 31, 2025
Share this post
Archive