Get In Touch
Kadıköy, İstanbul
mail@oguzerdogan.com
Ph: +90 554 524 0164
Back

Git Servisi için SSH Key Oluşturma (Bitbucket)

Selam bu yazıda Bitbucket için ssh key oluşturmayı göstereceğim. Git ile çalışırken sürekli authentication işlemlerinden sıkıldıysanız bu yazı tam size göre.

Bir kere ayarlamaları yapalım ve sonrasında kafamız rahat bir şekilde çalışalım.

Her ne kadar BitBucket olarak belirtsem de farklı Git servisleri için de benzer işlemleri uygulayabilirsiniz.

İşlemleri MacOS işletimine sahip cihaz için anlatacağım, Windows için de sisteminize Git Bash yükleyerek benzer adımlar uygulanabilir.

OpenSSH

Mac cihazlarda OpenSSH yüklü bir şekilde gelmesi gerek. Kontrol etmek için;

ssh -V

OpenSSH yüklü ise aşağıdaki şekilde bir çıktı almanız gerekiyor.

OpenSSH_8.6p1, LibreSSL 3.3.6

Eğer yüklü değilse:

brew install openssh

SSH anahtar çiftini oluşturma

Aşağıdaki komutla çalıştıracağınız SSH anahtarları bulunduğunuz dizinde oluşturulur. Bu sebeple kök dizindeki .ssh dizinine gidelim, böyle bir klasör yoksa oluşturabilirsiniz.

cd ~/.ssh

SSH anahtarı oluşturmak için aşağıdaki koddan faydalanabilirsiniz.

ssh-keygen -t ed25519 -b 4096 -C "{username@emaildomain.com}" -f {ssh-key-name}

Burada;

username@emaildomain.com BitBucket’ta kullandığınız mail adresi. (Farklı bir git servisi kullanıyorsanız orada kayıtlı olan mail adresiniz.)

ssh-key-name ise anahtarlar için oluşacak dosya ismi.

Komutu çalıştırdığınızda sizden bir parola girmenizi isteyecek. Kişisel tavsiyem eğer sizden başkası bilgisayarınızı kullanmıyorsa burayı boş bırakarak enter diyerek geçmeniz. Aksi taktirde git push, git pull, git fetch gibi komutlar kullandığınızda SSH sizden bu parolayı girmenizi isteyecek. Burada parola belirlemek cihaza erişimi olan diğer kullanıcıların anahtarlarınızı kullanmasını engeller.

İşlem tamamlandığında ssh-keygen 2 farklı dosya oluşturacak.

  • {ssh-key-name}private key.
  • {ssh-key-name}.pubpublic key.

Oluşturulan SSH keyi SSH Agent’a ekleme.

SSH anahtarını SSH aracınıza (ssh-agent) eklemek için:

ssh-key-name} özel anahtarın adıyla değiştirerek aşağıdaki komutu çalıştırın:

ssh-add ~/.ssh/{ssh-key-name}

Bitbucket’e bağlanırken doğru SSH anahtarının kullanıldığından emin olmak için SSH yapılandırma dosyanızı (~/.ssh/config) aşağıdaki şekilde güncelleyin eğer config dosyası yoksa oluşturun:

Host bitbucket.org
  AddKeysToAgent yes
  IdentityFile ~/.ssh/{ssh-key-name}

Bitbucket’a SSH Anahtarı Tanıtma

SSH anahtarlarımızı oluşturduktan sonra Bitbucket içerisinde bunu tanıtmamız gerekiyor. Bunun için;

  1. Settings altındaki Personal Settings kısmına geliyoruz. (Avatar kısmının altında bulunuyor.)
  2. Security kısmı altında SSH keys alanını seçiyoruz.
  3. Add key seçiyoruz.
  4. Çıkan pencerede Label kısmınatanımlayıcı herhangi bir başlık bilgisi girerek Key* kısmına oluşturduğunuz anahtar çiftlerinden .pub olan dosyanın içeriğini yapıştırarak Add key seçiyoruz.
  5. Bunun için aşağıdaki kodu kullanabilirsiniz
cat ~/.ssh/{ssh-key-name}.pub | pbcopy .

İçerik aşağıdakine benzer bir yapıda olacaktır.

ssh-ed25529 LLoWYaPswHzVqQ7L7B07LzIJbntgmHqrE40t17nGXL71QX9IoFGKYoF5pJKUMvR+DZotTm user@example.com

Not:

Anahtar başarıyla eklenirse iletişim kutusu kapanır ve anahtar SSH anahtarları sayfasında listelenir.

Bu SSH anahtarı geçersiz hatasını alırsanız, ortak anahtarın (.pub dosyası) tüm içeriğini kopyaladığınızı kontrol edin.

SSH kimlik doğrulamanızın çalışıp çalışmadığını kontrol etme

işlemleri test etmek için terminal üzerinde aşağıdaki komutu yazalım.

ssh -T git@bitbucket.org

Eğer SSH başarılı bir şekilde bağlantı kurabilirse aşağıdaki şekilde bir çıktı alacaksınız:

authenticated via ssh key.

You can use git to connect to Bitbucket. Shell access is disabled

Kaynak:

I

Oğuz
Oğuz
http://www.oguzerdogan.com
Data Delivery Guy

Leave a Reply

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

We use cookies to give you the best experience. Cookie Policy