26 Temmuz 2020 Pazar

SFTP Public Key Authentication

Merhaba Arkadaşlar,

İki makina arasında iletişimi kolaylaştırmak veya iki makina arasında otomatik dosya transferi yapabilmek için makianalar arasında iletişim kurulabilir. Bu yönteme sftp public key authentication denir. Böylece herhangi bir şifre olmadan, key ile bağlantı sağlanmış oluyoruz.

Öncelikle kendi makinamızdan bağlanacağın user'a geçiş yaparız. (ör: dzdo -iu wlsadmin)
Kendi makinamızda .ssh adında bir directory oluşturulur:
mkdir .ssh

ls -la komutu ile oluşturduğumuz .ssh directory'sini görürüz.

chmod 777 .ssh
diyerek  directory'e full yetki verdik. Tabi bu istenen bir şey değildir; 777 benim işime gelir ama os admin'ler bir şekilde bu yetkiyi iptal etmek için kapınızı çalar. =)

Şimdi erişimde kullanmak için private/public anahtar çiftini oluşturacağız. Bunun için de şu komutu çalıştırırız:
ssh-keygen

Gelen her soruya Enter deyip geçebilirsiniz. Sizden passphrase isteyecektir. Bir şifre belirleyip, onu iki defa girmenizi isteyecektir. Onu da girdiğinizde, wlsadmin userımın altında .ssh directory'si altında, id_rsa ve id_Rsa.pub adında iki dosya oluşacaktır.
chmod 777 id_rsa*   ile yine yetkileri dibine kadar alıyoruz.

more id_rsa.pub komutu ile dosya içeriğindeki açık anahtarını karşı sunucuya girilmek üzere alabilirsiniz.

Karşı sunucuda da login olup, aynı şekilde:
mkdir .ssh   komutuyla .ssh folderı oluştururuz.
Akabinde chmod 777 .ssh komutuyla yetkileri açarız.

Şimdi bu sunucuda authorized_keys adında bir dosya oluştururz bu defa(dizin değil)
touch authorized_keys
Ve bir klasik olarak=)   chmod 777  authorized_keys

Diğer sunucudaki, id_Rsa.pub içinde oluşturduğumuz key'i, authorized_keys altına kopyalarız.

Hepsi bu kadar. Şimdi minik bir test yaparız:

İlk sunucumuza girerek:
ssh wlsadmin@IkinciSunucuIPsi

Eğer password olmadan erişirsek ikinci sunucu konsoluna, her şey tamam demektir. :)

Sonra görüşürüz.

Hiç yorum yok: