标签: ssh-keys

从 github 检索 ssh 密钥

我的帐户中有 github.com 上的 ssh 密钥。现在我重新安装了操作系统,如何从 github 检索旧的 ssh 密钥并将其放入/home/user/.ssh/id_rsa

谢谢你。

github ssh-keys

5
推荐指数
1
解决办法
2158
查看次数

SSH 忽略密钥文件,错误地要求输入密码

对于工作,我通过 SSH 连接到服务器。我已经几个月没有这样做了,所以现在要求我输入密码的地方发生了一些变化。以前,经过身份验证后它会起作用。这是我通常写入 ssh 的内容:ssh -p2222 username@123.12.123.123

我查看了调试信息,它表明服务器甚至没有要求提供适当的密钥文件。相反,它首先提供一个我删除的公钥 (id_rsa)..然后它变成了私钥......然后它要求输入一个我不需要的密码。

debug1: Found key in /Users/myname/.ssh/known_hosts:40
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,gssapi-with-mic,password
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /Users/myname/.ssh/id_rsa
debug1: Authentications that can continue: publickey,gssapi-with-mic,password
debug1: Trying private key: /Users/myname/.ssh/id_rsa
debug1: Trying private key: /Users/myname/.ssh/id_dsa
debug1: Next authentication method: password
Run Code Online (Sandbox Code Playgroud)

但是,当我指定身份文件时,它可以工作:ssh …

ssh ssh-keys

5
推荐指数
1
解决办法
6122
查看次数

如何使用 SSH 密钥在 GitHub 上作为协作者提交?

我是一个私人 Github 存储库(由其他人拥有)的合作者,虽然我在我自己的 GitHub 帐户中添加了一个 SSH 密钥,它允许我在访问我自己的存储库时进行身份验证,但它总是要求我输入密码尝试访问我只是合作者的存储库。

您知道为什么它不使用我的 SSH 密钥对我进行身份验证吗?

我试图将我的密钥作为“部署密钥”添加到共享存储库本身,但 GitHub 总是拒绝我的提交,并显示错误消息“密钥已在使用中。”。

我的遥控器如下所示:

$ git remote -v
origin  https://example-user@github.com/example-owner/example-project.git (fetch)
origin  https://example-user@github.com/example-owner/example-project.git (push)
Run Code Online (Sandbox Code Playgroud)

github ssh-keys

5
推荐指数
1
解决办法
3319
查看次数

我应该删除或注释 PuTTYgen 公钥的第一行和最后一行吗?

puttygen.exe有一个很好的简单界面,用于生成公钥和私钥对。下面是生成的SSH-2 RSA公钥的示例,我在保存时填写了注释字段:

---- BEGIN SSH2 PUBLIC KEY ----
Comment: "rsa-key-20171211"
AAAAB3NzaC1yc2EAAAABJQAAAQEAijhKs074/PGGNhGbrgBTF6E/OrAd/pQSP68m
+fVbiho8AAl2z88F7x5VM0AOg7m5ZHVBc5PAjArXcZPVy2bh5xk488zGcnavvy1y
sFqiXGWb99Mp4xPRZ1E/qQD7gQjeRLCKUjQFAoH+jEuBpOWTrlmakeiVA8v9EmdX
6Kgi2SIA1nKAuZ+mBldPMAAisqFzUA2A2208LLc+U+FHRcnrTyNedDRLZOyfXaEt
1QeXoMA0wa3/UeLv5lTvWHVrQJtGOlwQdOrhfyrARIPY3IozcQ==
---- END SSH2 PUBLIC KEY ----
Run Code Online (Sandbox Code Playgroud)

然而,我在阅读OpenBSD时注意到,虽然允许使用注释#字段(第二行),但注释应该在行首进行。所以我实际上有几个问题:

windows ssh putty ssh-keys bitbucket.org

5
推荐指数
1
解决办法
5919
查看次数

如何让 ssh 仅使用 ssh-agent 中的一个密钥?

连接到同一主机时,我需要使用两个不同的 ssh 密钥。

我需要用来连接的机器(因为IP地址限制)不是存储ssh密钥的机器,所以我在这里使用ssh-agent。此外,这些 ssh 连接是在中间计算机上运行的脚本的控制下发生的。

如果 ssh 密钥位于该计算机的本地,我想我可以使用 ssh -i (或者可能是嵌套代理中的 ssh-add )来指定我想要使用的身份,并且我可以将脚本和/或脚本上下文更新为为我的案例做正确的事情(可能使用配置文件来指定相关详细信息)。

但是,由于密钥不在执行 ssh 连接的计算机上,因此 ssh -i 失败(该计算机上不存在私钥文件)。同样,ssh-add 希望我通过提供私钥的文件名来指定密钥。(或者我怀疑情况确实如此 - 我实际上还没有弄清楚如何嵌套 ssh-agents,但 ssh-add 上的文档怀疑这是否是一种可行的方法。)

所以我的问题是:如何让 ssh 在与目标系统联系时仅使用我指定的密钥?

[当然,其他人也需要使用这些脚本,但这是我自己使用后可以解决的问题。]

换句话说,我有这样的情况:

$ ssh-add -l
2048 SHA256:A8PFww3boSTRe8sPvXDgir09KNVqu+JvWNw7/GLCiwM /home/account/.ssh/key1.pem (RSA)
2048 SHA256:Em5p4B++GIm0l/zDYgZ26VaHbIb07T6MViu5ioMPTiA /home/account/.ssh/key2_rsa (RSA)
4096 SHA256:JON2JaTTk1r3ufUrGm4C/cE9IG9edyfDxE1zTel/0u8 /home/account/.ssh/key3_rsa (RSA)
Run Code Online (Sandbox Code Playgroud)

在一种情况下,我需要 ssh 来使用 key2_rsa,而在另一种情况下,我需要 ssh 来使用 key3_rsa

此处使用错误的密钥会导致与目标系统的连接失败(因为它将另一个密钥识别为有权访问计算机,但无权访问该子系统)。

我该如何进行这项工作?

ssh ssh-agent ssh-keys

5
推荐指数
1
解决办法
1650
查看次数

如何向 Putty SSH 会话添加更多交换算法?

我有一个设备接受以下 SSH 连接交换算法:

curve25519-sha256,curve25519-sha256@libssh.org,diffie-hellman-group14-sha256,kexguess2@matt.ucc.asn.au

我下载了最新版本的Putty,它说它支持:diffie-hellman组交换、diffie-hellman组14、diffie-hellman组1和基于RSA的密钥交换

我想它应该可以工作,因为在两种配置中我都看到 diffie-hellman 组 14。但是,当我尝试连接到设备时,我收到错误:

Couldn't agree on a key exchange algorithm (available: curve25519-sha256,curve25519-sha256@libssh.org,diffie-hellman-group14-sha256,kexguess2@matt.ucc.asn.au) 
Run Code Online (Sandbox Code Playgroud)

encryption ssh putty ssh-keys

5
推荐指数
1
解决办法
2万
查看次数

无法加载私钥文件.ppk(文件格式错误)

我用puttygen生成了Ed25519密钥对,并将私钥保存在我的计算机上。

当我尝试用它进行身份验证时,我得到

Unable to load private key file "my_private_key.ppk" (file format error)
Run Code Online (Sandbox Code Playgroud)

我检查了一下,它确实是一个私钥文件,文件格式应该是正确的,因为它是由 puttygen 生成的。

有什么想法如何解决它吗?

ssh-keys

5
推荐指数
1
解决办法
4796
查看次数

SSH 到 MacOS 拒绝公钥身份验证

当我使用 ssh 从 Linux 桌面计算机连接到 MacOS 笔记本电脑时,我的公钥被拒绝。我可以使用密码进行连接。

我看过几个与此类似的问题(例如5226521335103471753),但没有一个提供我尚未尝试过的适用解决方案。

通常在这一点上我会怀疑我的代理中没有密钥或者文件.ssh/authorized_keys不正确。

从 Mac 笔记本电脑(目标):

$ /bin/ls -ld ~/.ssh{,/authorized_keys}
drwx------  11 rik  staff   352 Oct 30 21:49 /Users/rik/.ssh
-rw-r--r--   1 rik  staff  1981 Oct 30 21:27 /Users/rik/.ssh/authorized_keys
Run Code Online (Sandbox Code Playgroud)

从 Linux 桌面(来源):

$ ssh-add -L
ssh-rsa AAAAB3[...]2akN7r /Users/rik/.ssh/id_rsa
ssh-rsa AAAAB3[...]Ig+DS3 /home/rik/.ssh/id_rsa
Run Code Online (Sandbox Code Playgroud)

我已将其复制authorized_keys到树莓派并能够通过 ssh 访问它。对每台机器的使用ssh -vvv提供了更多线索。

到树莓派:

...
debug1: rekey after 134217728 blocks
debug2: key: /home/rik/.ssh/id_rsa (0x55a9f8044310), agent
debug2: key: /Users/rik/.ssh/id_rsa (0x55a9f8049330), agent
debug2: …
Run Code Online (Sandbox Code Playgroud)

ssh openssh ssh-keys macos macos-catalina

5
推荐指数
2
解决办法
7489
查看次数

如何更改 SSH 允许的主机密钥算法?

我正在编写一个使用 libssh 库的应用程序。我正在尝试建立从应用程序运行的客户端到服务器的连接。但是,我没有连接,而是收到一条错误消息:

[ERR]: Starting the SSH session failed (kex error : no match for method server host key algo: server [ssh-rsa], client [ssh-ed25519,ecdsa-sha2-nistp521,ecdsa-sha2-nistp384,ecdsa-sha2-nistp256,rsa-sha2-512,rsa-sha2-256]).
Run Code Online (Sandbox Code Playgroud)

我想更改服务器主机密钥算法以便可以建立连接,但我不知道在哪里执行此操作。我已经重新创建了我的服务器主机密钥。我认为我可以通过 进行配置/etc/ssh/sshd_config,但我无法找到正确的标志。我在服务器上的文件如下所示:

#       $OpenBSD: sshd_config,v 1.97 2015/08/06 14:53:21 deraadt Exp $

# This is the sshd server system-wide configuration file.  See
# sshd_config(5) for more information.

# This sshd was compiled with PATH=/usr/bin:/bin:/usr/sbin:/sbin

# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default …
Run Code Online (Sandbox Code Playgroud)

ssh sshd ssh-keys

5
推荐指数
0
解决办法
2万
查看次数

使用 Dropbear 的 SSH:“权限被拒绝(公钥)”

我已经创建了一个 RSA 密钥对ssh-keygen。我/etc/dropbear-initramfs/authorized_keys有公钥,在我的客户端计算机上,我的/home/<name>/.ssh/目录中有密钥对。运行后update-initramfs -u,我仍然无法连接Dropbear。

这是我在服务器上设置的方式:

/etc/dropbear-initramfs/authorized_keys:

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCi3gJaNC89jJSdzlD/qxjwzKC33PpERqpyt7q2PIHFM7hoDk7M/MU9/5k+jmIy80Xt0ZvswLdxAi4p26wr+13vtwNHJIdsLdswCNmKxz+nyBvIw2g/pT7I3368B6KZ1MKokQ4Nz4HQu5WuEDZXTZSnsvP/7n732+zwhFZDPz+NZ4HdY0cveTeb6hW+peZEe3xCBQ4PeGNaH1U+VTuNveyAnFPxEjHvQhG39CtAn4SAEYd7UMNmyVFWDf2+ymlgWRwq2joAQKg/vB4qrdwX6MWEPf0r0H2jtnm+y8ZFrEdmjJTWmUKhliE928Oc63exAPaGmwJ4+tjrSUU0twHe+v9HnTrMiJHvOUQDoUuMsyqsO5auo3RNUMXMKEhA/tJbZjpAMj5wMtdcvHJ0u5VJ/oZQavm0uYUBAhOc94JUr6qRVfNk1PbCGgBx1hCfIKORVHz05bsMZUYeUaruhfMGg3jGTpfojgBRWZ0gbQTnEaxNcXeZnSEoTmX8jOhSsOmhqjU= root@ubuntu
Run Code Online (Sandbox Code Playgroud)

ls -la /etc/dropbear-initramfs显示:

drwxr-xr-x  2 root root 4096 Apr 17 23:11 .
drwxr-xr-x 99 root root 4096 Apr 17 21:33 ..
-rw-------  1 root root  565 Apr 17 23:11 authorized_keys
-rw-r--r--  1 root root  579 Apr 17 22:48 config
-rw-------  1 root root  458 Apr 17 21:33 dropbear_dss_host_key
-rw-------  1 root root  140 Apr 17 21:33 dropbear_ecdsa_host_key
-rw-------  1 root root …
Run Code Online (Sandbox Code Playgroud)

linux ssh rsa ssh-keys dropbear

5
推荐指数
1
解决办法
6021
查看次数