Git sunucusu, kaynak kodu ve diğer çekirdek dosyaları içeren bir projenin deposunu barındırır. Çoğunlukla GitHub gibi dünya çapında bilinen Git barındırma hizmetlerine güvenebilirsiniz, ancak bazılarında durumlarda, daha fazla gizlilik, özelleştirilebilirlik ve kişisel Git sunucunuzu barındırmak daha iyidir. güvenlik.
Linux'ta özel bir Git sunucusunu nasıl kurabileceğinizi öğrenelim.
Git Sunucusu Kurmak için Ön Koşullar
Özel Git sunucunuzu kurmaya başlamadan önce yedek bir makineye erişiminiz olmalı veya bulut sağlayıcılarına abone olmalısınız. Yedek makineyi, yerel makinenizden bağlanacağınız ve Git işlemlerini gerçekleştireceğiniz bir Git sunucusu görevi görecek şekilde kuracağınız için bu önemlidir.
İyi tanımlanmış sistem gereksinimleri olmasa da Git sunucusunun işlevsel olması için bir gigabayt RAM yeterli olmalıdır. Ayrıca, makinede çalışan bir Linux dağıtımınız olduğundan emin olun.
Adım 1: Git'i Linux Sunucusuna İndirin ve Kurun
Söylemeye gerek yok, bir ön adım olarak Git'in Linux sunucunuzda kurulu olması gerekiyor. Bir terminali çalıştırın ve Git'i kurmak için Linux dağıtımınızın paket yöneticisini kullanın:
Debian/Ubuntu türevlerinde:
sudo uygun Yüklemek git
Açık Arch tabanlı dağıtımlar:
sudo pacman -S git
CentOS/RHEL/Fedora'da:
sudo dnf Yüklemek git
Git sisteminize yüklendikten sonra, Linux sisteminizi Git depolarınızı Git sunucusu olarak barındıracak şekilde yapılandırmak için sonraki adımlara geçin.
2. Adım: Git Kullanıcı Hesabı Oluşturun
Linux sunucunuza SSH üzerinden bağlanın, RDP veya diğer herhangi bir uzaktan erişim protokolü. Veya sunucu olarak yedek bir bilgisayar kullanıyorsanız, onu açın ve depolarınızı yönetmek için yeni bir kullanıcı hesabı oluşturun.
ssh kullanıcı adı@adres
sudo useradd git
Yeni kullanıcı eklendikten sonra, su emretmek:
su git
Adanmış oluşturmak git kullanıcı hesabı, Git sunucunuza bağlanan istemcilerin makinedeki kaynaklara sınırlı görünürlük ve erişime sahip olmasını sağlayan bir güvenlik protokolüdür. Bu, birden çok ekip üyesinin sunucunuza erişeceği grup projelerinde güvenli bir şekilde işbirliği yapmanızı sağlar.
3. Adım: .ssh Dizinini Oluşturun ve Yetkili Anahtarları Ekleyin
Yaratmak .ssh Bu Git sunucusuna kimin erişeceğini belirleyen ortak anahtarları ve diğer önemli verileri depolamak için dizin gereklidir. Başlamak için, daha önce oluşturduğunuz git kullanıcı hesabına giriş yapın, .ssh dizinini oluşturun ve erişimi yalnızca git kullanıcısıyla kısıtlayın:
ssh git@adres
mkdir.ssh
chmod 700 .ssh/
.ssh/yetkili_anahtarlara dokunun
kullanarak dizin erişim izinlerini güvenli hale getirin. chmod Sizden başka kimsenin değişiklik yapamayacağından emin olmak için komut. içine taşı .ssh dizini ve kullanarak yeni bir "yetkili_anahtarlar" dosyası oluşturun. dokunmak emretmek.
CD.ssh
ssh-keygen -t rsa #yalnızca bir id_rsa.pub dosyanız YOKSA bu komutu çalıştırın
kediid_rsa.pub
Git sunucusuna erişim vermek istediğiniz istemcilerin SSH ortak anahtarları ile bu dosyayı güncellemeniz gerekecektir. SSH oturumunu askıya alın ve .ssh/id_rsa.pub bir metin düzenleyici kullanarak yerel makinenizde dosya veya kedi komutu. Bu dosya, yetkili_anahtarlar dosyasına yazıldığında, Git sunucusuna parola olmadan erişmenizi sağlayacak olan genel şifreli anahtarınızı içerir.
CD.ssh
vi yetkili_anahtarları
Genel anahtarı kopyalayın ve Git sunucusuna yeni bir SSH bağlantısı kurun. içine taşı .ssh dizininde, yetkili_keys dosyasını bir metin düzenleyiciyle açın ve ortak anahtarı yapıştırın. Değişiklikleri Kaydet ve Çık.
O andan itibaren, sunucuya herhangi bir şifre olmadan bağlanabilmeniz gerekir. Sunucuya bağlanacak her makine için bu adımı tekrarlayın.
Adım 4: Tüm Depolarınızı Depolayacak Bir Dizin Oluşturun
Linux sunucusuna erişin ve bir dizin oluşturun veya kök dizin olarak yerleşik bir dizin kullanın. Bunun, tüm depolarınızın saklanacağı dizin olduğunu unutmayın. Bu, projelerin daha düzenli organizasyonu adına iyi bir uygulamadır.
mkdir dizin_adı
Dizini oluşturduktan sonra Git sunucusunun kurulumunu tamamlamak için bu kılavuzdaki son adıma geçin.
Adım 5: Yeni Bir Proje Ekleyerek Geliştirmeye Başlayın
Artık Git sunucusunu kurma işlemini pratik olarak bitirdiniz. Şimdi sadece depoları başlatarak ve uzak kaynağı yerel makinenize ekleyerek geliştirmeyi başlatmanız gerekiyor. kullanarak üst dizine taşıyın. CD komut verin ve bir .git proje dizini:
CD Ana Dizin
mkdiryeni proje.git
Şimdi, çıplak bir git deposu başlatın:
git init --çıplak
Depo başlatıldığında, uzak Origin'i yerel makinenize eklemenin zamanı geldi:
git uzaktan kaynak adı git ekle@adres:new_project.git
İşlerin sunucu tarafında yapmanız gereken tek şey bu. Artık kimliği doğrulanmış herhangi bir istemci, gönderme, çekme, birleştirme, klonlama ve daha fazlası gibi normal Git işlemlerini gerçekleştirebilir. Yeni projelere başlamak için her yeni proje oluşturduğunuzda bu adımı tekrarlamanız gerekecektir.
Bir git push işlemi gerçekleştirerek işlevselliğini test edin:
dokunma test dosyası
git test dosyası ekle
git taahhüt -m "test dosyası"
git push adı ustası
git klon git@adres: yeni_proje.git
Dosyanız başarıyla uzak kaynağa aktarılacaktır. Push işleminin çalışıp çalışmadığını çapraz kontrol etmek için depoyu klonlayabilirsiniz ve test dosyasını depoda bulmalısınız.
Git Sunucunuz için Güvenlik İpuçları
Git sunucusu çalışır durumda ve çalışır durumdayken, güvenlik düzeyine çok dikkat etmelisiniz. kişisel sunucunuzdur ve onu dışarıdan korumak ve korumak tamamen sizin sorumluluğunuzdadır. tehditler. Benimsenmesi gereken en iyi güvenlik uygulamalarından bazıları şunlardır:
- Şifre girişini devre dışı bırak
- Varsayılan kabuğu git-shell olarak değiştirin. Bu, oturum açmış kullanıcının git olmayan herhangi bir komut vermesini kısıtlar.
- SSH için özel bir bağlantı noktası kullanın
- Kök kullanıcı girişini devre dışı bırak
- Verileri düzenli olarak yedekleyin
Linux sunucunuzu saldırganlardan korumak ve yetkisiz erişimi engellemek için uygulayabileceğiniz bu tür birçok güvenlik yapılandırması ve güvenlik önlemi vardır.