VDS Sunucuda SSH Güvenliği Nasıl Sağlanır? 10 Etkili Yöntem

VDS SSH güvenliği, internet üzerinden uzaktan yönetilebildikleri için SSH servisi sunucu yönetiminin en önemli erişim noktalarından biridir.
SSH sayesinde sunucuya uzaktan bağlanabilir, komut çalıştırabilir, dosyaları yönetebilir ve sistem üzerinde yönetim işlemleri gerçekleştirebilirsiniz.
Ancak SSH doğrudan internete açık olduğunda otomatik botlar tarafından sürekli bağlantı ve parola denemeleriyle karşılaşabilir.
Bu nedenle VDS SSH güvenliği, sunucu kurulumu tamamlandıktan sonra mutlaka ele alınması gereken konulardan biridir.
SSH güvenliğini doğru şekilde yapılandırmadan önce VDS’nin çalışma mantığını ve sunduğu kaynak yapısını anlamak önemlidir. VDS nedir ve nasıl çalışır? sorularının cevaplarını temel rehberimizde bulabilirsiniz.
Ubuntu’nun güncel güvenlik dokümantasyonu da SSH, firewall, erişim kontrolü ve sistem güncellemelerini katmanlı sunucu güvenliğinin parçaları olarak ele alıyor. Ubuntu
💡 İpucu: SSH güvenliğinde amaç yalnızca saldırganları engellemek değildir. Aynı zamanda yetkisiz erişim ihtimalini azaltmak, yönetici hesaplarını korumak ve sunucuya erişimi kontrollü hale getirmektir.
SSH Nedir?
SSH, uzak bilgisayarlara güvenli şekilde bağlanmak ve komut çalıştırmak için kullanılan şifreli bir iletişim protokolüdür.
Linux VDS sunucularda SSH, sunucunun terminal üzerinden uzaktan yönetilmesinin temel yöntemlerinden biridir.
Örneğin:
ssh kullanici@sunucu-ipkomutuyla uzak sunucuya bağlanabilirsiniz.
SSH bağlantısının temel amacı, uzak sistem üzerindeki yönetim işlemlerinin güvenli şekilde gerçekleştirilmesidir.
Daha önce hazırladığımız SSH nedir ve Linux sunuculara uzaktan bağlantı rehberimize de göz atabilirsiniz.
OpenSSH; parola, public key ve farklı kimlik doğrulama yöntemlerini destekler. Ubuntu’nun resmi OpenSSH dokümantasyonu da public key tabanlı kimlik doğrulamayı ayrıntılı şekilde açıklıyor. Ubuntu Dokümantasyonu
VDS SSH Güvenliği İçin İlk Adım: Güçlü Kimlik Doğrulama
SSH güvenliğinin temelinde kimlik doğrulama bulunur.
Sunucuya yalnızca yetkili kullanıcıların erişebilmesi gerekir.
Geleneksel parola tabanlı giriş yöntemi kullanılabilir ancak özellikle internete açık yönetim servislerinde SSH anahtarları daha güçlü bir yaklaşım sunabilir.
SSH key sisteminde iki anahtar bulunur:
- Private key: Kullanıcı tarafından gizli tutulur.
- Public key: Sunucuya eklenir.
- Sunucu, bağlantı sırasında private key’e sahip olduğunuzu doğrular.
Ubuntu resmi dokümantasyonu yeni SSH anahtarları oluştururken Ed25519 algoritmasını öneriyor ve ssh-keygen -t ed25519komutunu örnek olarak veriyor. Ubuntu Dokümantasyonu
1. SSH Key Authentication Kullanın
VDS SSH güvenliğini artırmanın en önemli adımlarından biri SSH key kullanmaktır.
Anahtar oluşturmak için:
ssh-keygen -t ed25519Ardından public key’i sunucuya ekleyebilirsiniz.
Örneğin:
ssh-copy-id kullanici@sunucu-ipUbuntu dokümantasyonuna göre public key sunucudaki kullanıcının authorized_keys dosyasına eklenerek anahtar tabanlı giriş yapılabilir. Ubuntu Dokümantasyonu
Bu yapı sayesinde yalnızca parolayı bilen bir kullanıcının değil, doğru private key’e sahip kullanıcının da doğrulanması gerekir.
🔐 Önemli: Private key dosyanızı kesinlikle başkalarıyla paylaşmayın. Private key ele geçirilirse saldırganın hesabınıza erişme riski oluşabilir.

2. Root ile SSH Girişini Kısıtlayın
Linux sistemlerde root en yüksek yetkiye sahip kullanıcıdır.
Root hesabının doğrudan SSH üzerinden kullanılmasını sınırlandırmak, yönetim güvenliğini artırabilecek önlemlerden biridir.
SSH yapılandırmasında:
PermitRootLogin nokullanılabilir.
Red Hat’ın güvenlik dokümantasyonu, SSH üzerinden root girişini engellemek için PermitRootLogin no ayarını açıklıyor. Red Hat Belgeleri
Ancak burada çok önemli bir nokta var:
Root erişimini kapatmadan önce sudo yetkisine sahip başka bir kullanıcıyla SSH bağlantısının çalıştığından emin olun.
Aksi durumda mevcut root bağlantısını da kapattığınızda sunucuya uzaktan erişiminizi kaybedebilirsiniz.
3. Parola ile SSH Girişini Kapatmayı Değerlendirin
SSH key authentication düzgün şekilde çalışıyorsa parola tabanlı SSH girişini kapatmak ek bir güvenlik katmanı sağlayabilir.
OpenSSH yapılandırmasında:
PasswordAuthentication nokullanılabilir.
Red Hat’ın güncel güvenlik dokümantasyonu, key tabanlı authentication doğrulanıp test edildikten sonra parola tabanlı authentication’ın kapatılmasını öneren bir yapılandırma örneği sunuyor. Aynı dokümanda, key authentication çalışmadan bu ayarın uygulanmasının sunucuya erişimi kaybettirebileceği özellikle belirtiliyor. Red Hat Belgeleri
Bu nedenle sıralama şöyle olmalı:
SSH Key oluştur → bağlantıyı test et → yeni oturum aç → key ile girişin çalıştığını doğrula → parola girişini kapat.
4. SSH Yapılandırmasını Değiştirmeden Önce Test Edin
SSH yapılandırmasında yapılan yanlış bir değişiklik sunucuya erişiminizi kaybetmenize neden olabilir.
Bu nedenle /etc/ssh/sshd_config dosyasında değişiklik yaptıktan sonra SSH servisini yeniden başlatmadan önce yapılandırmayı test etmek önemlidir.
Ubuntu’nun resmi dokümantasyonu bunun için:
sudo sshd -tkomutunu öneriyor. Ubuntu Dokümantasyonu
Eğer yapılandırma hatasızsa SSH servisini yeniden başlatabilirsiniz:
sudo systemctl restart ssh.serviceBazı Linux dağıtımlarında servis adı sshd olabilir.
⚠️ Çok önemli: Uzak VDS üzerinde SSH ayarı değiştiriyorsanız mevcut SSH oturumunuzu hemen kapatmayın. Önce ikinci bir terminalden yeni bağlantının çalıştığını doğrulayın.
5. SSH Portunu Değiştirmek Güvenliği Artırır mı?
SSH için varsayılan port genellikle:
22olarak kullanılır.
Bu portu değiştirmek otomatik ve rastgele taramaların bir bölümünü azaltabilir ancak tek başına güvenlik çözümü değildir.
Örneğin SSH’ı farklı bir porta taşımak saldırganların port taraması yapmasını engellemez.
Bu nedenle port değişikliği:
SSH Key + Firewall + Fail2Ban + güçlü kimlik doğrulama
gibi önlemlerin yerine geçmemelidir.
Özellikle firewall üzerinde yeni SSH portuna izin vermeden mevcut portu kapatmak, VDS’ye erişiminizi kaybetmenize neden olabilir.
6. Firewall ile SSH Erişimini Sınırlandırın
Firewall, sunucuya gelen ve giden ağ trafiğini kontrol etmek için kullanılan önemli bir güvenlik katmanıdır.
Ubuntu tarafında ufw, firewall yapılandırmasını kolaylaştıran araçlardan biridir ve resmi Ubuntu güvenlik önerileri firewall kullanımını tavsiye ediyor. Ubuntu Dokümantasyonu
Örneğin UFW kullanıyorsanız:
sudo ufw allow sshile SSH erişimine izin verebilirsiniz.
Ancak daha gelişmiş yapılarda yalnızca belirli IP adreslerine SSH erişimi vermek de değerlendirilebilir.
Örneğin yalnızca kendi sabit IP adresinizden SSH erişimine izin vermek, saldırı yüzeyini daha da azaltabilir.
AydınCloud’da hazırladığımız Linux Firewall rehberimiz üzerinden firewall mantığını daha ayrıntılı inceleyebilirsiniz.
💡 İpucu: Firewall değişikliği yaparken SSH bağlantısını sağlayan portu yanlışlıkla engellemediğinizden emin olun.
7. Fail2Ban Kullanın
SSH güvenliğinde kullanabileceğiniz önemli araçlardan biri de Fail2Ban’dır.
Fail2Ban log dosyalarını izleyerek tekrarlanan başarısız giriş denemelerini tespit edebilir ve yapılandırmaya bağlı olarak saldırgan IP adreslerini belirli süre boyunca engelleyebilir.
Bu nedenle:
SSH + Firewall + Fail2Ban
birlikte kullanıldığında daha katmanlı bir güvenlik yaklaşımı oluşturulabilir.
Fail2Ban’ın nasıl kurulacağını ve yapılandırılacağını ayrıntılı olarak VDS Sunucuda Fail2Ban Nedir? Nasıl Kurulur?rehberimizde anlattık.
Fail2Ban’ın kendisi de SSH brute-force saldırılarına karşı tek başına yeterli değildir. Güçlü kimlik doğrulama ve diğer güvenlik önlemleriyle birlikte kullanılmalıdır.
8. SSH Kullanıcılarını Kontrol Edin
Sunucunuzda gereksiz kullanıcı hesaplarının bulunması güvenlik açısından istenmeyen bir durum oluşturabilir.
Düzenli olarak:
- Kullanıcı listesi
- Sudo yetkileri
- SSH erişimi
authorized_keys- Kullanılmayan hesaplar
kontrol edilmelidir.
Örneğin bir kullanıcının SSH anahtarlarını kontrol etmek için:
cat ~/.ssh/authorized_keyskullanılabilir.
Kullanılmayan kullanıcıların erişimlerini kaldırmak, erişim kontrolünü daha düzenli hale getirir.
Ubuntu güvenlik önerileri de mümkün olduğunca az yetkili kullanıcı hesapları oluşturulmasını ve root yetkisinin yalnızca yönetim işlemleri için kullanılmasını öneriyor. Ubuntu Dokümantasyonu
9. Sunucuyu Güncel Tutun
SSH güvenliği yalnızca SSH yapılandırmasından ibaret değildir.
İşletim sistemi ve sunucudaki yazılımlar güncel tutulmalıdır.
Ubuntu’nun güvenlik önerileri düzenli sistem güncellemelerini özellikle vurguluyor. Ubuntu Dokümantasyonu
Ubuntu sistemlerde örneğin:
sudo apt update
sudo apt upgradekomutları kullanılabilir.
Güncel olmayan OpenSSH veya diğer sistem bileşenleri bilinen güvenlik açıklarına sahip olabilir.
Nitekim Ubuntu’nun 2026 yılında yayınladığı OpenSSH güvenlik duyurularında çeşitli güvenlik açıklarının güncellemelerle giderildiği görülüyor. Ubuntu
Bu nedenle:
Güncel işletim sistemi = daha güvenli sunucu
anlayışı VDS yönetiminin temel parçalarından biridir.
10. SSH Loglarını Düzenli Olarak Kontrol Edin
SSH güvenliğinde loglar önemli bir bilgi kaynağıdır.
Başarısız giriş denemeleri, başarılı bağlantılar ve servisle ilgili çeşitli olaylar loglarda görülebilir.
Ubuntu’da SSH servisinin canlı loglarını izlemek için:
sudo journalctl -fu ssh.servicekullanılabilir. Ubuntu’nun OpenSSH dokümantasyonu da SSH key bağlantılarında sorun yaşandığında servis loglarının bu şekilde incelenebileceğini belirtiyor. Ubuntu Dokümantasyonu
Loglarda özellikle:
- Çok sayıda başarısız giriş
- Bilinmeyen IP adresleri
- Şüpheli kullanıcı adları
- Beklenmeyen başarılı girişler
- Tekrarlanan bağlantı denemeleri
gibi durumlara dikkat edilmelidir.
SSH Güvenliğinde Kullanabileceğiniz Katmanlar
Güvenli bir VDS için tek bir araca güvenmek yerine farklı güvenlik katmanlarını birlikte kullanmak daha doğru bir yaklaşımdır.
Örneğin:
VDS SUNUCU
│
┌──────────┴──────────┐
│ │
FIREWALL SSH
│
┌──────────┴──────────┐
│ │
SSH KEY 2FA
│ │
└──────────┬──────────┘
│
FAIL2BAN
│
LOG TAKİBİ
│
GÜNCEL SİSTEMBu yaklaşımda herhangi bir güvenlik katmanı tek başına bütün sistemi korumaya çalışmaz.
Her katman farklı bir risk alanını azaltmaya yardımcı olur.
SSH Key mi Parola mı?
Bu iki yöntem arasında seçim yaparken SSH key tabanlı authentication genellikle daha güçlü bir yönetim yaklaşımı sunabilir.
SSH key sisteminde private key kullanıcı tarafında tutulur ve public key sunucuya eklenir.
Ubuntu’nun OpenSSH dokümantasyonu da SSH key authentication kullanımını ve Ed25519 anahtarlarının oluşturulmasını ayrıntılı şekilde açıklıyor. Ubuntu Dokümantasyonu
Özellikle sunucuyu düzenli olarak yöneten kullanıcılar için SSH key kullanımı oldukça mantıklıdır.
Ancak private key’in güvenli şekilde saklanması kritik önem taşır.
2FA ile SSH Güvenliği Artırılabilir mi?
Evet.
İki faktörlü kimlik doğrulama, kullanıcı adı/parola veya SSH key gibi birincil doğrulamanın üzerine ek bir doğrulama katmanı sağlayabilir.
Ubuntu’nun resmi OpenSSH dokümantasyonu, key tabanlı authentication üzerine U2F/FIDO veya HOTP/TOTP gibi iki faktörlü doğrulama yöntemlerinin eklenebileceğini belirtiyor. Ubuntu Dokümantasyonu
Bu nedenle özellikle kritik sunucularda 2FA değerlendirilebilir.
VDS SSH Güvenliğinde Yapılmaması Gereken Hatalar
Root Erişimini Kontrol Etmeden Kapatmak
Önce alternatif yönetici hesabıyla bağlantıyı test etmeden root SSH erişimini kapatmayın.
SSH Key’i Test Etmeden Parolayı Kapatmak
Key authentication çalışmıyorsa parola girişini kapatmak sunucuya erişiminizi kaybetmenize neden olabilir. Red Hat da bu riske özellikle dikkat çekiyor. Red Hat Belgeleri
Firewall’ı Kontrol Etmeden SSH Portunu Değiştirmek
Yeni SSH portuna firewall üzerinden izin verilmeden eski portu kapatmak bağlantıyı kesebilir.
Sadece Port Değiştirerek Güvenlik Sağlamaya Çalışmak
Port değiştirmek tek başına yeterli değildir.
Fail2Ban’a Tek Başına Güvenmek
Fail2Ban ek güvenlik katmanıdır; SSH key, firewall, güncellemeler ve erişim kontrolünün yerine geçmez.
SSH Yapılandırmasını Test Etmeden Servisi Yeniden Başlatmak
Değişiklik sonrası:
sudo sshd -tile yapılandırmayı kontrol etmek önemlidir. Ubuntu bunu özellikle öneriyor. Ubuntu Dokümantasyonu
VDS SSH Güvenlik Kontrol Listesi
Sunucunuzu kontrol ederken aşağıdaki listeyi kullanabilirsiniz:
- SSH key authentication aktif mi?
- Private key güvenli şekilde saklanıyor mu?
- Gereksiz SSH kullanıcıları kaldırıldı mı?
- Root SSH erişimi kontrol edildi mi?
- Parola authentication gerekli mi?
- Firewall aktif mi?
- Yalnızca gerekli portlar açık mı?
- Fail2Ban çalışıyor mu?
- SSH logları kontrol ediliyor mu?
- İşletim sistemi güncel mi?
- SSH yapılandırması değişikliklerden sonra test ediliyor mu?
- Yedekleme sistemi çalışıyor mu?
- Mümkünse 2FA kullanılıyor mu?
VDS SSH Güvenliği İçin En İyi Yaklaşım Nedir?
Tek bir ayar yapmak yerine katmanlı güvenlik yaklaşımı kullanmak daha doğru olur.
Başlangıç için:
SSH Key
↓
Root erişiminin sınırlandırılması
↓
Gerekliyse parola authentication’ın kapatılması
↓
Firewall
↓
Fail2Ban
↓
Log takibi
↓
Düzenli güncellemeler
↓
2FA
şeklinde ilerleyebilirsiniz.
Bu yapı sayesinde yalnızca SSH servisini değil, genel VDS güvenliğini de daha kontrollü hale getirebilirsiniz.

❓ VDS SSH Güvenliği Hakkında Sık Sorulan Sorular
VDS SSH güvenliği neden önemlidir?
SSH, VDS sunucuların uzaktan yönetilmesini sağladığı için dışarıya açık önemli bir erişim noktasıdır. Güçlü kimlik doğrulama ve erişim kontrolü yetkisiz erişim riskini azaltmaya yardımcı olur.
SSH key kullanmak paroladan daha mı güvenlidir?
SSH key tabanlı authentication, doğru şekilde uygulandığında güçlü bir kimlik doğrulama yöntemidir. Özellikle private key’in güvenli şekilde saklanması önemlidir.
VDS sunucuda root SSH erişimi kapatılmalı mı?
Birçok senaryoda root üzerinden doğrudan SSH erişimini sınırlandırmak iyi bir güvenlik uygulaması olabilir. Ancak önce alternatif yönetici hesabının çalıştığı doğrulanmalıdır.
SSH portunu değiştirmek gerekir mi?
Port değiştirmek zorunlu değildir ve tek başına güvenlik sağlamaz. Firewall, SSH key ve Fail2Ban gibi önlemler daha kapsamlı bir güvenlik yaklaşımının parçalarıdır.
Fail2Ban SSH güvenliği için yeterli mi?
Hayır. Fail2Ban önemli bir ek güvenlik katmanıdır ancak firewall, güçlü authentication, güncellemeler ve erişim kontrolünün yerini tutmaz.
SSH parola girişini kapatabilir miyim?
SSH key authentication düzgün çalışıyorsa parola tabanlı authentication kapatılabilir. Ancak değişiklik yapılmadan önce yeni SSH key bağlantısının başarıyla test edilmesi gerekir. Red Hat Belgeleri
SSH yapılandırması değiştirildikten sonra ne yapılmalı?
SSH servisini yeniden başlatmadan önce sudo sshd -t ile yapılandırma kontrol edilmelidir. Ubuntu Dokümantasyonu
VDS SSH güvenliği için firewall gerekli mi?
Firewall, SSH dahil olmak üzere sunucuya gelen ağ trafiğinin kontrol edilmesine yardımcı olur ve katmanlı güvenlik yaklaşımının önemli parçalarından biridir. Ubuntu Dokümantasyonu
Sonuç
VDS SSH güvenliği, sunucu yönetiminin en önemli güvenlik konularından biridir.
Güvenli bir yapı oluşturmak için yalnızca SSH portunu değiştirmek yerine:
SSH Key + kontrollü root erişimi + firewall + Fail2Ban + güncel sistem + log takibi + 2FA
gibi farklı güvenlik katmanlarını birlikte değerlendirmek gerekir.
Özellikle SSH yapılandırmasında değişiklik yaparken mevcut bağlantınızı kaybetmemek için her adımı kontrollü şekilde uygulamalısınız.
Sunucu yönetimi konusunda daha fazla kaynak ve performans arıyorsanız AydınCloud VDS çözümlerini inceleyebilirsiniz.