我目前使用 Ubuntu,希望远程访问 OpenShift 上的应用程序。我已完成以下操作来创建 ssh-rsa 密钥(我已将指纹替换为 xx:xx...):
> mkdir ~/.ssh
> chmod 700 ~/.ssh
> ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/karl/.ssh/id_rsa): openshiftKey
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in openshiftKey.
Your public key has been saved in openshiftKey.pub.
The key fingerprint is:
xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx karl@karllaptop
The key's randomart image is:
+--[ RSA 2048]----+
| |
... the rest of the image
这将创建两个文件(注意它们不在 ~/.ssh 中):
~/openshiftKey
~/openshiftKey.pub
我不知道这些文件属于哪里,示例和教程都没有提到移动它们。
我打开 openshiftKey.pub 并复制代码:
我将其粘贴到 Openshift 中:
点击保存:
返回应用程序设置页面并复制 ssh 链接:
并在我的终端上尝试连接:
很抱歉,我对 ssh 还很陌生,我做错了什么?
答案1
这里有一个问题:
Enter file in which to save the key (/home/karl/.ssh/id_rsa): openshiftKey
您没有接受默认设置,并为密钥赋予了特定的文件名。
如果您接受了默认设置,那么当您与任何地方建立远程连接时,ssh 只会在该默认位置查找,并尝试使用该密钥。
为了使用默认密钥以外的密钥,您必须在使用 ssh 时明确指定它,例如:
ssh -i $HOME/openshiftKey bad-example.rhcloud.com
但您可能希望将密钥放入其默认位置,以便可以使用rhc
命令行工具来管理您的设备。尝试向其提供 ssh 选项...相当棘手。