Erro Heroku: “Permissão negada (chave pública)”

94

Eu continuo recebendo esse erro. Estou usando o Mac. Eu gerei uma chave e a adicionei ao heroku usando

heroku config:add key="ssh-rsa [email protected]"

Mas isso não funciona. Continuo recebendo o mesmo erro. Além de reinstalar o ssh-keygen, o que posso fazer sobre isso?

picardo
fonte

Respostas:

218

Experimente heroku keys:add <path-to-your-public-key>.

Por exemplo, heroku keys:add ~/.ssh/id_rsa.pub

Sathish
fonte
2
No meu Hackintosh enquanto instalei o Github para Mac, o arquivo pretendido está neste caminho: ~ / .ssh / github_rsa.pub
Jahan
2
Tente também ssh-keygen -t rsa -C "[email protected]" se ainda estiver tendo o erro, para criar outro arquivo.pub e usar esse no comando recomendado nesta resposta
Tom Roggero
19

a solução acima não funcionou para mim porque eu não tinha nenhuma chave gerada na minha pasta ~ / .ssh.

Minha solução foi simplesmente digitar heroku keys:add

A saída no terminal foi:

Could not find an existing public key.
Would you like to generate one? [Yn] y
Generating new SSH public key.
Uploading SSH public key /home/funkdified/.ssh/id_rsa.pub... done

Veja: https://devcenter.heroku.com/articles/keys

Abram
fonte
4

eu enfrentei o mesmo problema. Escrever minha experiência para que ajude outra pessoa.

Tentei seguir as instruções fornecidas no site oficial - Primeiros passos com seu aplicativo do Facebook no Heroku

Embora seja bastante detalhado, especialmente o vídeo, é bastante irritante notar que eles não mencionam a necessidade de configurar as chaves SSH. Ou ele é definido por padrão (não sei) ou você obtém o erro mencionado pelo autor da pergunta.

Então eu fiz o seguinte:

1 abriu o shell git

2 digitei o seguinte em

C:\Users\blue\Documents\GitHub> heroku keys:add
Found the following SSH public keys:
1) github_rsa.pub
2) id_rsa.pub
Which would you like to use with your Heroku account? 2

3 - Posteriormente a isso, fui capaz de obter o checkout do meu repositório

C:\Users\blue\Documents\GitHub> heroku login
Enter your Heroku credentials.
Email: [email protected]
Password (typing will be hidden):
Authentication successful.
C:\Users\blue\Documents\GitHub> git clone [email protected]:sxxxd-plains-8530.gi
t
Cloning into 'sxxxd-plains-8530'...
Warning: Permanently added 'heroku.com,50.19.85.154' (RSA) to the list of known
hosts.
remote: Counting objects: 180, done.
remote: Compressing objects: 100% (112/112), done.
remote: Total 180 (delta 82), reused 132 (delta 62)
Receiving objects:  81% (146/180), 76.00 KiB | 62 KiB/s
Receiving objects: 100% (180/180), 137.91 KiB | 62 KiB/s, done.
Resolving deltas: 100% (82/82), done.
C:\Users\blue\Documents\GitHub>

Por favor, não downvote minha resposta. Mesmo que eu não agregue nenhum valor ao que já foi postado, espero que minhas experiências ajudem alguém que é novo no uso do git & heruko. Daí eu adicionei capturas de tela.

  • Meus 2 centavos
estrela do rock
fonte
Sua solução funciona no Git Bash, mas não sei porque os mesmos passos não funcionam de forma consistente no windows cmd ???
cyber101
2

Copie os arquivos em seu caminho .ssh, por exemplo:

/c/Users/<yourusername>/.ssh/<files>

para a pasta git .ssh.

/c/Program Files/Git/.ssh/<paste files here>

Se a pasta .ssh não existir no diretório Git, simplesmente crie-a e cole seus arquivos.

Por algum motivo, o Windows exige que um caminho .ssh esteja no diretório do usuário, bem como no diretório Git. ON default não é adicionado, então você simplesmente tem que criá-lo.

Depois de adicionar os arquivos ao diretório do Git, basta executar o seguinte comando novamente:

git push heroku master
Ryan Watts
fonte
1

se você ainda não tem a chave ssh, tente gerá-la usando o comando abaixo:

1. ssh-keygen -t rsa -C "[email protected]"
2. ssh-add

Para se livrar da permissão negada do heroku (chave pública), adicione suas chaves ao heroku usando:

3. heroku keys:add <path_to_your_ssh>
    OR
 heroku keys:add

Para se livrar da permissão negada do Github (chave pública), adicione suas chaves ao Github usando:

4. ssh-add <path_to_your_ssh> 
     OR
  ssh-add
Przbadu
fonte