可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
I am having issues with committing changes to my gear. I have tried to run rhc setup, I also deleted my .ssh folder and executed rhc setup again but that also didnt work.
Not sure what changed but it worked couple of hours ago.
>git push -u <GEAR_NAME> master
Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights and the repository exists.
>git remote add devstage3 -f ssh://<GEAR_ID>@<GEAR_NAME>-<GEAR-DOMAIN>.rhcloud.com/~/git/<GEAR_DOMAIN>.git/
Also I have tried to start a different gear and commit to it but I am getting the same error:
Updating <GEAR_NAME>
The authenticity of host '<GEAR_NAME>-<GEAR-DOMAIN>.rhcloud.com (<GEAR_IP>)' can't be established.
RSA key fingerprint is <KEY_FINGERPRINT>.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '<GEAR_NAME>-<GEAR-DOMAIN>.rhcloud.com,<GEAR_IP>' (RSA) to the list of known hosts.
Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
error: Could not fetch <GEAR_NAME>
回答1:
if you are using Windows, you can try the following steps:
look for your ssh public key
usually you can find it at c:\\users\\YOUR_USERNAME\\.ssh
copy your openshift public key to your git's ssh-key folder
suppose we have git in d:\\git
then we need to copy the public key from c:\\users\\YOUR_USERNAME\\.ssh
to d:\\git\\.ssh
try if it works
回答2:
Remove the keys: rhc sshkey-remove
You can also delete them from the management console, by going to https://openshift.redhat.com/app/console/settings
Once done, upload the public key (copy the content of your id_rsa.pub to management console) :
https://openshift.redhat.com/app/console/keys/new
Save it. After this try to git clone
and it should work for you.
回答3:
what worked for me was to generate the keys using Git Bash
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
and then add the key to ssh-agent
as described here
https://help.github.com/articles/generating-a-new-ssh-key/
回答4:
Had the same issue and wasted hours, I'm using centos 7. The following solved my problem.
On linux:
- "cd /home/your_username/.ssh"
- View "id_rsa.pub" and copy contents
- On openshift create a key from the UI and paste the contents from your "*.pub" file
- Save your new key
- Try reconnecting from your local machine
Hope the above helps. Note, on mac it worked from the word go only linux game me errors.
回答5:
I would also recommend trying to SSH in first. With SSH use the -vv flag to show more of the connection information. My guess is that SSH is trying to use a different key than what you uploaded to the server
回答6:
please check if you have changed to another account.
i encountered this problem when my account changed to root.
I am using ubuntu.
I solved this problem by the following cmds
rm ~/.openshift/ -rf
rm ~/.ssh/* -rf
rhc setup
and i encountered the following error:
chmod: 更改".git/FETCH_HEAD" 的权限: 不允许的操作
solved by :
sudo chmod 777 .git/FETCH_HEAD
then:
git pull
got:
Already up-to-date.
everything goes find.
回答7:
you have to check in ~/.ssh/ if exists a file id_rsa.pub and id_rsa
if not you have to create it using openssh
or if exists a file with extension .pub duplicate it and rename the copy as id_rsa.pub
then do the same with id_rsa.
this work with google compute engine.
I've tried
回答8:
The following answer might be helpful. Add GSSAPIAuthentication no
into .ssh/config
$ cat .ssh/config
Host *
ServerAliveInterval 240
GSSAPIAuthentication no
回答9:
I fixed the problem by setting up proxy for ssh:
~/.ssh/config
ProxyCommand /bin/connect.exe -H proxy:8080 %h %p
Host rhcloud.com
User myemailasrhclogin@gmail.com
Port 22
Hostname rhcloud.com
IdentityFile "C:\users\username\.ssh\id_rsa"
TCPKeepAlive yes
IdentitiesOnly yes
SSH in git behind proxy on windows 7
My initial mistake was to use appname.rhcloud.com as Host or Hostname. And yes, adding your public key to OpenShift is also necessary.
回答10:
Also make sure your ~/.ssh/id_rsa file has proper permissions required by rhc:
chmod 600 ~/.ssh/id_rsa
回答11:
I had Permission denied (publickey,gssapi-keyex,gssapi-with-mic)
when cloning with git clone ssh://<<repo_created_by_openshift>>
.
App was created with Openshift's website, not with rhc app create
.
My SSH key was ok, reimporting it to Openshift didn't help, nor did expiring sessions, and so on.
I didn't want to generate a new key.
What finally worked was using:
rhc git-clone -a <app_name>>
instead of bare git clone <<repo_address>>
.
You may have to expire sessions as well.