Febbraio 2, 2026Guide
Come Configurare un Server Git Privato su VPS
Guida completa per configurare il tuo server Git privato su un VPS. Impara come ospitare repository Git con controllo e privacy completi utilizzando GitLab, Gitea o repository bare.

Ospitare il tuo server Git ti dà il controllo completo sui tuoi repository di codice, garantendo la privacy ed evitando la dipendenza da servizi di terze parti. Che tu abbia bisogno di un semplice repository bare o di una piattaforma di hosting Git completa, questa guida copre più opzioni per configurare un server Git privato sul tuo VPS.
Perché Ospitare il Tuo Server Git?
- Privacy completa: Il tuo codice rimane sul tuo server
- Nessun vendor lock-in: Controllo completo sui tuoi repository
- Personalizzazione: Configura esattamente come vuoi
- Convenienza: Un server per repository illimitati
- Conformità: Soddisfa i requisiti di residenza dei dati
- Apprendimento: Comprendi gli internals del server Git
Opzione 1: GitLab (Completo)
GitLab fornisce una piattaforma DevOps completa:
bash
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | bash
apt install gitlab-ce
gitlab-ctl reconfigure
# Accedi a GitLab su http://your-server-ip
# Nome utente predefinito: root
# Imposta la password al primo accessoOpzione 2: Gitea (Leggero)
Gitea è un servizio Git leggero e self-hosted:
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/
# Crea servizio systemd
nano /etc/systemd/system/gitea.service
# Configura e avvia Gitea
systemctl enable gitea
systemctl start giteaOpzione 3: Repository Git Bare (Semplice)
Per l'hosting Git di base senza interfaccia web:
bash
mkdir -p /srv/git/myproject.git
cd /srv/git/myproject.git
git --bare init
# Imposta i permessi corretti
chown -R git:git /srv/git
chmod -R 755 /srv/git
# Clona dal client:
git clone git@your-server:/srv/git/myproject.gitConfigurazione Accesso SSH
Configura SSH per l'accesso Git sicuro:
bash
adduser git
su - git
mkdir .ssh
chmod 700 .ssh
nano .ssh/authorized_keys
# Aggiungi le chiavi pubbliche degli sviluppatori
chmod 600 .ssh/authorized_keys
# Testa la connessione:
ssh git@your-serverMigliori Pratiche di Sicurezza
- Usa chiavi SSH invece di password
- Abilita l'autenticazione a due fattori (GitLab/Gitea)
- Backup regolari dei repository
- Mantieni il software del server Git aggiornato
- Configura il firewall per limitare l'accesso
- Usa SSL/TLS per le interfacce web
- Implementa controlli di accesso e permessi
- Monitora i log per attività sospette
Strategia di Backup
I backup regolari sono essenziali:
bash
#!/bin/bash
# Script di backup repository 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
# Mantieni gli ultimi 30 giorni
find $BACKUP_DIR -name "*.tar.gz" -mtime +30 -delete