Skip to content

Setup d’un VPS (Debian)

Objectif

Cette documentation décrit les étapes essentielles pour sécuriser, configurer et préparer une machine dédié à l’usage (notamment pour déployer des apps avec Docker).

Création d’un utilisateur non-root avec sudo

adduser julick
usermod -aG sudo julick

Connexion avec votre nouvel utilisateur

Une fois créé, connectez-vous avec :

ssh julick@<IP_DU_SERVEUR>

Ajout de votre clé SSH pour une connexion sans mot de passe

Créez une clé SSH sur votre machine locale (si vous n’en avez pas déjà une) :

ssh-keygen -t rsa -b 4096`

Emplacement de la clé

Par défaut, la clé est créée dans ~/.ssh/id_rsa.pub.

Copiez la clé publique sur le serveur en l'ajoutant au fichier ~/.ssh/authorized_keys :

sudo mkdir -p ~/.ssh
sudo chmod 700 ~/.ssh
sudo nano ~/.ssh/authorized_keys

Pare-feu UFW

Installation et activation

sudo apt update
sudo apt install ufw
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow OpenSSH
sudo ufw enable

Vérification

sudo ufw status

Ports supplémentaires

Ajoutez les ports nécessaires à vos services :

sudo ufw allow 80    # HTTP
sudo ufw allow 443   # HTTPS
sudo ufw allow 2222  # GitLab SSH custom port

Installation de Docker

Avant d'installer Docker, selon l'os sur lequel vous êtes il est important de desinstaller les anciennes versions de Docker avec cette commande :

for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do sudo apt-get remove $pkg; done

Ensuite vous pouvez ajouter la clé GPG officielle de docker en effectuant les commandes suivantes une par une :

sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

Ajoutez le dépôt Docker :

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Mettez à jour et installez :

sudo apt update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Vérifiez :

docker --version
docker compose version

Ajoutez votre utilisateur au groupe Docker pour qu’il puisse exécuter Docker sans sudo :

sudo usermod -aG docker $USER
newgrp docker