Πώς να Ρυθμίσετε Ιδιωτικό Διακομιστή Git σε VPS
Πλήρης οδηγός για τη ρύθμιση του δικού σας ιδιωτικού διακομιστή Git σε VPS. Μάθετε πώς να φιλοξενήσετε αποθετήρια Git με πλήρη έλεγχο και ιδιωτικότητα χρησιμοποιώντας GitLab, Gitea ή bare αποθετήρια.

Η φιλοξενία του δικού σας διακομιστή Git σας δίνει πλήρη έλεγχο στα αποθετήρια κώδικα σας, εξασφαλίζοντας ιδιωτικότητα και αποφεύγοντας την εξάρτηση από υπηρεσίες τρίτων. Είτε χρειάζεστε ένα απλό bare αποθετήριο είτε μια πλήρως εξοπλισμένη πλατφόρμα φιλοξενίας Git, αυτός ο οδηγός καλύπτει πολλαπλές επιλογές για τη ρύθμιση ενός ιδιωτικού διακομιστή Git στο VPS σας.
Γιατί να Φιλοξενήσετε τον Δικό σας Διακομιστή Git;
- Πλήρης ιδιωτικότητα: Ο κώδικάς σας παραμένει στον διακομιστή σας
- Χωρίς εξάρτηση από προμηθευτή: Πλήρης έλεγχος στα αποθετήριά σας
- Προσαρμογή: Ρυθμίστε ακριβώς όπως θέλετε
- Κοστο-αποτελεσματικό: Ένας διακομιστής για απεριόριστα αποθετήρια
- Συμμόρφωση: Ικανοποιήστε απαιτήσεις κατοικίας δεδομένων
- Μάθηση: Κατανοήστε τα εσωτερικά του διακομιστή Git
Επιλογή 1: GitLab (πλήρως εξοπλισμένο)
Το GitLab παρέχει μια πλήρη πλατφόρμα DevOps:
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | bash
apt install gitlab-ce
gitlab-ctl reconfigure
# Πρόσβαση στο GitLab στο http://ip-διακομιστη-σας
# Προεπιλεγμένο όνομα χρήστη: root
# Ορίστε κωδικό πρόσβασης στην πρώτη σύνδεσηΕπιλογή 2: Gitea (ελαφρύ)
Το Gitea είναι μια ελαφριά, αυτο-φιλοξενούμενη υπηρεσία Git:
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/
# Δημιουργία υπηρεσίας systemd
nano /etc/systemd/system/gitea.service
# Ρύθμιση και εκκίνηση Gitea
systemctl enable gitea
systemctl start giteaΕπιλογή 3: Bare Αποθετήριο Git (Απλό)
Για βασική φιλοξενία Git χωρίς web interface:
mkdir -p /srv/git/το-έργο-μου.git
cd /srv/git/το-έργο-μου.git
git --bare init
# Ορισμός σωστών δικαιωμάτων
chown -R git:git /srv/git
chmod -R 755 /srv/git
# Κλωνοποίηση από πελάτη:
git clone git@ο-διακομιστης-σας:/srv/git/το-έργο-μου.gitΡύθμιση Πρόσβασης SSH
Ρυθμίστε SSH για ασφαλή πρόσβαση Git:
adduser git
su - git
mkdir .ssh
chmod 700 .ssh
nano .ssh/authorized_keys
# Προσθέστε δημόσια κλειδιά προγραμματιστών
chmod 600 .ssh/authorized_keys
# Δοκιμή σύνδεσης:
ssh git@ο-διακομιστης-σαςΚαλύτερες Πρακτικές Ασφαλείας
- Χρησιμοποιήστε κλειδιά SSH αντί για κωδικούς πρόσβασης
- Ενεργοποιήστε τον έλεγχο ταυτότητας δύο παραγόντων (GitLab/Gitea)
- Τακτικά αντίγραφα ασφαλείας αποθετηρίων
- Κρατήστε το λογισμικό διακομιστή Git ενημερωμένο
- Ρυθμίστε το firewall για περιορισμό πρόσβασης
- Χρησιμοποιήστε SSL/TLS για web interfaces
- Εφαρμόστε έλεγχο πρόσβασης και δικαιώματα
- Παρακολουθήστε τα αρχεία καταγραφής για ύποπτη δραστηριότητα
Στρατηγική Αντιγράφων Ασφαλείας
Τα τακτικά αντίγραφα ασφαλείας είναι απαραίτητα:
#!/bin/bash
# Σενάριο αντιγράφου ασφαλείας αποθετηρίου 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
# Κρατήστε τα τελευταία 30 ημέρες
find $BACKUP_DIR -name "*.tar.gz" -mtime +30 -delete