SSH Nedir? SSH Key ile Güvenli Sunucu Erişimi
Merhaba! Bu yazımızda SSH nedir, SSH key nedir ve SSH anahtarı kullanarak uzak sunuculara nasıl güvenli erişim sağlayabileceğinizi adım adım anlatacağız.
SSH Nedir?
SSH (Secure Shell), uzak bilgisayar bağlantılarını güvenli şekilde gerçekleştiren bir ağ protokolüdür. Şifreleme (encryption) temelli yapısı sayesinde, verilerin üçüncü kişilerce okunmasını engeller. Özellikle sistem yöneticileri, geliştiriciler ve DevOps uzmanları tarafından sunucu yönetiminde sıkça kullanılır.
SSH Anahtarı Nedir?
SSH anahtarı nedir sorusuna basitçe yanıt verelim: SSH anahtarları, uzak sistemlere şifre girmeden erişim sağlayan güvenli kimlik doğrulama yöntemleridir. Bir public key (açık anahtar) ve bir private key (gizli anahtar) olmak üzere iki parçadan oluşurlar.
Public key uzak sunucuya yüklenirken, private key sizin cihazınızda kalır. Böylece şifre girmeden güvenli bir SSH erişimi sağlanır.
Public Key ve Private Key Nedir?
Public key sunucuda saklanır ve kimlik doğrulamada kullanılır. Private key ise kullanıcı tarafında kalmalı ve gizli tutulmalıdır. Her iki anahtar birlikte çalışarak, parolasız ama güvenli bir oturum açma sağlar.
SSH Key Oluşturma Adımları (Ubuntu 20.04)
1. Public ve Private Key Çifti Oluşturma
Terminalde aşağıdaki komutu çalıştırarak SSH key oluşturma işlemini başlatın:
$ ssh-keygen
RSA anahtar üretmek için:
$ ssh-keygen -t rsa -f any_user
Komut tamamlandığında, ~/.ssh/ klasöründe iki dosya oluşur:
- id_rsa.pub → Public key
- id_rsa → Private key
2. Public (Genel) Anahtarı Sunucuya Kopyalama
Public key’inizi uzak sunucuya eklemek için aşağıdaki komutu kullanabilirsiniz:
$ ssh-copy-id username@remote_host
Eğer bu yardımcı program yoksa, public key içeriğini manuel olarak ~/.ssh/authorized_keys dosyasına yapıştırabilirsiniz.
3. Uzak Sunucuya SSH ile Bağlanma
Artık parolasız bir şekilde SSH ile bağlanabilirsiniz:
$ ssh username@remote_host
Bağlantı başarılı olduğunda, artık güvenli bir SSH erişimi sağlamış olursunuz.
4. Şifre ile Girişleri Kapatma
SSH anahtarları kullanılıyorsa, şifreli girişleri kapatarak güvenliği artırabilirsiniz:
$ sudo nano /etc/ssh/sshd_config
Aşağıdaki satırı düzenleyin:
PasswordAuthentication no
Sonrasında servisi yeniden başlatın:
$ sudo systemctl restart ssh
Sonuç
Artık SSH key ile güvenli, hızlı ve şifresiz bir bağlantı sağlayabilirsiniz. Bu yöntem, özellikle çoklu sunucu erişimlerinde zaman kazandırır ve parola tabanlı riskleri ortadan kaldırır.
İyi çalışmalar!
Kaynak: latestsoftwaredevelopers.com