Tilbake til blogg
Februar 2, 2026Guider

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.

Hvordan sette opp en privat Git-server på VPS

Å 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:

bash
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 innlogging

Alternativ 2: Gitea (lettvekt)

Gitea er en lettvekt, selv-hostet Git-tjeneste:

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/

# Opprett systemd-tjeneste
nano /etc/systemd/system/gitea.service
# Konfigurer og start Gitea
systemctl enable gitea
systemctl start gitea

Alternativ 3: Bare Git-repositorium (enkelt)

For grunnleggende Git-hosting uten webgrensesnitt:

bash
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.git

SSH-tilgangskonfigurasjon

Sett opp SSH for sikker Git-tilgang:

bash
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-server

Sikkerhets 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:

bash
#!/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