
Secure Shell, uzak bir Linux sunucusunda veya masaüstünde oturum açmanın en popüler yoludur. Bu aracı kullanarak, güvenli bir tünel aracılığıyla uzaktaki bir makinedeki komut satırına erişim elde edersiniz. Kutunun dışında, uzaktaki kullanıcının şifresini yazacaksınız. Bu yöntem eskisinden daha güvenli olsa da (telnet gibi), SSH Anahtar Kimlik Doğrulaması ile onu daha da güvenli hale getirebilirsiniz.
Anahtar Kimlik Doğrulaması nedir?
Bir kilidiniz olduğunu ve bu kilidi açmanın tek yolunun, kilidin size ait olduğunu bildiği belirli bir anahtar olduğunu hayal edin. Kilit, anahtarın size ait olduğunu nereden biliyor? Çünkü anahtar size özel bir imza içeriyor. Kilidin içinde, anahtarın karşılaştırma için kullandığı eşleşen bir imza vardır. İmzalar eşleşirse kilit açılacaktır. Anahtar sığarsa, ancak imzalar eşleşmezse, kilit açılmaz. SSH Anahtar Kimlik Doğrulamasının gerçek hayatta nasıl çalıştığı, bir anahtar çifti (özel ve genel bir kod içeren) oluşturmanız ve genel anahtarı oturum açmak istediğiniz sunucuya kopyalamanızdır. Anahtar kimlik doğrulaması ile oturum açmaya çalışırsanız ve sunucu, özel anahtarınızla eşleşen genel anahtara sahip değilse, erişmenize izin vermez.
SSH Anahtar Çifti Nasıl Oluşturulur
Yapılacak ilk şey, bilgisayarınızın oturum açma kimliklerini doğrulamak için kullanacağı kodları oluşturan bir SSH Anahtar Çifti oluşturmaktır. İşte nasıl yapılacağı.
-
Masaüstünüzde bir terminal penceresi açın.
-
Şu komutu verin: ssh-keygen
-
Anahtara bir ad ve konum verin. Basın Giriş / Dönüş Terminal’in görüntüleyeceği varsayılan konumu kullanmak için klavyenizde.
-
Anahtar için bir parola girin ve doğrulayın. Bu parolanın güçlü ve benzersiz olduğundan emin olun.
-
Artık bir SSH anahtar çiftiniz var. Bu iki dosyayı şurada bulacaksınız: ~ / .sshve isimleri şöyle olacak:
- id_rsa – Özel anahtar.
- id_rsa.pub – Genel anahtar.
Genel Anahtarınızı Uzak Makineye Kopyalayın
Daha sonra, genel anahtar dosyasını oturum açmak istediğiniz uzak makineye kopyalamanız gerekir. Bunu yapmak için şu komutu girin: ssh-copy-id USER @ REMOTE_IP
type = “code”> Burada USER, uzak makinedeki bir kullanıcı adı ve REMOTE_IP, uzak makinenin IP adresidir.
Bu, uzak makineye ilk kez güvenli bir şekilde yerleştiriliyorsa, bağlantıyı onaylamanız gerekir. Aksi takdirde, uzak makinede kullanıcı parolasını yazmanız istenir. Uzak parolanızı başarıyla yazdıktan sonra, bağlantıyı test etmeye hazırsınız.
Bağlantının Test Edilmesi
Şu komutu vererek bağlantıyı test edin: ssh USER @ REMOTE_IP
type = “code”> Burada USER, uzak makinedeki bir kullanıcı adı ve REMOTE_IP, uzak makinenin IP adresidir.
SSH anahtar çifti parolası için bir istem alacaksınız. Doğru anahtar parolasını yazdıktan sonra, uzak makineye erişeceksiniz.
Parola Doğrulamayı Devre Dışı Bırakma
Parola kimlik doğrulamasını devre dışı bırakarak güvenliği bir adım öteye taşıyabilirsiniz. Bu yapılandırma yerinde olduğunda, uzak makineye erişim sağlamanın tek yolu, eşleşen çiftten özel anahtarı içeren bir makineden geçer. Başka bir deyişle, anahtar çifti yok, erişim yok. Parola kimlik doğrulamasını devre dışı bırakmak için uzak makinede oturum açın ve şu komutu verin: sudo nano / etc / ssh / sshd_config
type = “code”> Bu dosyada şu satırı arayın: #PasswordAuthentication yes
type = “code”> Bu satırı şu şekilde değiştirin: PasswordAuthentication no
type = “code”> Dosyayı kaydedin ve kapatın. SSH’yi şu komutla yeniden başlatın: sudo systemctl restart sshd
tür = “kod”>
Şimdi, o uzak makinede özel anahtarı içermeyen herhangi bir masaüstünden (veya sunucudan) oturum açmaya çalışırsanız, sistem erişiminizi reddedecektir.