标签: ssh-keygen

如何删除ssh密钥?

我目前在服务器上上传了一个旧的SSH密钥.问题是我丢失了我的~/.ssh目录(原始文件id_rsaid_rsa.pub文件).

因此,我想直接在服务器上删除旧的SSH密钥并上传新的密钥.

我尝试了以下命令但没有成功:

$> ssh-add -D
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

有没有办法完全删除SSH密钥?

git ssh git-svn ssh-keys ssh-keygen

121
推荐指数
6
解决办法
30万
查看次数

添加RSA密钥而不覆盖

我想为我想要SSH的家庭服务器生成一组密钥,所以我这样做ssh-keygen -t rsa,但后来我收到一条消息:id_rsa already exists. Overwrite (y/n)?

好吧,我不想覆盖,因为我现在使用的密钥用于SSH连接到我大学的服务器,每次我想切换时都必须再次完成所有垃圾操作.是否有一种简单的方法来附加密钥?

我尝试了一个教程(我找不到),提示使用cat命令,但我很丢失.似乎解决方案非常简单,我只是没有看到.

ssh rsa ssh-keygen

14
推荐指数
4
解决办法
2万
查看次数

由{ssh hostname}端口22重置连接

我正在尝试使用该命令设置raspberry pi,ssh pi@raspberrypi.local但我不断收到这些消息:

ssh -v pi@raspberrypi.local 
OpenSSH_7.4p1, LibreSSL 2.5.0
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 53: Applying options for *
debug1: Connecting to raspberrypi.local [2601:47:4001:d250:88ff:ddb5:f761:74d2] port 22.
debug1: Connection established.
debug1: identity file /Users/liz/.ssh/id_rsa type 1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/liz/.ssh/id_rsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/liz/.ssh/id_dsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/liz/.ssh/id_dsa-cert type -1
debug1: …
Run Code Online (Sandbox Code Playgroud)

connection ssh reset raspberry-pi ssh-keygen

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

无法解析privateKey:不支持的密钥格式

在我的Mac OS Pro Majave图书专业版中,我使用SSH-KEYGEN为node.js模块SSH2生成了一个新的SSH密钥。但是,我收到错误消息:Cannot parse privateKey: Unsupported key format

我用ssh命令验证了密钥,它工作正常。但不适用于node.js模块SSH2。

在私钥文件中,标题是, -----BEGIN OPENSSH PRIVATE KEY-----而结尾是-----END OPENSSH PRIVATE KEY-----

我检查了模块ssh2-streams keyParser.js。regexp模式RE_HEADER_OPENSSH_PRIV不包含我的标题。有人可以帮忙吗?

ssh openssh node.js ssh-keygen ssh2

8
推荐指数
2
解决办法
4825
查看次数

`ssh-keygen -A` 到底是做什么的?

$ ssh-keygen --help
ssh-keygen: unrecognized option: -
usage: ssh-keygen [-q] [-b bits] [-t dsa | ecdsa | ed25519 | rsa]
              [-N new_passphrase] [-C comment] [-f output_keyfile]
   ssh-keygen -p [-P old_passphrase] [-N new_passphrase] [-f keyfile]
   ssh-keygen -i [-m key_format] [-f input_keyfile]
   ssh-keygen -e [-m key_format] [-f input_keyfile]
   ssh-keygen -y [-f input_keyfile]
   ssh-keygen -c [-P passphrase] [-C comment] [-f keyfile]
   ssh-keygen -l [-v] [-E fingerprint_hash] [-f input_keyfile]
   ssh-keygen -B [-f input_keyfile]
   ssh-keygen -D pkcs11
   ssh-keygen -F hostname [-f known_hosts_file] [-l]
   ssh-keygen -H …
Run Code Online (Sandbox Code Playgroud)

linux ssh-keys ssh-keygen

7
推荐指数
1
解决办法
3947
查看次数

Paramiko无法识别ssh-keygen生成的SSH密钥

我有以下代码:

ssh_key = paramiko.RSAKey.from_private_key_file(key_filename)
Run Code Online (Sandbox Code Playgroud)

键看起来像这样:

-----BEGIN OPENSSH PRIVATE KEY-----
b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAABFwAAAAdzc2gtcn
NhAAAAAwEAAQAAAQEAqdgmJ2AQlmvpCsDWjbpIvIrx4AwtKn2t10wmGZIN9pqcJgQpo3HD
Run Code Online (Sandbox Code Playgroud)

并且有效:

 $ ssh-keygen -l -f <mykeyfile>
 $ 2048 SHA256:x8jlUAObU3q2KXRtuGpxwhnGvB/ZoeD2IUqSA1OkCmI thomas@Thomas-MBP-2017 (RSA)
Run Code Online (Sandbox Code Playgroud)

但我得到"不是一个有效的RSA私钥文件"错误.
这是在MacOS,Python 2.7,Paramiko 2.4.2上

我究竟做错了什么?

python ssh paramiko ssh-keys ssh-keygen

7
推荐指数
1
解决办法
1417
查看次数

使用 openssl 创建 RFC-4716 特定的 dsa 公钥

为了使用公钥身份验证 ssh,

DSA-2048 密钥对已使用 openssl 生成,并且均以 PEM 格式存储在本地。现在,为了在服务器端进行配置(authorized_keys),公钥必须采用 RFC-4716 格式。

通常作为一种实践,为了获取此密钥,ssh-keygen 通常与以下选项一起使用,

ssh-keygen -y -f private_key.pem
Run Code Online (Sandbox Code Playgroud)

它返回必须在服务器端配置的相应公钥(RFC-4716)。

如果没有 ssh-keygen,openssl 本身是否有可能从 openssl 生成的公钥(或)私钥生成 RFC-4716 特定公钥?

ssh openssl dsa public-key ssh-keygen

6
推荐指数
0
解决办法
1409
查看次数

密码保护pem文件

我想用密码保护的pem文件通过SSH连接到我的EC2实例.我如何用密码保护pem文件?我过去做过这个,但不记得我是怎么做到的.我拿了一个由AWS生成的pem文件并在其上运行了一些命令,它生成了如下所示的内容:

-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: AES-128-CBC,<BlahBlahBlah>

<encrypted stuff is here>

-----END RSA PRIVATE KEY-----
Run Code Online (Sandbox Code Playgroud)

然后,当我进入框中SSH时,我正在指定我的密码保护的pem文件,它要求我在解密和sshing之前输入密码.

我发现了这个:https://martin.kleppmann.com/2013/05/24/improving-security-of-ssh-private-keys.html

这告诉我使用这个命令

ssh-keygen -t rsa -N 'super secret passphrase' -f test_rsa_key
Run Code Online (Sandbox Code Playgroud)

但是生成的加密文件(我正在寻找正确的标题)似乎不起作用.我得到了"Permission denied(publickey)".当我尝试使用加密的pem文件ssh时.我能够通过未加密的pem文件SSH到框中.

encryption amazon-ec2 pem amazon-web-services ssh-keygen

6
推荐指数
1
解决办法
5469
查看次数

为什么在 ssh-keygen 中使用 `-t rsa -b 4096`?

为什么我应该按照 github 的指示在创建 SSH 密钥时使用选项、-t rsa-b 4096和?如果我在没有这些选项的情况下创建 SSH 密钥,它的安全性会降低吗?如果是这样,为什么?-C "myemail@example.com"

让我对这些选项感到沮丧的是它们很难记住(是 4096 还是 4095?哪个标志与数字一起,哪个与“rsa”值一起?哪个标志出现在我的电子邮件前面?不是吗?大写字母?),并且创建新密钥可能是一项频繁的活动,例如,如果尝试使用 bitbucket 和 gitlab 以及不同的云托管服务提供商。

[更新]
手册页指出,“要生成的密钥类型由 -t 选项指定。如果不带任何参数调用,ssh-keygen 将生成一个 RSA 密钥,用于 SSH 协议 2 连接。”

那么为什么 github 页面会指定-t rsa

ssh rsa ssh-keygen

6
推荐指数
2
解决办法
4761
查看次数

AWS CloudFront 表示公钥无效/超出限制

我正在尝试在 AWS CloudFront 上上传公钥。我生成密钥如下

ssh-keygen -t ecdsa -b 521

我也尝试过

ssh-keygen -b 4096

当我通过控制台上传它时,出现以下错误: com.amazonaws.services.cloudfront.model.InvalidArgumentException:您的请求包含空/无效/超出限制的 RSA 编码密钥(服务:AmazonCloudFront;状态代码:400;错误代码:InvalidArgument;请求 ID:08fa98af-0c02-11ea-b06e-d771d01bbfcb)

结果ssh -V是“OpenSSH_7.7p1,OpenSSL 1.0.2p 14 Aug 2018”。

任何帮助,将不胜感激。谢谢。

public-key-encryption amazon-cloudfront ssh-keygen

6
推荐指数
2
解决办法
5141
查看次数