Guide de sécurité

Manuel : Serveur IA privé (VPS durci)

Guide pour l'installation et la maintenance sécurisées de OpenClaw (Clawdbot) sur un VPS durci.

Procédure recommandée : durcissement du système, utilisateur non root, pare-feu, SSH par clé, périmètre privé (Tailscale), persistance du service et mises à jour de sécurité automatiques.

⚠️ Exécutez les étapes dans l'ordre indiqué pour ne pas perdre l'accès au serveur.

Vous préférez un serveur déjà configuré et sécurisé ? Découvrir notre service managé

Préparation et utilisateur sécurisé

Création d'un utilisateur non root avant le durcissement de l'accès.

Créer un nouvel utilisateur

Remplacez 'alex' par le nom d'utilisateur souhaité.

adduser alex  # Remplacez 'alex' par votre nom
usermod -aG sudo alex

Copier les clés SSH vers le nouvel utilisateur

À exécuter depuis la machine locale.

ssh-copy-id alex@IP_DE_VOTRE_SERVEUR

Se connecter avec le nouvel utilisateur

Ne pas continuer si la connexion échoue.

ssh alex@IP_DE_VOTRE_SERVEUR

Durcissement du système (Hardening)

Pare-feu, mises à jour automatiques et restriction SSH.

Mettre à jour et automatiser les correctifs

sudo apt update && sudo apt upgrade -y
sudo apt install unattended-upgrades fail2ban -y
sudo dpkg-reconfigure -plow unattended-upgrades

Configurer le pare-feu de base (UFW)

sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow ssh
sudo ufw enable

Désactiver les mots de passe SSH et root

sudo nano /etc/ssh/sshd_config

# Après avoir modifié les directives, redémarrer le service :
sudo systemctl restart ssh

Localiser et définir les directives suivantes :

  • PasswordAuthentication no
  • PermitRootLogin no
  • PubkeyAuthentication yes

Périmètre privé (Tailscale)

Restriction du serveur au réseau privé Tailscale.

Installer Tailscale

curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up

Restreindre SSH au réseau privé uniquement

# Autoriser le trafic du sous-réseau interne Tailscale
sudo ufw allow from 100.64.0.0/10 to any port 22 proto tcp

# Supprimer la règle qui ouvrait SSH au monde entier
sudo ufw delete allow ssh

Installation de OpenClaw (Clawdbot) et persistance

Installation du bot, permissions des credentials et démarrage automatique PM2.

Installer Node.js et PM2

curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt install -y nodejs
sudo npm install -g pm2

Installer et configurer le bot

npm install -g clawdbot
clawdbot doctor

Permissions des secrets (crucial)

chmod 700 ~/.clawdbot/credentials
chmod 600 .env  # Si vous utilisez un fichier .env

Configurer le démarrage automatique

pm2 start clawdbot --name "ai-bot"
pm2 save
pm2 startup
# (Copiez et exécutez la commande retournée par le terminal)

Audit final

Vérification du durcissement et des ports exposés.

Exécuter l'audit de l'application

clawdbot security audit --deep

Vérifier les ports ouverts

Dans la colonne "Local Address", 0.0.0.0 (public) ne doit pas apparaître sur les ports sensibles, sauf SSH si la phase 3 n'a pas encore été appliquée.

sudo ufw status verbose
ss -tulnp | grep LISTEN

Résumé de la sécurité atteinte

Accès par clé : accès exclusif via clé privée SSH.

Périmètre privé : le serveur ne répond pas aux pings externes (hors Tailscale).

Mises à jour et résilience : correctifs automatiques et redémarrage du service en cas de panne.

Privilège minimum : credentials et fichiers sensibles avec permissions restreintes.

Serveur + sécurité + OpenClaw installé. Sans toucher au terminal. Voir l'offre