Pazar , 27 Eylül 2020
ssh keys on linux
ssh keys on linux

SSH Key

SSH sunucular arasında ağ bağlantılarını güvenli hale getirmek için tasarlanmış bir protokoldür. SSH taraflar arasındaki bağlantıyı şifreler ve host ile sunucu arasında terminal erişimi sağlar. Terminal bağlantısı için kimlik doğrulama işlemi yapılır ve bu doğrulama işlemi genellikle şifre tabanlıdır. Ancak şifre tabanlı kimlik doğrulamanın bazı tehlikeleri vardır. Brute force saldırıları ile parola tahmin edilebilir ve sunucuya erişim sağlanabilir. Bu işleri daha güvenli hale getirmek için key tabanlı kimlik doğrulaması kullanılabilir. Sistemlere girişlerde veya toplu işlemlerde çok daha güvenli ve pratiktir.

Key Çiftleri Oluşturulması

Asimetrik kriptografi anahtarında birbirlerinin farklı olması durumunda birbirlerini tamamlamaları için key çiftleri kullanılır. Keylerden birisi public diğeri private olarak isimlendirilir. Private key sadece key sahibi tarafından bilinir.

ssh key
ssh key

2048 bitlik key çifti tabanlı bir RSA algoritması oluşturduk. Uzun key boyutu kadar güvenlidir. Key çiftimizi parola ile koruyabiliriz ancak çoğu durumda bu pratik değildir. Key çiftimiz varsayılan kullanıcılar için ana klasörlerinde .ssh dosyasındadır.

SSH konfigürasyonuyla çalışırken root yetkisine ihtiyaç vardır. Root ayrıcalıklarını almanın en iyi yolu aşağıdaki komutu kullanmaktır.

$ sudo su

Uzak Sunucuya Key Eklenmesi

Şimdi kullanacağımız anahtarımızı bir kullanıcı için uzaktaki bir sunucuya ekleyelim.

SSH Key 1 – 21

SSH key kullanıcısı, ip adresi 192.168.122.137 olan uzak sunucudaki root kullanıcısına anahtarımızı eklemek için ssh-copy-id komutunu kullanıyoruz. Anahtarımızı ekledikten sonra parola / şifre girmeden uzaktaki sunucuya giriş yapabiliriz.

SSH Key 2 – 3 1024x3221

SSH Yapılandırmasında Parola Tabanlı Kimlik Doğrulamayı Devre Dışı Bırakmak

Bu adımlardan sonra ssh sunucusu için parola tabanlı kimlik doğrulamasını devre dışı bırakabiliriz.

$ vim /etc/ssh/sshd_config

Sshd_config dosyasını açıp ve PasswordAuthentication ve PermitRootLogin satırını aşağıdaki gibi değiştirelim.

PasswordAuthentication no
PermitRootLogin without-password

SSH Sunucu Yapılandırması

Yeni yapılandırma ile yüklemek için SSH sunucusu yeniden başlatılır.

$ systemctl restart ssh

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir