Retour au blog
Février 2, 2026Guides

Comment Configurer un Serveur Git Privé sur VPS

Guide complet pour configurer votre propre serveur Git privé sur un VPS. Apprenez à héberger des dépôts Git avec un contrôle complet et la confidentialité en utilisant GitLab, Gitea ou des dépôts bare.

Comment Configurer un Serveur Git Privé sur VPS

Héberger votre propre serveur Git vous donne un contrôle total sur vos dépôts de code, garantissant la confidentialité et évitant la dépendance aux services tiers. Que vous ayez besoin d'un simple dépôt bare ou d'une plateforme d'hébergement Git complète, ce guide couvre plusieurs options pour configurer un serveur Git privé sur votre VPS.

Pourquoi Héberger Votre Propre Serveur Git ?

  • Confidentialité complète : Votre code reste sur votre serveur
  • Pas de verrouillage fournisseur : Contrôle total sur vos dépôts
  • Personnalisation : Configurez exactement comme vous le souhaitez
  • Rentable : Un serveur pour des dépôts illimités
  • Conformité : Respectez les exigences de résidence des données
  • Apprentissage : Comprenez les internes du serveur Git

Option 1 : GitLab (Complet)

GitLab fournit une plateforme DevOps complète :

bash
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | bash
apt install gitlab-ce

gitlab-ctl reconfigure
# Accédez à GitLab à http://ip-de-votre-serveur
# Nom d'utilisateur par défaut : root
# Définissez le mot de passe à la première connexion

Option 2 : Gitea (Léger)

Gitea est un service Git léger et auto-hébergé :

bash
wget -O gitea https://dl.gitea.io/gitea/1.21.0/gitea-1.21.0-linux-amd64
chmod +x gitea
mv gitea /usr/local/bin/

# Créer un service systemd
nano /etc/systemd/system/gitea.service
# Configurez et démarrez Gitea
systemctl enable gitea
systemctl start gitea

Option 3 : Dépôt Git Bare (Simple)

Pour l'hébergement Git de base sans interface web :

bash
mkdir -p /srv/git/monprojet.git
cd /srv/git/monprojet.git
git --bare init

# Définir les permissions appropriées
chown -R git:git /srv/git
chmod -R 755 /srv/git

# Cloner depuis le client :
git clone git@votre-serveur:/srv/git/monprojet.git

Configuration de l'Accès SSH

Configurez SSH pour un accès Git sécurisé :

bash
adduser git
su - git
mkdir .ssh
chmod 700 .ssh
nano .ssh/authorized_keys
# Ajoutez les clés publiques des développeurs
chmod 600 .ssh/authorized_keys

# Tester la connexion :
ssh git@votre-serveur

Meilleures Pratiques de Sécurité

  • Utilisez des clés SSH au lieu de mots de passe
  • Activez l'authentification à deux facteurs (GitLab/Gitea)
  • Sauvegardes régulières des dépôts
  • Maintenez le logiciel serveur Git à jour
  • Configurez le pare-feu pour restreindre l'accès
  • Utilisez SSL/TLS pour les interfaces web
  • Implémentez des contrôles d'accès et des permissions
  • Surveillez les journaux pour activité suspecte

Stratégie de Sauvegarde

Les sauvegardes régulières sont essentielles :

bash
#!/bin/bash
# Script de sauvegarde du dépôt Git
BACKUP_DIR="/backup/git"
REPO_DIR="/srv/git"
DATE=$(date +%Y%m%d)

tar -czf $BACKUP_DIR/git-backup-$DATE.tar.gz $REPO_DIR
# Conservez les 30 derniers jours
find $BACKUP_DIR -name "*.tar.gz" -mtime +30 -delete