SSH Anahtar Oluşturma¶
Bu makalede
SSH anahtarlarını kullanmak, uzak kullanıcının parolasını girmek yerine güvenli bir SSH anahtarı ile değiştirmenizi ve sunucu yönetimini daha güvenli hale getirmenizi sağlar.
Bilgi
Bir SSH anahtarı, SSH protokolü kullanarak uzak bir sunucuya bağlanırken kullanıcının kimlik doğrulaması için kullandığı bir kriptografik anahtardır.
SSH anahtarları iki türdedir:
-
Açık (public) anahtar, uzak sunucuya gönderilerek kimlik doğrulama yapılabilir. Bu anahtar, karşılık gelen özel anahtarla sadece çözülebilen verileri şifrelemek için kullanılır. Özel anahtar da verileri şifrelemek ve açık anahtar ile çözümlemek için kullanılabilir.
-
Özel (private) anahtar, kullanıcının yerel makinesinde gizli tutulmalıdır. Bu anahtar, açık anahtarla şifrelendiği verileri çözmek için kullanılır.
SSH anahtarları ile sunucuya bağlanmak için, yerel makinede (public ve private) bir anahtar çifti oluşturmanız ve ardından public anahtarı uzak sunucuya kopyalamanız gerekir. Bu adımlar tamamlandığında, uzak kullanıcının parolasını sağlamadan sunucuya bağlanabilirsiniz. Genellikle özel anahtar bir şifre ile oluşturulur ve bu nedenle bağlantı kurarken bu şifreyi girmeniz gerekecektir.
Linux/MacOS işletim sistemleri için SSH anahtar oluşturma¶
Bir SSH anahtarı oluşturma¶
-
SSH ile sunucuya bağlanın.
-
Yerel makinede bir SSH anahtarı oluşturun. Bunu yapmak için aşağıdaki komutu terminalde çalıştırın:
Komut çalıştırdıktan sonra, anahtarın saklanacağı dosya adını ve konumunu seçmeniz istenecektir. Varsayılan olarak
.ssh/
dizinindeid_rsa
dosyası adıyla saklanır.Daha sonra bağlantının güvenliğini artırmak için bir şifre girilmesi istenecektir:
Enter file in which to save the key (/root/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again:
Anahtarın parmak izi ve resmi terminalde görüntülenir:
The key's randomart image is: +---[RSA 3072]----+ | . ..o+=| | . . o +.| | o . o . o.o| | = o . + oo| | . S . + o o| | . = ..o . | | o ..=o+ | | ..+=Xo+ | | .E=*=Oo | +----[SHA256]-----+
Oluşturulan SSH anahtarlarını görüntülemek için aşağıdaki komutları kullanabilirsiniz:
cat ~/.ssh/id_rsa
- özel anahtarı inceleme;cat ~/.ssh/id_rsa.pub
- açık anahtarı inceleme.
Sonraki adım, public anahtarı sunucuya eklemektir. Bunu yapmak için aşağıdaki komutu yazın,
<username>
kısmını sunucudaki kullanıcı adı ile ve<ip_address>
kısmını sunucunun IP adresi ile değiştirin:- <username> — kullanıcı adı;
- <ip_address> — server public IP address.
Komutu girdikten sonra, sistem sunucudaki hesabın parolasını isteyecektir. Parolayı girin ve ardından public anahtar sunucuya kopyalanacak ve sunucuda
~/.ssh/authorized_keys
dosyasına eklenmiş olacaktır.Yukarıdaki adımları tamamladıktan sonra, SSH anahtarı ile sunucuya bağlanmak için aşağıdaki komutu kullanın:
Linux işletim sisteminin yeniden kurulum sırasında bir SSH anahtarı oluşturma¶
SSH anahtarı, işletim sistemini yeniden yüklerken eklenmesi mümkündür. Bunu yapmak için yeni bir işletim sistemi yüklemesi başlamadan önce Invapi üzerinde Reinstall sekmesinde Public ssh key alanını doldurun:
Not
Bir işletim sistemi yeniden yüklemesi isteği örneği için OS reinstallation API methods bakınız.
Windows için SSH anahtar oluşturma¶
Bilgi
Windows işletim sisteminde SSH anahtarları oluşturmanın iki yöntemi vardır: biri OpenSSH istemcisi kullanarak ve diğeri PuTTY istemcisi kullanarak. Aşağıda her iki yönteme göre anahtarlar oluşturma talimatları verilmiştir.
OpenSSH istemcisi¶
OpenSSH istemci ile bir SSH anahtarı oluşturmak için aşağıdaki adımları izleyin:
-
OpenSSH istemcinin varlığını kontrol edin. Bunu yapmak için Parameters >> Applications >> Additional Components'e gidin ve arama çubuğuna
SSH
yazın.Eğer istemci yüklü değilse,
Add Componentdüğmesine tıklayarak arama çubuğunu kullanarak bulun ve ardındanInstalldüğmesine basın.Komut satırı ile OpenSSH istemcisinin varlığını kontrol etmek de mümkündür:
-
komut istemine (kısayol Win+R >>
cmd
yazın >>OKbasın) gidip aşağıdaki komutu girin:Komut çalıştırıldıktan sonra, anahtarın saklanacağı dosya adını ve konumunu seçmeniz istenecektir. Varsayılan olarak
.ssh/
dizinindeid_rsa
dosyası adıyla saklanır.Daha sonra bağlantının güvenliğini artırmak için bir şifre girilmesi istenecektir. Bu zorunlu değildir:
Enter file in which to save the key (.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again:```
Anahtarın parmak izi ve resmi terminalde görüntülenir:
-
Oluşturulan anahtarları kontrol etmek için önceden belirtilen dizine yerel cihazda gidin. Örneğin,
C:\Users\user_name\.ssh
:
PuTTY¶
-
Putty istemcisini yerel cihaza indirip yükleyin;
-
Startmenüsündenputtygen.exe
'yi çalıştırın. -
RSA
anahtar türünü seçin ve ardındanGeneratedüğmesine basın: -
Key Generation penceresinde fareyi rastgele yönlere birkaç kez hareket ettirerek rastgele gürültü oluşturun:
-
Anahtarı bir şifre ile korumak için Key passphrase alanına girin ve ardından tekrarlayarak Confirm passphrase'a yazın. Ekstra koruma gerekmiyorsa bu alanları boş bırakabilirsiniz:
Private anahtarı diske kaydetmek için
Save Private Keydüğmesine basın.Sunucuda kimlik doğrulaması için kullanılacak public anahtarı diskte kaydetmek için
Save Public Keydüğmesine basın. -
SSH public anahtarını sunucuya kopyalayın:
- </path/to/file> — yerel bilgisayarda public anahtara ait tam yolu;
- <username> — kullanıcı adı;
- <ip_address> — server public IP address;
- </path/to/destination> — sunucuda public anahtarın saklanacağı yol.
Windows işletim sisteminin yeniden kurulum sırasında bir SSH anahtarı oluşturma¶
SSH anahtarı, işletim sistemini yeniden yüklerken eklenmesi mümkündür. Bunu yapmak için yeni bir işletim sistemi yüklemesi başlamadan önce Invapi üzerinde Reinstall sekmesinde Public ssh key alanını doldurun:
Not
Bir işletim sistemi yeniden yüklemesi isteği örneği için OS reinstallation API methods bakınız.
SSH anahtarını silme¶
Bir SSH anahtarını silmek için:
authorized_keys
dosyasını açmalısınız, bu dosya genellikle.ssh/
dizininde bulunur. Vim veya Nano gibi komut satırı metin editörlerini kullanabilirsiniz.- Kaldırmak istediğiniz public anahtarı içeren satırı bulun. Her bir satır bir anahtarla karşılık gelir.
authorized_keys
dosyasından kaldırmak istediğiniz public anahtarı olan satırı silin.- Değişiklikleri kaydedin ve dosyayı kapatın.
- Sunucuda SSH hizmetini yeniden başlatmak için değişikliklerin geçerli olması gerekir. Çoğu zaman bunu
sudo service ssh restart
veyasudo systemctl restart sshd
komutları ile yapabilirsiniz. - Anahtarın artık SSH bağlantısı için çalışmadığını kontrol edin.
Not
Eğer Windows işletim sistemi yerel cihazda yüklüyse, aynı zamanda known_hosts
dosyasını da bulabilir ve içinde uygun SSH anahtarının olduğu satırı silerek temizleyebilirsiniz.
Bu sayfanın bazı içerikleri ya da yazıları AI tarafından oluşturulmuş veya çevrilmiş olabilir.