OffshoreVps
Güvenlik5 Eki 20266 dk okumaYazan: OffshoreVps ekibi

SSH anahtarları açıklandı: VPS girişinizi 5 dakikada güvenceye alın

Bir Ed25519 anahtarı oluşturun, sunucunuza kopyalayın, parolayla girişi güvenle kapatın ve derli toplu bir SSH yapılandırması kurun. Bunu her yeni sunucuda yapın.

SSH parolaları tahmin edilir. Anahtarlar edilmez. VPS'inizi anahtar tabanlı girişe geçirmek yapabileceğiniz en büyük tekil güvenlik iyileştirmesidir ve yaklaşık beş dakika sürer.

VPS için SSH anahtarlarında kullanılan komutları gösteren VPS üzerindeki terminal penceresi, “ssh-keygen -t ed25519 -C "me@laptop"” ile başlıyor
Bu rehberde sunucunuzda çalıştıracağınız komutlardan örnekler.

SSH anahtarları nasıl çalışır

Bir çift dosya oluşturursunuz. Özel anahtar bilgisayarınızda kalır ve asla paylaşılmaz. Genel anahtar sunucuya konur. Bağlandığınızda sunucu, bilgisayarınızdan eşleşen özel anahtara sahip olduğunu kanıtlamasını ister; anahtar ise hiçbir zaman ağ üzerinden geçmez.

1. Bir anahtar çifti oluşturun

ssh-keygen -t ed25519 -C "me@laptop"

Ed25519 anahtarları kısa, hızlı ve moderndir. İstendiğinde bir parola ifadesi seçin; böylece çalınan bir dizüstü bilgisayar çalınan bir sunucu anlamına gelmez. Windows 10 ve 11'de aynı komut PowerShell'de çalışır.

2. Genel anahtarı sunucuya kopyalayın

ssh-copy-id user@your.server.ip

ssh-copy-id yoksa, ~/.ssh/id_ed25519.pub dosyasının içeriğini sunucudaki ~/.ssh/authorized_keys dosyasına ekleyin, ardından chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys komutunu çalıştırın.

Bu rehberin adımları sırasıyla: 1. SSH anahtarları nasıl çalışır; 2. 1. Bir anahtar çifti oluşturun; 3. 2. Genel anahtarı sunucuya kopyalayın; 4. 4. Parolayla girişi kapatın; 5. 5. Derli toplu bir istemci yapılandırması; 6. İyi uygulamalar
Bu rehberdeki adımlar sırasıyla.

3. Parolaları kapatmadan önce test edin

İkinci bir terminal açın ve anahtarla giriş yapın. Bu çalışana kadar ilk oturumunuzu açık tutun; böylece bir hata sizi dışarıda bırakamaz.

4. Parola ile girişi devre dışı bırakın

sudo nano /etc/ssh/sshd_config.d/99-hardening.conf
PasswordAuthentication no
PermitRootLogin prohibit-password
PubkeyAuthentication yes
sudo sshd -t && sudo systemctl reload ssh

sshd -t kontrolü, erişiminizi bozabilecek yazım hatalarını önceden yakalar. Bazı sistemlerde servisin adı sshd olur, ssh değil.

5. Derli toplu bir istemci yapılandırması

# ~/.ssh/config
Host myvps
    HostName your.server.ip
    User deploy
    IdentityFile ~/.ssh/id_ed25519

Artık yazmanız gereken tek şey ssh myvps.

İyi uygulamalar

  • Her cihaz için ayrı bir anahtar kullanın; böylece diğerlerine dokunmadan birini iptal edebilirsiniz.
  • Parola ifadesini oturum başına bir kez girmek için ssh-agent kullanın.
  • Bir cihaz kaybolduğunda veya bir çalışan ayrıldığında anahtarları authorized_keys dosyasından kaldırın.
  • 15 dakikalık güvenlik sertleştirme kontrol listemizdeki gibi, günlük gürültüsünü azaltmak için fail2ban ekleyin.