Tillbaka till bloggen
Februari 2, 2026Guider

Hur man Sätter Upp en Privat Git-server på VPS

Komplett guide för att sätta upp din egen privata Git-server på en VPS. Lär dig hur du hostar Git-förråd med fullständig kontroll och integritet med GitLab, Gitea eller nakna förråd.

Hur man Sätter Upp en Privat Git-server på VPS

Att hosta din egen Git-server ger dig fullständig kontroll över dina kodförråd, säkerställer integritet och undviker beroende av tredjepartstjänster. Oavsett om du behöver ett enkelt naket förråd eller en fullfjädrad Git-hostingplattform täcker denna guide flera alternativ för att sätta upp en privat Git-server på din VPS.

Varför Hosta Din Egen Git-server?

  • Fullständig integritet: Din kod stannar på din server
  • Ingen leverantörslåsning: Full kontroll över dina förråd
  • Anpassning: Konfigurera exakt hur du vill
  • Kostnadseffektivt: En server för obegränsade förråd
  • Efterlevnad: Uppfyll databostadskrav
  • Lärande: Förstå Git-serverinterna

Alternativ 1: GitLab (Fullfjädrad)

GitLab ger 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
# Få tillgång till GitLab på http://your-server-ip
# Standardanvändarnamn: root
# Sätt lösenord vid första inloggningen

Alternativ 2: Gitea (Lättvikt)

Gitea är en lättviktig, självhostad Git-tjänst:

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/

# Skapa systemd-tjänst
nano /etc/systemd/system/gitea.service
# Konfigurera och starta Gitea
systemctl enable gitea
systemctl start gitea

Alternativ 3: Naket Git-förråd (Enkelt)

För grundläggande Git-hosting utan webbgränssnitt:

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

# Sätt korrekta behörigheter
chown -R git:git /srv/git
chmod -R 755 /srv/git

# Klona från klient:
git clone git@your-server:/srv/git/myproject.git

SSH-åtkomstkonfiguration

Sätt upp SSH för säker Git-åtkomst:

bash
adduser git
su - git
mkdir .ssh
chmod 700 .ssh
nano .ssh/authorized_keys
# Lägg till offentliga nycklar från utvecklare
chmod 600 .ssh/authorized_keys

# Testa anslutning:
ssh git@your-server

Säkerhetsbästa Praktiker

  • Använd SSH-nycklar istället för lösenord
  • Aktivera tvåfaktorsautentisering (GitLab/Gitea)
  • Regelbundna säkerhetskopior av förråd
  • Håll Git-serverprogramvara uppdaterad
  • Konfigurera brandvägg för att begränsa åtkomst
  • Använd SSL/TLS för webbgränssnitt
  • Implementera åtkomstkontroller och behörigheter
  • Övervaka loggar för misstänkt aktivitet

Säkerhetskopieringsstrategi

Regelbundna säkerhetskopior är viktiga:

bash
#!/bin/bash
# Git-förrådssäkerhetskopieringsskript
BACKUP_DIR="/backup/git"
REPO_DIR="/srv/git"
DATE=$(date +%Y%m%d)

tar -czf $BACKUP_DIR/git-backup-$DATE.tar.gz $REPO_DIR
# Behåll senaste 30 dagarna
find $BACKUP_DIR -name "*.tar.gz" -mtime +30 -delete