Ssh-add tam olarak ne yapar?


15

Kısa süre önce dizüstü bilgisayarımı yeniden kurdum ve 'git clone'un çalışmadığını gördüm. Sürekli olarak Permission denied (publickey).hata alıyordum .

Düzeltme GitHub'ın SSH sorunları sayfasında belgelenmiştir: SSH'ye GitHub'da ssh-addkimlik doğrulaması yapmak için kullanmak istediğim anahtar hakkında bilgi vermek için kullanın.

Sorum şu: kaputun altında, ssh-addaslında ne yapar ?

Bir süredir SSH anlayışımı genişletmek için anlam ifade ettim ve bu başlamak için iyi bir bahane gibi görünüyor :-)

Yanıtlar:


21

ssh-addssh aracısının kimlik doğrulamasını sizin için yapabilmesi ve terminalde parola girmemeniz ~/.sshiçin kimlik doğrulama aracısına ( ssh-agent) özel anahtar kimlikleri (dizinden) ekler .


Dürüst olacağım, bu beni bir süre karıştırdı. Ben ssh istemcisi her zaman ~/.sshdizinde anahtar kullandığını düşündüm . Bazı dağıtımlar ssh-addotomatik olarak eşdeğer midir? Belki de bu yüzden kafam karıştı?
blong

4
ssh~/.sshdizindeki anahtarı kullanır , ancak anahtar bir parola ile korunuyorsa, bu parolanın bir noktada girilmesi gerekir. Eğer kullanıyorsanız ssh-agentve ssh-add, bir kez bu parolayı yazın. Aksi takdirde, her kullandığınızda parolayı yazmanız gerekir ssh. Anahtar parola korumalı değilse, parola sshistenmeden kullanabileceğinizi unutmayın .
Peter John Acklam

İçinde birden fazla ssh tuşu ~/.ssholabilir ve bu daha yararlı bir şey olabilir, SO ve bitbucket belgelerine bakın
Frank Nocke

0

Github'daki bu makaleye dayanarak , bazen her şeyi düzgün bir şekilde ayarladıktan sonra bile bazı linux dağıtımlarında bu hata ortaya çıkıyor:

Agent admitted failure to sign using the key.
debug1: No more authentication methods to try.
Permission denied (publickey).

Ve ssh-addsorunu çözmek için koşmalısınız.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.