it-swarm-tr.com

Puttygen tarafından oluşturulan ssh özel anahtarını nasıl kurarım?

Linux sunucumu, puttygen tarafından oluşturulan genel anahtarı yetkili_keys dosyasına ekleyerek ev bilgisayarımdaki bağlantıları kabul edecek şekilde ayarlıyorum.

Şimdi aynı makineye bağlanmaya çalışıyorum, ama bu sefer başka bir Ubuntu makinesinden. Aynı özel anahtarı kullanmak zorundayım (garip bir nedenden dolayı sorma ..) ve müşterim Ubuntu’ya nasıl yükleyeceğimi bilemiyorum.

Başka bir formata dönüştürmek zorunda mıyım?

49
Assaf Lavie

Özel anahtarınızın ubuntu'da çalışıp çalışmayacağından emin değilim, ama buna değer. sadece anahtarları _/home/yourName/.ssh/_ 'a kopyalayın; özel anahtarı _id_rsa_ olarak ve genel anahtarı _id_rsa.pub_ olarak adlandırın.

Bu işe yaramazsa, _ssh-keygen_ kullanarak kendi ssh anahtar çiftinizi oluşturabilir ve yeni ortak anahtarı sunucuya kopyalayabilirsiniz ve ssh aşağıdaki gibi

_ssh -i ~/.ssh/id_rsa_ubuntu.pub <hostName>
_

Onunla oynamadım ama ssh-agent’ın ssh anahtarlarını yönetmek için de kullanılabileceğini duydum.

24
theTuxRacer

Tesadüf eseri, sadece bunu yapmak zorunda kaldım. Anahtarları OpenSSH formatına dönüştürmeniz gerekir. Bunu yapmak için komut şudur:

ssh-keygen -i -f puttygen_key > openssh_key

o zaman normal bir SSH anahtarında olduğu gibi openssh_key in içeriğini .ssh/authorized_keys içine kopyalayabilirsiniz.

-i seçeneği, dönüştürmeyi yapması için ssh-keygen seçeneğini belirten seçenektir. -f seçeneği, dönüştürülecek anahtarı nerede bulacağını söyler.

Bu, şifrelenmemiş tuşları için çalışır. Genel anahtar şifrelenmemiş ancak özel anahtar şifrelenmiş. Özel anahtarın şifresini çözmenin, dönüştürmenin ve yeniden şifrelemenin bir yolu olup olmadığından emin değilim. Diğer anahtarın önerdiği gibi yeni anahtarlar kullanmak daha kolay olabilir (ve şu anki duruma dikey olmasına rağmen ssh-agent kullanmanızı öneririm).

38
Loop Space

Andrew Stacey açıkladı Linux'ta anahtarların OpenSSH formatına nasıl çevrileceği.

Aynı şeyi Windows'ta yapmak istiyorsanız, şu adımları izleyin:

  1. PuTTYGen'i başlatın.
  2. "Yükle" ye tıklayın.
  3. Özel anahtarınızı seçin ve parolanızı girin.
  4. 'Dönüşümler' menüsünden "OpenSSH anahtarını ver" seçeneğini seçin.
  5. Hedef dosya adını seçin.
28
hheimbuerger

Ubuntu'da PuTTY anahtar çiftlerinizi OpenSSH anahtarları olarak nasıl kullanabilirsiniz:

apt-get install PuTTY-tools #Install PuTTY tools in Linux
cd /my-PuTTY-keys
puttygen mykey-sec.ppk ‐O private‐openssh ‐o my‐openssh‐key.sec
ssh-keygen -i -f mykey-pub.ppk > my-openssh-key.pub

4. adımın amacı, genel anahtarınızı * ~./Ssh/yetkili_ anahtarlarına * eklemek olduğundan, PuTTY gizli anahtarınızı 4'ü orta adım olarak kullanmak yerine kullanabilirsiniz:

puttygen ‐L mykey-sec.ppk >> $HOME/.ssh/authorized_keys
24
user18617

PuTTY/PuTTYgen kendi tescilli anahtar çifti formatını kullanır. OpenSSH anahtar formatlarının hüküm sürdüğü Linux'ta çalışmaz.

  • PuTTYgen'de, OpenSSH authorized_keys dosyası tarafından kullanılan formatta bir public anahtarını doğrudan görebilir (ve kopyala + yapıştır).

  • public anahtarını .pub biçiminde (RFC 4716) kaydetmek için Genel anahtarı kaydet düğmesini kullanabilirsiniz. Linux'ta dosya genellikle id_rsa.pub (veya id_dsa.pub) olarak adlandırılır. Ancak bu genellikle gerekli değildir.

  • private anahtarını OpenSSH biçiminde dışa aktarmak için Dönüşümler> OpenSSH anahtarını kullanın. Linux'ta dosya genellikle id_rsa (veya id_dsa) olarak adlandırılır ve .ssh klasöründe depolanır.

Resmi görün PuTTYgen, PuTTY anahtar üreticisi .

Dönüşüm yapmak için PuTTYgen'in Linux sürümünü de kullanabilirsiniz. Linux sürümü, Windows sürümünün aksine komut satırıdır.

puttygen mykey.ppk ‐O private‐openssh ‐o id_rsa

Bkz. Linux puttygen man sayfası .

8
Martin Prikryl

Bir tane daha net bir çözüm buldum.

puttygen üzerinde bir anahtar oluşturun, sonra Üst menüye gidin - Dönüşüm ve tıklayın openssh anahtarını ver

Dosya içeriği ile başlayacak ve bitecek

-----BEGIN RSA PRIVATE KEY----- 

-----END RSA PRIVATE KEY-----
  • kök kullanıcı için Bu anahtar dosyayı /root/.ssh/ olarak id_rsa veya id_dsa olarak kopyalayın

  • diğer kullanıcılar için Bu anahtar dosyasını /home/user/.ssh/ olarak id_rsa veya id_dsa olarak kopyalayın

Not :

  1. authorized_keys düzenlemeye gerek yok.
  2. Amazon linux kullanıyorum
  3. Dosya izni 0600
2
P-Kumar

* * Dikkatli olun ve kutuya konsol erişiminiz olduğundan emin olun, çünkü doğru yapmazsanız, konsoldan düzeltene kadar tekrar ssh yapamazsınız.

İşlem düşündüğünüzden çok daha kolay. Puttygen'de oluşturduğunuz genel/özel anahtar çiftini tekrar yükleyin. Puttygen'de, ekranın ortasında şöyle bir pencere göreceksiniz: "Açık SSH yetkili_keys dosyasına yapıştırmak için genel anahtar:".

kutunun tüm içeriğini vurgulayın ve kopyalamak için control-c tuşlarına basın.

Linux kutunuza SSH yazıp "/home/username/.ssh/authorized_keys" dosyasına yapıştırın. Nano kullanmayı tercih ediyorum ve yapıştırmak için sağ tıklayın. Hepsinin bir satırda kaldığından emin olun.

/ Etc/sshd_config dosyanızı gerektiği gibi değiştirin ve sshd servisinizi yeniden başlatın: "service ssh restart"

Örnek bir sshd_config dosyasına ihtiyacınız varsa, bana bildirin ve benimkini gönderebilirim.

Bunu Ubuntu 8.04, 10.04 ve 12.04 LTS sunucusunda yaptım ve kaygan çalışıyor.

1
ErnestA

Bu konunun hala etkin olup olmadığından emin değilim, ancak şimdi Ubuntu çekirdeğini destekleyen Windows 10 yıldönümü baskısında da benzer bir sorunla karşılaştım. Linux makineye bağlanmadan önce PuTTY kullanıyorum. Linux biçiminde id_rsa oluşturmak için, puttykeygen kullanın ve PuTTY özel anahtarınızı yükleyin, ardından dönüştürmeye tıklayın ve ikinci seçeneği seçin.

PuTTY KeyGenerator conevrsions

yeni oluşturulan anahtar dosyasını açın ve tüm içeriğini kopyalayın, içeriğinizin başladığından emin olun: ----- BEGIN RSA ÖZEL KEY ----- ve ile biter ----- END RSA ÖZEL ANAHTAR -----

vi id_rsa ~/.ssh dizininize kopyalayın ve kopyalanan içerikleri yapıştırın, çünkü bu gereklidir çünkü linux aksi takdirde dosyanın içeriğini anlamaz.

Hepsi bu, uzak sunucuya ssh'yi deneyin, çalışması gerekiyor.

0
binish