Sunucularınızla güvenli bir şekilde etkileşim kurmak, modern web geliştirmenin ve sistem yönetiminin temel taşlarından biridir. Özellikle Ubuntu gibi Linux dağıtımlarında, SSH (Secure Shell) protokolü, uzak sunuculara güvenli bir şekilde bağlanmanın standart yoludur. Bu rehberimizde, Ubuntu 22.04 üzerinde OpenSSH sunucusunu kurup yapılandıracak ve ardından Windows’ta popüler bir SSH istemcisi olan PuTTY ile şifresiz bağlantı kurmanın adımlarını detaylı bir şekilde ele alacağız.
Neden Şifresiz SSH Bağlantısı?
Parola tabanlı kimlik doğrulama kullanışlı olsa da, anahtar tabanlı kimlik doğrulama çok daha yüksek bir güvenlik seviyesi sunar. Anahtar çifti (özel ve genel anahtar) kullanarak yapılan bağlantılarda, sunucuya özel anahtarınızın bir kopyasını göndermezsiniz. Bunun yerine, genel anahtarınız sunucuda doğrulanır ve özel anahtarınız yalnızca sizin bilgisayarınızda bulunur. Bu, kaba kuvvet saldırılarına karşı daha dirençli olmanızı sağlar.
Adım 1: Ubuntu 22.04 Sunucusunda OpenSSH Kurulumu
Ubuntu 22.04 genellikle OpenSSH ile birlikte gelir, ancak kurulu olup olmadığını kontrol etmek ve gerekirse kurulumu yapmak önemlidir.
- Terminali Açın:
Ubuntu sunucunuzda bir terminal penceresi açın. - Paket Listesini Güncelleyin:
En güncel paket bilgilerine sahip olmak için aşağıdaki komutu çalıştırın:
sudo apt update
- OpenSSH Server Kurulumu:
Eğer kurulu değilse, OpenSSH server’ı kurmak için şu komutu kullanın:
sudo apt install openssh-server
Kurulum sırasında sizden yönetici şifreniz istenecektir.
- SSH Servisini Başlatın ve Durumunu Kontrol Edin:
SSH servisini başlatın ve çalışır durumda olduğundan emin olun:
sudo systemctl start ssh
sudo systemctl status ssh
Çıktıda active (running) ifadesini görmelisiniz.
- Firewall (UFW) Yapılandırması (Eğer Kullanıyorsanız):
Eğer UFW (Uncomplicated Firewall) kullanıyorsanız, SSH trafiğine izin vermeniz gerekir. Varsayılan olarak SSH, TCP port 22’yi kullanır:
sudo ufw allow ssh
veya doğrudan port numarasını belirterek:
sudo ufw allow 22/tcp
UFW durumunu kontrol etmek için: sudo ufw status
Adım 2: PuTTYgen ile SSH Anahtar Çifti Oluşturma (Windows)
Şimdi, Windows bilgisayarınızda kullanacağınız SSH anahtar çiftini oluşturacağız.
- PuTTYgen’i İndirin ve Çalıştırın:
PuTTY’yi indirdiğinizde PuTTYgen (puttygen.exe) de beraberinde gelir. Eğer kurulu değilse, resmi web sitesinden indirebilirsiniz: https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
puttygen.exe dosyasını çalıştırın.
Görsel 1: PuTTYgen Açılış Ekranı
- Anahtar Oluşturma Ayarları:
- Type of key to generate: RSA seçili olduğundan emin olun.
- Number of bits in a generated key: 2048 veya 4096 gibi güvenli bir değer seçin.
- Anahtarı Oluşturun:
“Generate” düğmesine tıklayın. Karşınıza çıkan uyarıda, fare imlecini boş alanda rastgele hareket ettirerek yeterli rastgelelik sağlayın.
- Firewall (UFW) Yapılandırması (Eğer Kullanıyorsanız):
- Parola (Passphrase) Ayarlayın (Şiddetle Tavsiye Edilir!):
- Key passphrase: Özel anahtarınızı şifrelemek için güçlü bir parola girin.
- Confirm passphrase: Parolayı tekrar girin.
Bu adım, bilgisayarınızın güvenliği için kritik öneme sahiptir.
Görsel 3: PuTTYgen’de Parola Ayarlama
(Buraya “Key passphrase” ve “Confirm passphrase” alanlarını vurgulayan bir ekran görüntüsü ekleyin.)- Anahtarları Kaydedin:
- Public key for pasting into OpenSSH authorized_keys file: Bu bölümdeki metni kopyalayın. Bu sizin genel anahtarınızdır.
- “Save public key” düğmesine tıklayarak genel anahtarınızı bir dosyaya kaydedin (örneğin, id_rsa.pub veya my_ssh_key.pub).
- “Save private key” düğmesine tıklayarak özel anahtarınızı .ppk formatında kaydedin (örneğin, id_rsa.ppk veya my_ssh_key.ppk). Bu dosya gizli kalmalıdır!
Görsel 4: PuTTYgen’de Anahtar Kaydetme Ekranı
(Buraya “Save public key” ve “Save private key” düğmelerini gösteren bir ekran görüntüsü ekleyin.)Adım 3: Genel Anahtarı Ubuntu Sunucusuna Yükleme
Şimdi, oluşturduğumuz genel anahtarı Ubuntu sunucusundaki authorized_keys dosyasına ekleyerek sunucunun sizi tanımasını sağlayacağız.
- Ubuntu Sunucusuna Şifre ile SSH Bağlantısı Kurun:
PuTTY veya terminal üzerinden sunucunuza parolanızı kullanarak bağlanın:
ssh kullanici_adiniz@sunucu_ip_adresi
- Kullanıcınızın ev dizininde .ssh klasörünün olması gerekir:
mkdir –p ~/.ssh
- Genel Anahtarı
PuTTYgen’den kopyaladığınız genel anahtar metnini authorized_keys dosyasına yapıştırın. Bunu yapmanın birkaç yolu vardır:
- Nano Editor Kullanarak (Önerilen):
- Generated bash
- nano ~/.ssh/authorized_keys
- Açılan editöre kopyaladığınız genel anahtar metnini yapıştırın. Dosyayı kaydetmek için Ctrl+O, Enter tuşlarına basın ve çıkmak için Ctrl+X tuşlarına basın.
- Echo Komutu ile:
- echo “GENEL_ANAHTARINIZIN_TÜM_METNİ_BURAYA” >> ~/.ssh/authorized_keys
- GENEL_ANAHTARINIZIN_TÜM_METNİ_BURAYA kısmını, PuTTYgen’den kopyaladığınız metinle değiştirin. >> işareti, dosyanın sonuna ekleme yapar.
Görsel 5: Nano Editörde
(Buraya Nano editörde açık olan- Dosya İzinlerini Ayarlayın:
SSH’nin güvenli bir şekilde çalışabilmesi için dosya izinlerinin doğru olması gerekir:
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
- SSH Sunucusundan Çıkış Yapın:
exit