Natrag na blog
Veljača 2, 2026Vodiči

Kako postaviti privatni Git poslužitelj na VPS-u

Potpuni vodič za postavljanje vlastitog privatnog Git poslužitelja na VPS-u. Saznajte kako hostirati Git repozitorije s potpunom kontrolom i privatnošću pomoću GitLaba, Gitee ili golih repozitorija.

Kako postaviti privatni Git poslužitelj na VPS-u

Hostiranje vlastitog Git poslužitelja daje vam potpunu kontrolu nad vašim repozitorijima koda, osiguravajući privatnost i izbjegavajući ovisnost o uslugama trećih strana. Bilo da trebate jednostavan gol repozitorij ili platformu za hostiranje Gita s puno značajki, ovaj vodič pokriva više opcija za postavljanje privatnog Git poslužitelja na vašem VPS-u.

Zašto hostirati vlastiti Git poslužitelj?

  • Potpuna privatnost: Vaš kod ostaje na vašem poslužitelju
  • Nema vendor lock-ina: Potpuna kontrola nad vašim repozitorijima
  • Prilagodba: Konfigurirajte točno kako želite
  • Isplativost: Jedan poslužitelj za neograničene repozitorije
  • Usklađenost: Ispunite zahtjeve za rezidenciju podataka
  • Učenje: Razumijte interne dijelove Git poslužitelja

Opcija 1: GitLab (s puno značajki)

GitLab pruža potpunu DevOps platformu:

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

gitlab-ctl reconfigure
# Pristupite GitLabu na http://your-server-ip
# Zadani korisnički naziv: root
# Postavite lozinku pri prvoj prijavi

Opcija 2: Gitea (lagan)

Gitea je lagana, samostalno hostirana Git usluga:

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/

# Stvorite systemd uslugu
nano /etc/systemd/system/gitea.service
# Konfigurirajte i pokrenite Giteu
systemctl enable gitea
systemctl start gitea

Opcija 3: Gol Git repozitorij (jednostavan)

Za osnovno Git hostiranje bez web sučelja:

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

# Postavite ispravne dozvole
chown -R git:git /srv/git
chmod -R 755 /srv/git

# Klonirajte s klijenta:
git clone git@your-server:/srv/git/myproject.git

SSH konfiguracija pristupa

Postavite SSH za siguran Git pristup:

bash
adduser git
su - git
mkdir .ssh
chmod 700 .ssh
nano .ssh/authorized_keys
# Dodajte javne ključeve programera
chmod 600 .ssh/authorized_keys

# Testirajte vezu:
ssh git@your-server

Najbolje prakse sigurnosti

  • Koristite SSH ključeve umjesto lozinki
  • Omogućite dvofaktorsku autentifikaciju (GitLab/Gitea)
  • Redovite sigurnosne kopije repozitorija
  • Držite Git poslužiteljski softver ažuriranim
  • Konfigurirajte vatrozid za ograničavanje pristupa
  • Koristite SSL/TLS za web sučelja
  • Implementirajte kontrole pristupa i dozvole
  • Nadzirate zapise za sumnjive aktivnosti

Strategija sigurnosnih kopija

Redovite sigurnosne kopije su bitne:

bash
#!/bin/bash
# Skripta za sigurnosnu kopiju Git repozitorija
BACKUP_DIR="/backup/git"
REPO_DIR="/srv/git"
DATE=$(date +%Y%m%d)

tar -czf $BACKUP_DIR/git-backup-$DATE.tar.gz $REPO_DIR
# Zadržite zadnjih 30 dana
find $BACKUP_DIR -name "*.tar.gz" -mtime +30 -delete