当前位置: 首页 > 面试题库 >

如何设置公钥认证?

闽鸿宝
2023-03-14
问题内容

如何设置SSH的公钥身份验证?


问题答案:

如果安装了SSH,则应该可以运行。

ssh-keygen

然后经过的步骤,你将有两个文件,id_rsaid_rsa.pub(第一个是你的私钥,第二个是你的公钥-你复制到远程机器上的一个)

然后,连接到要登录的远程计算机,在文件中~/.ssh/authorized_keys添加该文件的内容id_rsa.pub

哦,还有chmod 600所有id_rsa*文件(本地和远程),因此没有其他用户可以读取它们:

chmod 600 ~/.ssh/id_rsa*

同样,确保远程~/.ssh/authorized_keys文件chmod 600也为:

chmod 600 ~/.ssh/authorized_keys

然后,当您执行此操作时ssh remote.machine,它应该询问您密钥的密码,而不是远程计算机

为了更好地使用它,您可以ssh-agent将解密后的密钥保存在内存中-
这意味着您不必每次都键入密钥对的密码。要启动代理,请运行(包括反引号引起来的ssh-agent命令输出)

`ssh-agent`

在某些发行版中,ssh-agent是自动启动的。如果您运行echo $SSH_AUTH_SOCK并显示了路径(可能在/ tmp
/中),则该路径已经设置完毕,因此可以跳过前面的命令。

然后添加您的密钥

ssh-add ~/.ssh/id_rsa

并输入您的密码。它会一直存储,直到您将其删除(使用ssh-add -D命令后,该命令将从代理中删除所有密钥)



 类似资料:
  • 开发者向GitHub版本库写入最常用到的协议是SSH协议,因为SSH协议使用公钥认证,可以实现无口令访问,而若使用HTTPS协议每次身份认证时都需要提供口令[1]。使用SSH公钥认证,就涉及到公钥的管理。 3.3.1. 用户级公钥管理 开发者可能会从不止一台电脑访问GitHub中的版本库(用SSH协议),因不同的电脑有不同的公钥/私钥对,这就需要为GitHub账号添加多个公钥。点击账号设置中的“S

  • 问题内容: 谁能给我sshj中的私钥/公钥身份验证示例? 在sshj中,等效的命令行是什么, 我试过了(省略了错误处理), 但在日志语句中,我看到了 谢谢 问题答案: 尝试KeyPairWrapper像这样使用: 使用BouncyCastle提供程序,您可以使用类似的方法从PKCS8 PEM(为混乱的代码道歉)中提取KeyPair。

  • 我的理解是公钥加密,私钥解密...有谁能帮我弄明白吗?

  • 我必须在azure密钥库中配置RSA、HSM公钥和私钥,并以加密形式保存数据。

  • 问题内容: 我的UIPickerView有问题。我在欧盟AP和NA中有3个值。当我启动该应用程序时,似乎选择了EU,但是当我做出选择时,我只会返回,现在当我触摸UIPickerView时,EU值被选中,然后从NSLog中返回。 我的问题是: 当用户仅启动应用程序并且什么都不触摸时,如何定义默认值(不仅是标签),该值将被选中。 编辑: 这是我的代码来获取所选项目: 问题答案: TL:DR版本: 您没

  • 问题内容: 我需要在活动开始时为ListPreference设置默认值。我试过了,但它使列表的firts条目成为默认条目。我需要它,因为我必须检查一个条件并将满足该条件的值设置为默认值,因此我认为无法从xml文件(带有)中完成此操作 例如,假设我在arrays.xml中具有以下值数组: 在PreferenceScreen xml中: 在活动中,我想做这样的事情: 但这是行不通的,因为它将默认设置为