Rehber 12 Temmuz 2026 · 6 dakika okuma

Sıfırdan SSH ile Sunucuya Bağlanma Rehberi (2026)

SSH ile sunucuya güvenli bağlanmayı sıfırdan öğrenin: anahtar üretimi, kullanıcı/port seçimi, ilk bağlantı, güvenlik kontrolleri ve sorun giderme.

SSH (Secure Shell), VDS/VPS ya da dedicated sunucunuza yönetim erişimi sağlayan temel yoldur. Doğru kurulum yapılmadığında en sık yaşanan sorunlar; kimlik doğrulama hataları, yanlış port/yönetici kullanıcı, güvenlik duvarı (firewall) blokları ve anahtar yerine parola kullanımıdır. Bu rehberde sıfırdan başlayarak SSH anahtarı üretme, ilk bağlantıyı kurma, ardından erişimi güvenle sürdürme adımlarını göreceksin. Amaç; senin “bağlandım ve yönetebiliyorum” noktasına net bir şekilde ulaşmanı sağlamak.

SSH bağlantısı için önce doğru bilgileri topla

SSH ile bağlanmak için sağlayıcının panelinden şu bilgileri netleştir:

  • Sunucu IP adresi: IPv4 (ve gerekiyorsa IPv6)
  • SSH portu: Çoğu sistemde 22; bazı sağlayıcılarda farklı olabilir
  • Kullanıcı adı: Örnekler: root (riskli), ubuntu, debian, centos. Sağlayıcı dokümanı belirleyicidir.
  • Kimlik doğrulama yöntemi: Parola yerine anahtar (SSH key) hedeflenmelidir.

En sık yapılan hata: yanlış kullanıcı/port

Örneğin sağlayıcı “IP: x.x.x.x, port: 22, kullanıcı: ubuntu” diyorsa; sen “root ve 2222” denersen bağlantı ilerlemez. Bu yüzden ilk adımda panel ekran görüntülerini not etmek, saat kazandırır.

Adım 1: SSH anahtarı (key pair) oluştur

Anahtar yöntemi, parola yöntemine göre daha güvenlidir ve otomasyon (script), kimlik doğrulama kalıcılığı için idealdir.

Aşağıdaki komutlar yerel bilgisayarında çalışır.

Windows (PowerShell)

  1. PowerShell’i yönetici olarak aç.
  2. Anahtar üret:
ssh-keygen -t ed25519 -C "netkyas-ssh" 
  1. Dosya yolu için varsayılan genelde uygundur (ör. C:\Users\kullanici\.ssh\id_ed25519).
  2. Parola sorarsa, tercihine göre boş bırakabilirsin. Güvenlik için parola eklemek mantıklıdır; ancak otomasyon kullanacaksan Agent (ssh-agent) kurulumunu da düşün.

Linux/macOS

Terminalde:

ssh-keygen -t ed25519 -C "netkyas-ssh"

Anahtar dosyaları genellikle ~/.ssh/id_ed25519 ve ~/.ssh/id_ed25519.pub olur.

“public key” nedir, hangisini göndereceğim?

  • Gönderilecek dosya: id_ed25519.pub (public key)
  • Yerel bilgisayarda saklanan özel anahtar: id_ed25519 (private key)

Public key içeriğini görmek için:

cat ~/.ssh/id_ed25519.pub

Adım 2: Public key’i sunucuya ekle

Bu adım iki şekilde yapılır: - Sağlayıcı paneli “SSH Key” alanı sunuyorsa oraya yapıştırırsın. - Panel yoksa sunucuya ilk erişim (bazı sistemlerde sağlanan geçici yöntemle) yapılıp ~/.ssh/authorized_keys içine eklenir.

Sağlayıcı paneli varsa (en pratik yöntem)

  1. NetKıyas’ta gördüğün sağlayıcıya ait kontrol panelinde “SSH Key”, “Access” ya da “User” benzeri menüyü aç.
  2. id_ed25519.pub içeriğini yapıştır.
  3. Değişiklikleri kaydet.

Bu yöntem, kullanıcıdan kullanıcıya en az riskle taşır.

Panel yoksa: authorized_keys yöntemi (genel akış)

Sunucuya geçici erişim sağlandıktan sonra hedef kullanıcı için: - ~/.ssh klasörü yoksa oluştur - authorized_keys dosyasına public key ekle

Bu işlem genelde şu kavramlarla yönetilir: - ~/.ssh/authorized_keys içine satır satır public key - Dosya izinleri: 700 klasör, 600 dosya

İzinler yanlışsa SSH “key kabul etmiyorum” hatası verebilir. Bu yüzden izinleri düzeltmek kritik olur.

Adım 3: İlk SSH bağlantısını kur

Artık sunucu IP, port ve kullanıcı adı net.

Anahtar ile bağlanma komutu

Linux/macOS/Windows PowerShell’de (OpenSSH):

ssh -i ~/.ssh/id_ed25519 kullanici@sunucu-ip -p 22
  • -i özel anahtar dosyanı belirtir.
  • -p portu ayarlar.

İpucu: Port 22 ise -p 22 yazmak zorunlu değildir.

İlk bağlantıda host fingerprint uyarısı

İlk kez bağlanırken şu tarz bir uyarı görürsün: - “The authenticity of host ... can’t be established”

Burada hedef: sağlayıcının verdiği host key fingerprint’i ile senin ekranda gördüğün değeri doğrulamak. Doğrulama yapmadan yes deyip devam etmek riskli olabilir.

Adım 4: Bağlantı güvenliğini düzgün ayarla

SSH’ye bağlandın; sıra güvenlikte “varsayılanlar”ı kontrol etmekte.

Kontrol listesi (hedef: parola kapalı, anahtar aktif)

Sunucunda (root ya da yetkili kullanıcı ile):

  1. Parola ile giriş kapalı mı? - SSH konfigürasyonunda PasswordAuthentication no olmalı.
  2. Anahtar ile giriş açık mı? - PubkeyAuthentication yes olmalı.
  3. Yetkisiz kullanıcılar/izinler düzgün mü?
  4. Port doğru mu? - Sağlayıcı farklı port önerdiyse aynı port kullan.

Genel dosya yolu dağıtıma göre değişebilir ama en yaygın konum: - /etc/ssh/sshd_config

Ne zaman “root” yerine standart kullanıcı kullanmalısın?

  • Günlük erişim için standart kullanıcı (ör. ubuntu/debian) kullanıp gerektikçe sudo ile yönetmek daha güvenlidir.
  • Root ile sürekli giriş; loglarda risk artışı ve yanlış komutta geniş etki anlamına gelir.

Dosya izinleri: anahtar kabul sorunlarının en yaygın kökü

Şu hatalar sık görülür: - “Permission denied (publickey)” - “Server refused our key”

Bu tür hatalarda hızlı kontrol: - Yerel private key izinleri (Linux/macOS): chmod 600 ~/.ssh/id_ed25519 - Sunucudaki ~/.ssh ve authorized_keys izinleri: klasör 700, dosya 600

Adım 5: Bağlantıyı kalıcı ve konforlu hale getir (SSH config)

Her seferinde komut yazmak yerine ~/.ssh/config dosyasında tanım yap.

Örnek (Linux/macOS/Windows git bash veya PowerShell’de de benzer mantık):

Host ornek-vps
  HostName sunucu-ip
  User kullanici
  Port 22
  IdentityFile ~/.ssh/id_ed25519

Sonra sadece:

ssh ornek-vps

gibi bağlanırsın.

SSH bağlantısı sorun giderme: en net 10 senaryo

Aşağıdaki tabloda, hata mesajı benzerliğine göre en hızlı çözümü bul.

Belirti / hata mesajı En olası sebep Net kontrol adımı
Permission denied (publickey) Yanlış key ya da sunucuda public key yok Sunucunun panelindeki key ile local id_ed25519.pub aynı mı kontrol et
Connection timed out Firewall / port kapalı / yanlış IP Portu doğrula; sağlayıcı güvenlik grubunda SSH açık mı?
Connection refused SSH servisi çalışmıyor veya yanlış port sshd durumu ve doğru port kullanımı
Host key verification failed Host key değişti (IP yeniden kullanımı vb.) Sağlayıcı doğrulaması yap; config’te old data temizle
No route to host Ağ erişimi yok IP doğru mu, lokasyon/route engeli var mı
Bad configuration option (sshd_config) Konfigürasyon hatası sshd -t (test) ile syntax kontrol
Yavaş bağlantı DNS/route gecikmesi IP ile bağlanmayı dene, DNS’i atla
Parola soruyor ama kapalı PasswordAuthentication no Anahtar yönteminin aktif olduğundan emin ol
Sık kopmalar Keepalive yok, ağ kararsız ServerAliveInterval ayarla
Yetki hatası Kullanıcının home klasörü/izinleri yanlış ~/.ssh izinlerini ve home ownership’ı kontrol

Mini test komutları (bağlantı türünü ayırmak için)

  • Port açık mı sorusu için:
nc -vz sunucu-ip 22

nc yoksa telnet veya sağlayıcı paneli ile port kontrolü yapılabilir.

Port 22 mi farklı mı? Doğru tercihi sayılarla netleştir

Port değiştirmek tek başına güvenlik sağlamaz; ama “robot taramalarını azaltma” etkisi olur. En kritik olan; sağlayıcının firewall/kontrol paneli seviyesinde SSH portunun açık olması ve gerçek kullanıcı/anahtar doğrulamasının çalışmasıdır.

Net yaklaşım: - Sağlayıcı varsayılan olarak 22 kullanıyorsa 22 ile başla. - 22 kapalıysa ve sağlayıcı 2222 gibi özel port veriyorsa o portu birebir kullan. - Deneme amaçlı her portu rastgele açma; loglarda güvenlik izlerini artırır.

SSH ile yönetimi büyüt: rutin güvenlik uygulamaları

Bağlantıyı kurmak kadar sürdürmek de önemlidir.

Fail2ban gibi servisler hangi problemi çözer?

  • Brute-force (parola denemeleri) saldırılarına karşı otomatik bloklama sağlar.
  • Ama senin sisteminde parola kapalıysa etkisi azalır; yine de diğer anomali denemeleri için faydalı olabilir.

Güncelleme ve anahtar yönetimi

  • SSH anahtarlarını düzenli aralıklarla gözden geçir.
  • Yeni kullanıcı eklendiğinde sadece gerekli public key’i ekle.
  • Gereksiz eski anahtarları authorized_keys içinden temizle.

Sonuç: Şimdi aksiyon planı

Bu rehberle ilk hedefin: IP/port/kullanıcı bilgilerini doğrulayıp anahtar tabanlı SSH ile bağlanmak. En hızlı ilerlemek için sırayla şunları yap: (1) ed25519 key üret, (2) public key’i sunucuya ekle, (3) ssh -i ... -p ... komutu ile ilk bağlantıyı kur, (4) PasswordAuthentication ayarını anahtar lehine kontrol et, (5) ~/.ssh/config ile yönetimi kalıcı hale getir.

Bağlandıktan sonra bir sonraki adım olarak güvenlik katmanlarını (firewall kuralları, log izleme, yetki sınırları) yapılandır. Böylece SSH sadece “erişim aracı” değil, kontrollü bir yönetim kanalına dönüşür.

Etiketler: #ssh #vds #vps #sunucu yönetimi #güvenlik #anahtar #fail2ban

Hosting karşılaştırması yapmaya hazır mısın?

100+ firmanın fiyatlarını tek tıkla karşılaştır, en uygun paketi bul.

Hosting Karşılaştır →

İlgili Yazılar

0 ürün seçildi