SSH ile Sunucuya Bağlanma Rehberi (Sıfırdan, Net Adımlar)
VDS/VPS sunucunuza SSH ile güvenli bağlanın: kullanıcı, port, key ile giriş, izinler, ilk komutlar ve kopmayı engelleme adımları.
SSH (Secure Shell), VDS/VPS veya dedicated sunucunuzun komut satırına güvenli biçimde ulaşmanızı sağlayan standart yoldur. İlk bağlantıda yaşanan hataların çoğu; yanlış kullanıcı/port, erişim kısıtı, hatalı anahtar izni (permissions) veya güvenlik duvarı ayarlarından çıkar. Bu rehberde sıfırdan başlayarak SSH ile bağlantıyı kuracak; şifre tabanlı oturumu kapatmak, SSH key ile giriş yapmak ve ilk kontrol komutlarını net biçimde uygulayacaksınız.
Hedef: Sunucuya bağlan, kimlik doğrulamasını anahtar (SSH key) ile güvene al, ardından temel sistem kontrolünü yap.
SSH bağlantısında önce gerekli bilgileri toplayın
SSH ile bağlanmak için iki tarafın da bilgisi gerekir: istemci tarafı (PC/Mac/Linux) ve sunucu tarafı (NetKıyas üzerinden seçtiğiniz sağlayıcının verdiği erişim bilgileri).
Sunucudan almanız gerekenler
Sağlayıcı panelinde veya e-posta ile gelen erişim bilgileri şunları kapsar:
- Sunucu IP: Genelde IPv4 adresi. Bazı sistemlerde IPv6 da verilir.
- SSH port (genellikle 22): Sağlayıcı portu farklı vermişse doğrudan onu kullanın.
- Kullanıcı adı: Çoğu sistemde
rootya da dağıtıma göre farklı kullanıcılar olur (ör. Ubuntu içinubuntu). Yanlış kullanıcı 2FA/anahtar hatasına değil, doğrudan erişim reddine yol açar. - Kimlik doğrulama yöntemi: Şifre mi yoksa SSH key (public key) mi? Yeni kurulumlarda key daha güvenlidir.
İstemci tarafında kontrol edilmesi gerekenler
- Windows kullanıyorsanız: PowerShell veya modern Windows Terminal ile SSH çalışır. Gerekirse OpenSSH Client kurulu olmalıdır.
- macOS/Linux: Terminal üzerinden
sshkomutu çoğu sistemde hazır gelir. - Parola saklamayı devre dışı bırakmak için: Anahtar yönetimini (key) kullanın.
Bağlantıyı kurma: doğru komut, doğru kullanıcı, doğru port
SSH bağlantısı tek komutla başlar. Burada en kritik nokta; user, ip ve port parametrelerini doğru girmektir.
Şifre ile ilk bağlanma (geçici yöntem)
Bazı sağlayıcılar ilk kurulumda şifreyle erişime izin verir. Bu yöntem yalnızca anahtarınızı kurana kadar kullanın.
- Örnek komut (port 22):
ssh [email protected] - Örnek komut (port farklı ise):
ssh [email protected] -p 2222
İlk girişte şu tür bir uyarı görebilirsiniz: - “Host key doğrulaması” (unknown host) ile ilgili uyarı.
Bu uyarı normaldir; sunucu ilk defa görülüyordur. Doğrulamayı yaptıktan sonra devam edin. Ancak şunları unutmayın: - Host key doğrulaması, yanlış sunucuya bağlanmayı engeller. - Aynı IP farklı zamanda farklı sunucuya atanırsa host key değişebilir; bu durumda sağlayıcı ile IP eşleşmesini kontrol edin.
Anahtar (SSH key) ile bağlanma: güvenli ve standart yöntem
Şifreyi devre dışı bırakmanın temel adımı anahtar kullanmaktır.
SSH key oluşturma (istersen yerelde)
macOS/Linux için:
- ssh-keygen -t ed25519 -C "netkyyas"
- Dosyayı varsayılan konumda tutabilirsiniz (ör. ~/.ssh/id_ed25519).
Windows’ta aynı komut kullanılabilir (OpenSSH Client yüklüyse). Key dosyaları genelde şurada bulunur:
- C:\Users\kullanici\.ssh\id_ed25519
- Public key: id_ed25519.pub
Public key içeriğini kopyalayın:
- cat ~/.ssh/id_ed25519.pub
Public key’i sunucuya ekleme
Sunucu tarafında anahtar eklemenin en temiz yolu authorized_keys dosyasıdır.
1) Sunucuya (şifre ile geçici) bağlanın.
2) Sunucu içinde:
- mkdir -p ~/.ssh
- chmod 700 ~/.ssh
- nano ~/.ssh/authorized_keys
3) Public key satırını authorized_keys dosyasına yapıştırın.
4) İzinleri düzeltin:
- chmod 600 ~/.ssh/authorized_keys
Anahtar dosyası izinleri yanlışsa (ör. 777) SSH genellikle güvenlik gerekçesiyle anahtarı reddeder.
İstemciden anahtar ile bağlanma
Komut:
- ssh user@ip -p port -i ~/.ssh/id_ed25519
Port farklıysa mutlaka -p ile belirtin. -i ile doğru private key dosyasını gösterin.
Bağlantı sorunlarını hızlı teşhis edin
İlk denemede en sık görülen hatalar şunlardır: “Permission denied”, “Connection timed out”, “Connection refused”, “Host key verification failed”.
En yararlı tanı komutu: verbose mod
SSH’te sorun yaşarsanız şu komut çok net ipucu verir:
- ssh -vvv user@ip -p port
-vvv çıktısı içinde aranan ana noktalar:
- Hangi auth yöntemi denendi (publickey mi, password mu?)
- Host key doğrulaması yapılıyor mu?
- Port gerçekten ulaşılıyor mu?
“Connection timed out” ne demek?
Bu genelde ağ katmanında portun erişilememesi demektir: - Sunucudaki SSH portu farklı mı? - Sağlayıcının güvenlik grubunda (firewall) 22/port açık mı? - Kendi ağınızda kurumsal firewall engelliyor mu?
Çözüm planı:
- Panelden doğru portu doğrulayın.
- O port için inbound kuralının açık olduğundan emin olun.
- Güvenlik grubu yoksa sunucuda ufw/iptables kontrol edin.
“Permission denied (publickey)” ne demek?
En sık nedenler:
- Yanlış kullanıcı (root değil başka kullanıcı)
- Yanlış key (private key başka, public key başka)
- authorized_keys izinleri yanlış
- ~/.ssh dizin izinleri yanlış
Sunucuda kontrol:
- ls -la ~/.ssh
- ls -la ~/.ssh/authorized_keys
Beklenen izinler:
- ~/.ssh : 700
- authorized_keys : 600
“Host key verification failed” ne demek?
Bu uyarı genelde host key’in değişmesi durumunda çıkar. Sebep IP’nin başka sunucuya atanması ya da MITM şüphesi olabilir.
Kontrol: - Sağlayıcı panelinden IP değişip değişmediğini doğrulayın. - Gerçekten aynı sunucuysa sağlayıcı ile doğrulama yapın.
Şifre tabanlı oturumu kapatma: net güvenlik adımı
SSH’te anahtar kurduktan sonra şifre girişini kapatmanız gerekir. Bu adım, brute-force denemelerini büyük ölçüde azaltır.
Sunucuda düzenlenecek dosya
Dağıtımınıza göre dosya yolu sshd_config olabilir. En yaygın yol:
- /etc/ssh/sshd_config
Aşağıdaki ayarları yapın:
- PasswordAuthentication no
- PermitRootLogin prohibit-password (root için şifreyi tamamen kapatır; ancak anahtar ile giriş izinli kalabilir)
- (Varsa) ChallengeResponseAuthentication no
Sonra yapılandırmayı doğrulayın:
- sshd -t
Ardından servisi yeniden başlatın:
- systemctl restart ssh
Ubuntu’da bazen servis adı farklı olabilir:
- systemctl restart sshd
Kritik: Şifreyi kapatmadan önce anahtar ile test etmeden bu adımı yapmayın. Aksi halde kendinizi “kilitleme” riski doğar.
İlk bağlandıktan sonra yapılacak 10 dakikalık kontrol listesi
Bağlantı kurmak sadece “çalıştı” demek değildir. Sunucu ayarlarını birkaç noktadan doğrulamak, ilerideki sorunların önüne geçer.
Temel kontroller (komutlar)
Aşağıdaki kontroller bağlantı sonrası 10 dakikada tamamlanabilir:
- Sunucu bilgisi:
uname -acat /etc/os-release- Disk alanı:
df -h- Bellek:
free -h- Yük (load):
uptime- Açık servis/portlar (SSH dahil):
ss -tulpn | grep :22- Güncellemeler (dağıtıma göre):
- Debian/Ubuntu:
apt update && apt upgrade -y - Güvenlik duvarı (varsa):
ufw status
SSH için önerilen net ayarlar (kontrollü şekilde)
Her sunucuda birebir aynı ayar gerekmez ama şu mantık standarttır:
- Kullanacağınız kullanıcıyı net belirleyin
- Şifreyi kapatın (PasswordAuthentication no)
- Portu panelde hangi port açıksa onu kullanın
- Mümkünse root girişini şifre tabanından çıkarın (anahtar ile izin kalabilir)
Dağıtım ve sağlayıcı farklarına göre pratik ipuçları
root yerine non-root kullanıcı ile giriş
Bazı sistemlerde root yerine dağıtıma özel kullanıcı bulunur. Örnek davranış:
- Ubuntu: ubuntu@ip
- Debian/Özel imaj: sağlayıcı farklı kullanıcı tanımlar.
Sağlayıcınız “default user” bilgisi veriyorsa onu birebir kullanın.
VDS/VPS panelinde SSH key yükleme
Bazı sağlayıcılar sunucu oluştururken public key alanı sunar. Bu durumda sunucuyu ayağa kaldırdığınız anda anahtarlar zaten tanımlıdır; şifre girişine gerek kalmadan bağlanabilirsiniz.
Bu yaklaşımın avantajı: - İlk günden itibaren şifreyi istemci/sunucu seviyesinde daha az açmış olursunuz. - “authorized_keys ekle, izinleri düzelt” adımlarını minimuma indirir.
Port ve kullanıcı doğrulaması için hızlı kontrol tablosu
Aşağıdaki tablo, en sık hatalarda ne denemeniz gerektiğini özetler.
| Belirti | En muhtemel neden | Net kontrol | Net çözüm |
|---|---|---|---|
| Connection timed out | Port açık değil, güvenlik duvarı kapalı | Panel inbound kuralı / sağlayıcı firewall | Doğru portu açın, güvenlik grubunu güncelleyin |
| Connection refused | SSH servisi çalışmıyor veya port yanlış | Sunucuda ss -tulpn |
Servisi başlatın, portu düzeltin |
| Permission denied (publickey) | Yanlış kullanıcı/anahtar veya izin sorunu | ~/.ssh ve authorized_keys izinleri |
chmod 700 ~/.ssh ve chmod 600 ~/.ssh/authorized_keys |
| Permission denied (password) | Parola kapalı veya yanlış şifre | PasswordAuthentication durumu |
Anahtar ile giriş yapın, şifreyi doğru kapatın |
| Host key verification failed | Host key değişti (IP başka sunucu olabilir) | Sağlayıcı ile eşleştirme | Doğrulama sonrası key kaydını güncelleyin |
Sonuç: bugün yapmanız gereken net aksiyonlar
SSH ile sunucuya bağlanma işini doğru sırayla yapın: Önce panelden IP/port/kullanıcı bilgisini doğrulayın, sonra bağlantıyı test edin, ardından SSH key ile giriş kurup PasswordAuthentication no adımını uygulayın. Bugün elinizdeki sunucuda sadece şu iki aksiyonu tamamlayın: (1) anahtar ile girişin çalıştığını ssh -i ile doğrulayın, (2) şifre girişini kapatmadan önce anahtar üzerinden yeni bir oturum açabildiğinizi kanıtlayın. Böylece hem erişim kesintisi riskini azaltır hem de sunucunuzu ilk günden itibaren daha güvenli hale getirirsiniz.
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
WordPress Eklentileri Sunucuyu Yavaşlatıyorsa Net Teşhis Rehberi
WordPress eklentileri sunucuyu yavaşlatıyorsa; etkili teşhis, eklenti etki ölçümü, veritabanı izleme ve kalıcı hız iyileştirme adımlarını öğrenin.
Site Geçici Kapanınca SEO İçin Doğru 503 Kodu Nasıl Kullanılır?
Siteyi geçici kapattığınızda SEO’nun etkilenmemesi için doğru 503 yanıtını, Retry-After ve yönlendirmeyi net örneklerle öğrenin.
Game Server İçin VDS Seçerken 9 Kriter (Net Karşılaştırma)
Game server için VDS seçerken gecikme, CPU, bant genişliği, disk ve yedekleme gibi 9 kritere göre net kontrol listesi ve karşılaştırma.
Browser Cache Nasıl Yapılandırılır? Chrome/Firefox Adım Adım
Browser cache’i doğru ayarla: HTTP header (Cache-Control, ETag) ve tarayıcı ayarlarıyla sayfa hızını artır, gereksiz güncellemeleri azalt.