SSH Nedir? Windows, Mac ve Linux İçin SSH Key Oluşturma + GitHub Kurulumu

Bu kapsamlı rehberde SSH nedir, SSH key nasıl oluşturulur, Windows, Mac ve Linux üzerinde kurulum adımları, GitHub SSH key ekleme ve Permission denied (publickey) hata çözümlerini adım adım öğreneceksiniz.

Kısa özet: SSH key ile şifresiz ve güvenli bağlantı kurabilir, GitHub push/pull işlemlerini parola girmeden gerçekleştirebilirsiniz.

SSH Nedir?

SSH (Secure Shell), uzak sunuculara güvenli bağlantı kurmak için kullanılan şifreli ağ protokolüdür.

Özellikle Linux sunucu yönetimi, DevOps, GitHub bağlantıları ve CI/CD süreçlerinde yaygın olarak kullanılır.


SSH Key Nedir?

SSH key sistemi iki parçadan oluşur:

  • Private Key → Bilgisayarınızda kalır
  • Public Key → Sunucuya veya GitHub’a eklenir

Böylece şifre girmeden güvenli kimlik doğrulama sağlanır.


Linux / Mac İçin SSH Key Oluşturma

ssh-keygen -t ed25519 -C "mail@example.com"

Daha eski sistemler için RSA:

ssh-keygen -t rsa -b 4096 -C "mail@example.com"

Dosyalar:

  • ~/.ssh/id_ed25519
  • ~/.ssh/id_ed25519.pub

Windows İçin SSH Key Oluşturma

Windows PowerShell veya Git Bash üzerinden:

ssh-keygen -t ed25519 -C "mail@example.com"

Key dosyaları genellikle şu dizinde oluşur:

C:\Users\KullaniciAdi\.ssh\
Öneri: Windows için Git Bash kullanımı genellikle daha rahattır.

Public Key’i Sunucuya Kopyalama

ssh-copy-id username@server-ip

Alternatif manuel yöntem:

cat ~/.ssh/id_ed25519.pub

Çıktıyı sunucudaki şu dosyaya yapıştırın:

~/.ssh/authorized_keys

GitHub SSH Key Ekleme

1. Public Key’i Görüntüle

cat ~/.ssh/id_ed25519.pub

2. GitHub’a Ekle

GitHub → Settings → SSH and GPG Keys → New SSH Key

Kopyalanan public key’i yapıştırın.

3. Test Et

ssh -T git@github.com

Başarılıysa şu mesaj gelir:

Hi username! You've successfully authenticated.

Copy-Paste Hazır Git Komutları

git remote set-url origin git@github.com:username/repo.git
git pull
git push

Permission Denied (publickey) Hatası Çözümü

Hata

Permission denied (publickey)

Çözüm 1 — Key Yüklü mü?

ssh-add ~/.ssh/id_ed25519

Çözüm 2 — Yetki Sorunu

chmod 700 ~/.ssh
chmod 600 ~/.ssh/id_ed25519
chmod 644 ~/.ssh/id_ed25519.pub

Çözüm 3 — authorized_keys Yetkisi

chmod 600 ~/.ssh/authorized_keys

Çözüm 4 — SSH Config Kontrolü

Host github.com
  HostName github.com
  User git
  IdentityFile ~/.ssh/id_ed25519

Şifreli Girişi Kapatma (Opsiyonel)

sudo nano /etc/ssh/sshd_config
PasswordAuthentication no
sudo systemctl restart ssh

Sık Sorulan Sorular

SSH key daha güvenli mi?

Evet, parola tabanlı girişe göre çok daha güvenlidir.

GitHub için hangi key tipi?

Modern kullanım için ed25519 önerilir.

Mac’te SSH nerede?

~/.ssh/ klasöründe bulunur.

Etiketler: ssh nedir, ssh key oluşturma, github ssh key, permission denied publickey, mac ssh, windows ssh

Latest Software Developers - Yazılım Blog Yazarı Profil Resmi

Yazar

LatestSoftwareDevelopers

Blog where the most up-to-date software is followed. (En güncel yazılımların takip edildiği blog sitesi)

Devops ile ilgili yorumlar

Yorum Paylaş

EMail Zorunlu alanlar * *