SSH NEDİR

SSH (Secure Shell), ağ üzerinden güvenli bir şekilde uzak sistemlere erişim sağlamak için kullanılan kriptografik bir protokoldür. Özellikle sistem yöneticileri tarafından sunuculara bağlanmak, dosya transferi yapmak ve komut çalıştırmak amacıyla yaygın şekilde kullanılır.

SSH’nin Temel Özellikleri

  • Şifreleme (Encryption): Tüm veri iletimi uçtan uca şifrelenir.
  • Kimlik Doğrulama (Authentication): Kullanıcı doğrulaması hem şifreyle hem de anahtar tabanlı yapılabilir.
  • Veri Bütünlüğü (Data Integrity): Aktarılan verinin değiştirilmediği doğrulanır.

🛡️ SSH ile Şifreli (Password Authentication) Erişim

En temel SSH kullanım şekli, kullanıcı adı ve parola ile oturum açmaktır.

Kurulum ve Erişim:

Sunucuya OpenSSH yüklenmelidir :

sudo apt install openssh-server

Sunucu IP adresine bağlanmak için istemci tarafında şu komut kullanılır:

ssh kullaniciadi@sunucu_ip

Bağlantı sırasında sistem şifre ister. Doğru şifre girildiğinde bağlantı kurulur.


Avantajlar:

  • Hızlı kurulum
  • Her yerden erişim

Dezavantajlar:

  • Şifre tahminine dayalı saldırılara (brute-force) açıktır
  • Güvenlik seviyesi, kullanılan parolanın karmaşıklığına bağlıdır

🔐 SSH’de Kullanılan Anahtar Şifreleme Algoritmaları

SSH protokolü, özellikle şifresiz (anahtar tabanlı) erişimde asimetrik şifreleme yöntemini kullanır. Bu sistemde biri açık anahtar (public key), diğeri özel anahtar (private key) olmak üzere iki anahtar bulunur. Açık anahtar sunucuya kopyalanırken, özel anahtar sadece istemcide kalır ve kimlik doğrulama bu çift üzerinden sağlanır.

Aşağıda SSH’de yaygın olarak kullanılan bazı şifreleme algoritmaları yer almaktadır:

  • RSA (Rivest–Shamir–Adleman): En klasik ve yaygın kullanılan algoritmadır. Genellikle 2048 veya 4096 bit anahtar uzunluğu tercih edilir. Güvenilirdir ama günümüzde daha modern alternatifleri vardır.
  • ECDSA (Elliptic Curve Digital Signature Algorithm): Eliptik eğri kriptografisine dayanır. RSA’ya göre daha küçük anahtarlarla benzer güvenlik sağlar. Ancak her sistemde desteklenmeyebilir.
  • ED25519: Modern, hızlı ve güvenliği yüksek bir algoritmadır. Düşük kaynak tüketimi ve sabit boyuttaki anahtarı ile hem güvenli hem de performanslı bir seçenektir. Yeni SSH yapılandırmalarında önerilir.

Bu algoritmalar arasında seçim yaparken kullanım amacına, sistemin desteklediği sürümlere ve güvenlik ihtiyaçlarına göre karar verilmelidir. Örneğin, otomasyon ve hız gerekiyorsa ED25519 tercih edilebilir; maksimum uyumluluk aranıyorsa RSA daha uygun olabilir.

* Anahtar çiftini oluşturmadan önce dikkatinizi çekmek isteğim bir nokta ise şudur anahtar çiftini bağlanacağınız hedef cihazda değil de kullanacağınız hedef cihazda oluşturmanızı daha verimli ve sağlıklı olur. Güvenlik açısından da fayda teşkil eder.

Adımlar:

  1. Anahtar Çifti Oluşturma (istemcide) :

Burada RSA algoritması kullanılarak bir anahtar çifti oluşturuluyor 4096 BİT tanımlanıyor.

Burada oluşturulan dosyalar linux dizininde ki home(ev) dizinini temsil eder ev deki (.ssh) klasörünü ifade eder

Oluşturulan dosyalar ( Windows ) :

  • C:\Users\KullanıcıAdınız\.ssh\id_rsa (özel anahtar)
  • C:\Users\KullanıcıAdınız\.ssh\id_rsa.pub (açık anahtar)

Açık Anahtarı Sunucuya Kopyalama :

Artık şu komutla şifresiz erişim sağlanabilir:

PasswordAuthentication no → Şifre ile kimlik doğrulamayı devre dışı bırakır.

PubkeyAuthentication yes →  Genel anahtar (SSH key) ile kimlik doğrulamayı etkinleştirir.

ChallengeResponseAuthentication no → Ek doğrulama yöntemlerini (örneğin, CAPTCHA, OTP) kapatır.

AuthorizedKeysFile .ssh/authorized_keys → Yetkili genel anahtarların bulunduğu dosyayı belirtir.

Sonrasında ise service restart ssh veya systemctl ssh restart yazılarak ayarları servis tekrar başlatılır ve yeni konfigürasyon ayarları çalışır duruma geçer.

🛡️ YubiKey ile SSH Kullanımı Nedir ?

YubiKey, fiziksel bir güvenlik anahtarıdır. USB veya NFC üzerinden çalışan bu cihaz, şifre yerine geçebilecek veya şifreyi tamamlayacak ikinci bir güvenlik katmanı sunar. SSH ise, uzaktaki bir bilgisayara güvenli bağlantı kurmak için kullanılan bir protokoldür. Özellikle sunuculara erişimde yaygındır.

İkisini bir araya getirdiğimizde, sunucuya bağlanmak için hem özel anahtarınıza hem de fiziksel olarak YubiKey cihazına ihtiyacınız olur. Yani birinin sadece şifrenizi ya da anahtarınızı çalması yetmez, YubiKey’in kendisi olmadan bağlanamaz.

🔐 Neden YubiKey ile SSH Kullanmalı ?

1. Fiziksel Güvenlik Katmanı

Bilgisayar korsanları, internette dolaşan şifreleri veya özel anahtarları ele geçirebilir. Ama YubiKey fiziksel bir cihaz olduğundan çalınması çok daha zordur. Cihaz yanınızdaysa, erişim sizdedir.

2. Anahtarlar Cihaz Dışına Çıkmaz

YubiKey, özel anahtarınızı içinde saklar. Bu anahtar dış dünyaya hiçbir zaman gönderilmez. Yani sunucuyla bağlantı kurarken sadece “imzalama işlemi” yapılır. Anahtar güvendedir.

3. Güvenli Kimlik Doğrulama

SSH bağlantısında genellikle özel bir anahtar (private key) kullanılır. Bu anahtar bilgisayarda saklanırsa, cihaz çalınırsa veya ele geçirilirse sistemlere erişim sağlanabilir. YubiKey bu riski ortadan kaldırır.

🧠 İşleyiş Mantığı

  1. YubiKey, bir akıllı kart gibi davranır. İçinde bir GPG veya PIV (Personal Identity Verification) modülü çalışır.
  2. SSH bağlantısı kurmak isteyen kullanıcı, terminalde bir komut verdiğinde:
    • Sistem YubiKey’e bir “imza isteği” yollar.
    • YubiKey cihazı takılıysa ve PIN girilmişse, bu isteği imzalar ve onay verir.
    • Bağlantı gerçekleşir.

Bu işlem saniyeler içinde olur ama ardında güçlü bir kriptografi çalışır.

💡 Günlük Hayatta Nasıl Kullanılır?

  • Sunuculara SSH ile bağlanırken, normalde şifre veya yazılı bir anahtar girersiniz. YubiKey olduğunda, anahtar cihazda saklanır ve fiziksel olarak sizden onay alır.
  • Laptop’ınızı biri çalsa bile, YubiKey olmadan sunucuya erişemez.
  • Çoklu sunucularda ya da uzaktan çalışan ekiplerde, bu cihazlar kullanılarak erişimler çok daha güvenli hale getirilebilir.

⚠️ Unutmamanız Gerekenler

  • YubiKey kaybolursa, yedeği veya kurtarma anahtarınız olmalı. Yoksa sunucuya bir daha erişemeyebilirsiniz.
  • PIN kodunuzu unutmayın, çünkü cihaz sizden PIN ile onay ister.
  • Yedekleme stratejiniz olmalı. En iyi uygulama, 1 anahtar ve 1 yedek cihaz taşımaktır.

🚀 Sonuç: Siber Güvenlikte Yeni Seviye

SSH zaten güvenli bir protokol, ancak YubiKey ile birleştiğinde bu güvenlik zirveye çıkar. Fiziksel kimlik doğrulama sayesinde sadece şifrelere güvenmekten kurtuluruz. Kritik sistemlere erişim artık sadece bilgiyle değil, donanım ve bilgi birleşimiyle mümkün olur.

Bu, özellikle devlet sistemleri, kurumsal sunucular ya da hassas veri içeren altyapılar için geleceğe dönük güvenlik yaklaşımıdır.

Scroll to Top