פברואר 2, 2026מדריכים
איך להגדיר שרת Git פרטי ב-VPS
מדריך מלא להגדרת שרת Git פרטי משלך ב-VPS. למד כיצד לארח מאגרי Git עם שליטה ופרטיות מלאים באמצעות GitLab, Gitea או מאגרים bare.

אירוח שרת Git משלך נותן לך שליטה מלאה על מאגרי הקוד שלך, מבטיח פרטיות ונמנע מהסתמכות על שירותי צד שלישי. בין אם אתה צריך מאגר bare פשוט או פלטפורמת אירוח Git מלאת תכונות, מדריך זה מכסה כמה אפשרויות להגדרת שרת Git פרטי ב-VPS שלך.
למה לארח שרת Git משלך?
- פרטיות מלאה: הקוד שלך נשאר בשרת שלך
- אין תלות בספק: שליטה מלאה על המאגרים שלך
- התאמה אישית: הגדר בדיוק איך שאתה רוצה
- חסכוני: שרת אחד למאגרים בלתי מוגבלים
- עמידה בתקנות: עמד בדרישות מגורי נתונים
- למידה: הבן את פנימי שרת Git
אפשרות 1: GitLab (מלא תכונות)
GitLab מספק פלטפורמת DevOps מלאה:
bash
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 קל משקל ועצמי:
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/
# צור שירות systemd
nano /etc/systemd/system/gitea.service
# הגדר והפעל Gitea
systemctl enable gitea
systemctl start giteaאפשרות 3: מאגר Git Bare (פשוט)
לאירוח Git בסיסי ללא ממשק אינטרנט:
bash
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 מאובטחת:
bash
adduser git
su - git
mkdir .ssh
chmod 700 .ssh
nano .ssh/authorized_keys
# הוסף מפתחות ציבוריים של מפתחים
chmod 600 .ssh/authorized_keys
# בדוק חיבור:
ssh git@השרת-שלךשיטות עבודה מומלצות לאבטחה
- השתמש במפתחות SSH במקום סיסמאות
- הפעל אימות דו-שלבי (GitLab/Gitea)
- גיבויים קבועים של מאגרים
- שמור על תוכנת שרת Git מעודכנת
- הגדר חומת אש להגבלת גישה
- השתמש ב-SSL/TLS לממשקי אינטרנט
- יישם בקרות גישה והרשאות
- עקוב אחרי לוגים לפעילות חשודה
אסטרטגיית גיבוי
גיבויים קבועים הם חיוניים:
bash
#!/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