Hvordan sette opp en privat Git-server på VPS
Komplett guide for å sette opp din egen private Git-server på en VPS. Lær hvordan du hoster Git-repositorier med full kontroll og personvern ved hjelp av GitLab, Gitea eller bare repositorier.

Å hoste din egen Git-server gir deg full kontroll over koderepositoriene dine, sikrer personvern og unngår avhengighet av tredjepartstjenester. Enten du trenger et enkelt bare repositorium eller en fullt funksjonell Git-hostingplattform, dekker denne guiden flere alternativer for å sette opp en privat Git-server på din VPS.
Hvorfor hoste din egen Git-server?
- Fullstendig personvern: Koden din forblir på din server
- Ingen leverandørlåsing: Full kontroll over repositoriene dine
- Tilpasning: Konfigurer akkurat som du vil
- Kostnadseffektivt: Én server for ubegrensede repositorier
- Overholdelse: Oppfyll databostedskrav
- Læring: Forstå Git-server internals
Alternativ 1: GitLab (fullt funksjonell)
GitLab gir en komplett DevOps-plattform:
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | bash
apt install gitlab-ce
gitlab-ctl reconfigure
# Tilgang til GitLab på http://your-server-ip
# Standard brukernavn: root
# Sett passord ved første innloggingAlternativ 2: Gitea (lettvekt)
Gitea er en lettvekt, selv-hostet Git-tjeneste:
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/
# Opprett systemd-tjeneste
nano /etc/systemd/system/gitea.service
# Konfigurer og start Gitea
systemctl enable gitea
systemctl start giteaAlternativ 3: Bare Git-repositorium (enkelt)
For grunnleggende Git-hosting uten webgrensesnitt:
mkdir -p /srv/git/myproject.git
cd /srv/git/myproject.git
git --bare init
# Sett riktige tillatelser
chown -R git:git /srv/git
chmod -R 755 /srv/git
# Klon fra klient:
git clone git@your-server:/srv/git/myproject.gitSSH-tilgangskonfigurasjon
Sett opp SSH for sikker Git-tilgang:
adduser git
su - git
mkdir .ssh
chmod 700 .ssh
nano .ssh/authorized_keys
# Legg til offentlige nøkler fra utviklere
chmod 600 .ssh/authorized_keys
# Test tilkobling:
ssh git@your-serverSikkerhets beste praksis
- Bruk SSH-nøkler i stedet for passord
- Aktiver tofaktorautentisering (GitLab/Gitea)
- Regelmessige sikkerhetskopier av repositorier
- Hold Git-serverprogramvare oppdatert
- Konfigurer brannmur for å begrense tilgang
- Bruk SSL/TLS for webgrensesnitt
- Implementer tilgangskontroller og tillatelser
- Overvåk logger for mistenkelig aktivitet
Sikkerhetskopistrategi
Regelmessige sikkerhetskopier er essensielle:
#!/bin/bash
# Git-repositorium sikkerhetskopiskript
BACKUP_DIR="/backup/git"
REPO_DIR="/srv/git"
DATE=$(date +%Y%m%d)
tar -czf $BACKUP_DIR/git-backup-$DATE.tar.gz $REPO_DIR
# Behold siste 30 dager
find $BACKUP_DIR -name "*.tar.gz" -mtime +30 -deleteÅ sette opp din egen Git-server gir full kontroll over koderepositoriene dine. Enten du velger den fullt funksjonelle GitLab, lettvekt Gitea eller enkle bare repositorier, vil du ha en privat, sikker løsning for versjonskontroll. Start med et grunnleggende oppsett og legg gradvis til funksjoner som CI/CD, issuesporing og samarbeidsverktøy etter behov.