SSH Key Oluşturma
Bu rehberde, yerel makinenizde SSH key oluşturmayı öğreneceksiniz ve oluşturduğunuz key(anahtar) çiftini uzaktaki bir sunucuya bağlanmak için kullanacaksınız. Bu yöntem daha kullanışlıdır ve uzaktaki sunucuya / makineye bağlanmak için yalnızca bir şifre kullanmaktan daha güvenli bir yol sağlar.
Ayrıca, “Putty SSH Terminal’i kullanılarak VPS’e nasıl bağlanılır?” rehberini de inceleyebilirsiniz. Windows işletim sistemini kullanıyorsanız ve sunucuya nasıl bağlanacağınız hakkında emin değilseniz size çok yardımcı olacaktır: Putty SSH Terminal’i kullanılarak VPS’e nasıl bağlanılır?
Nelere ihtiyacınız olacak?
Bu rehbere başlamadan önce aşağıdakilere ihtiyacınız var:
- Yerel makinenize erişim
- Uzak makinenize erişim
- SSH bağlantısı için uygun bir terminal
Adım 1 — SSH anahtarlarını edinmek
Linux / Unix sisteminde, yerel cihazınızın sahip olduğu herhangi bir Terminal tipi ortamı kullanarak RSA anahtarları oluşturabilir ve kurabilirsiniz.
Terminal‘e girdikten sonra, buna benzer bir pencereye götürüleceksiniz:
Burada, gerekli komutları yazmaya başlayabilirsiniz:
Yapmanız gereken ilk şey yerel makinenizde anahtar çifti oluşturmaktır. Bunu basit bir komutla yapabilirsiniz:
ssh-keygen -t rsa
Bu komutu girdikten sonra birkaç soru göreceksiniz:
Enter file in which to save the key (/home/tautvydas/.ssh/id_rsa):
Genellikle, anahtar üreticisinin varsayılan konumda anahtar çifti oluşturabileceği şekilde, olduğu gibi bırakmanız (bir şey yazmadan ENTER tuşuna basmanız) tavsiye edilir. (Bu rehberde, zaten bir id_rsa anahtarı makinede bulunduğu için tut_id adı kullanılarak anahtar oluşturuldu.) Görünecek sonraki iki soru:
Enter passphrase (empty for no passphrase):
Sonra:
Enter same passphrase again:
Rahat olması için, bunları boş bırakmayı seviyorum. Bu şekilde, uzaktaki sunucunuzla anahtarları ayarladıktan sonra, oturum açmak için herhangi bir şifre kullanmanız gerekmez. Basitçe ssh kullanici@sunucuip
komutunu girebilir ve anahtarlar düzgünce ayarlı olduğu sürece oturum açabilirsiniz. Ancak daha fazla güvenlik istiyorsanız, bu bölümde bir parola girebilirsiniz. Bu seçeneği seçerseniz, uzaktaki aygıta her bağlandığınızda şifreyi girmeniz gerekecektir.
Temelde budur, Terminal’inizde böyle bir şey görmelisiniz:
Oluşturulan resminiz buradakinden FARKLI GÖRÜNECEKTİR. Anahtar parmak izi de farklı olacaktır.
ÖNEMLİ! Burada (PRIVATE ve PUBLIC adında) iki anahtar oluşturuldu: tut_id ve tut_id.pub (sizin durumunuzda, id_rsa ve id_rsa.pub olmalıdır). Id_rsa adlı dosyaya iyi bir özen gösterin (bu ÖZEL anahtarınızdır), SADECE yerel aygıtınızda bulundurun ve BAŞKASINA VERMEYİN.
Diğer dosya id_rsa.pub uzak makinenize yüklenmelidir. Örneğin, siz ve arkadaşınız aynı uzaktaki sunucudaki aynı projede çalışıyorsanız, ikiniz de public anahtarlarınızı o uzak sunucuya yerleştirebilirsiniz. Bir sonraki adımda, bunu nasıl yapacağımızı öğreneceğiz.
Adım 2 — Public anahtarı uzak sunucunuza kopyalama
RSA anahtar çiftini ürettikten sonra, public anahtarınızı uzak sanal sunucusuna koymanız gerekir.
Public anahtarınızı doğrudan uzak sunucunun authorized_keys dosyasına koyacak basit bir komut vardır (bu dosya tüm public anahtarları tutar):
ssh-copy-id kullanici@sunucuip
Burada sunucuip yerine, uzak sunucunuzun IP adresini girmeniz gerekir ve kullanıcı yerine, bağlanmakta olduğunuz sunucunun kullanıcı adını girmeniz gerekir.
Komutu girdikten sonra, buna benzer bir Uyarı mesajıyla karşılaşmanız gerekir:
The authenticity of host 'Server's IP address' can't be established. RSA key fingerprint is ... Are you sure you want to continue connecting (yes/no)?
Komut satırına yes yazın ve ENTER tuşuna basın. Bu mesaj, yalnızca bu işlemi ilk kez gerçekleştirdiğinizde görünür.
Başka bir mesaj görünecektir:
Warning: Permanently added SUNUCU IP' (RSA) to the list of known hosts. kullanici@sunucuip's password:
Burada uzak sunucu kullanıcısının şifresini girmelisiniz (çoğu durumda root kullanıcı adı). Parolayı girdikten sonra, başka bir işlem olmamalıdır. Son bir mesajla karşılaşacaksınız:
Now try logging into the machine, with "ssh kullanici@sunucuip", and check in: ~/.ssh/authorized_keys* to make sure we haven't added extra keys that you weren't expecting.
Yeni public anahtar uzaktaki sunucunuza eklendi. Artık uzaktaki sunucunuza her giriş yaptığınızda, (üretim sürecinde RSA anahtarınız için bir parolayı ayarlamadığınız takdirde) bir parola girmeniz istenmeyecektir.
Sonuç
Bu yazıda, SSH private/public anahtar çifti oluşturma ve uzak sunucunuzda bu anahtarları kullanarak şifre kullanmadan daha güvenli bir bağlantı kurmayı öğrendiniz.
Yorum
Nisan 26 2018
Dostum terminalden kastın nedir? windows masa üstü bilgisayarımızda terminal olarak cmd konsolu var. Terminal nedir açıklık getirirmisin.
Ekim 09 2019
Kullanicisi@sunucuip demişsin de bende öyle birşey yok nasıl olacak