首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

不能`ssh-add`公钥,尽管执行了` `eval 'ssh-agent -s'`

问题:不能ssh-add公钥,尽管执行了eval 'ssh-agent -s'

回答: ssh-add命令用于将私钥添加到ssh-agent的身份验证代理中,以便在进行SSH连接时自动使用私钥进行身份验证。如果无法使用ssh-add命令成功添加公钥,即使执行了eval 'ssh-agent -s'命令启动了ssh-agent代理,可能有以下几个原因:

  1. 私钥不存在:在执行ssh-add之前,确保您的私钥文件存在于正确的位置。默认情况下,私钥文件应该是~/.ssh/id_rsa~/.ssh/id_dsa。您可以通过运行ls -al ~/.ssh命令来检查私钥文件是否存在。
  2. 私钥权限不正确:私钥文件的权限应设置为600,即只有所有者可以读取和写入。您可以使用chmod 600 ~/.ssh/id_rsa命令来更改私钥文件的权限。
  3. ssh-agent未正确加载:执行eval 'ssh-agent -s'命令会启动ssh-agent代理,但可能存在加载问题。您可以尝试以下步骤来解决该问题:
    • 确保您在执行eval 'ssh-agent -s'命令后立即执行ssh-add命令,以便将私钥添加到代理中。
    • 检查是否存在其他ssh-agent进程,可能会干扰当前的代理。您可以运行ps aux | grep ssh-agent命令来查看是否有其他ssh-agent进程正在运行,并使用kill <pid>命令终止它们。
    • 尝试重新启动ssh-agent代理。您可以运行以下命令:
    • 尝试重新启动ssh-agent代理。您可以运行以下命令:
  • 公钥格式不正确:确保您的公钥文件(通常是~/.ssh/id_rsa.pub~/.ssh/id_dsa.pub)的格式正确。公钥文件应该以ssh-rsassh-dss开头,后面跟着一串Base64编码的公钥内容。

如果您仍然无法通过ssh-add命令成功添加公钥,请检查以上原因并逐一排除。如果问题仍然存在,可能需要进一步调查和排查其他可能的问题。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云SSH密钥对管理:https://cloud.tencent.com/document/product/213/35700
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Git报错解决:git@gitee.com: Permission denied (publickey).

报错原因 我查了很多资料,最后判定是在本地(或服务器上)没有生成SSH 解决方法 第一步 当你没有SSH的时候,在Terminal中输入下面的命令: ssh-keygen -t rsa -C "...1106425813@qq.com" 复制代码 之后按回车键,会出现下面图示中的内容,不需要管出现的一些要输入的问题,一路回车即可,最终会生成SSH。...第三步 在Terminal中输入如下命令: ssh-agent -s 复制代码 Terminal中会显示与下图中类似的信息 ?...如果遇到这个问题,不要慌,在Terminal中输入如下命令: $ eval `ssh-agent -s` 复制代码 紧接着再输入: $ ssh-add ~/.ssh/id_rsa 复制代码 如图,问题已解决...如果你的邮箱收到信息,则添加成功,这个问题自然也就解决了,接下来根据各自所需进行操作即可。

27.7K152

Linux系列 | SSH 如何使用密钥登录服务器

其中,私钥必须私密保存,不能泄漏;则是公开的,可以对外发送。它们的关系是,和私钥是一一对应的,每一个私钥都有且仅有一个对应的,反之亦然。...ssh-agent 命令,ssh-add 命令 基本用法 私钥设置了密码以后,每次使用都必须输入密码,有时让人感觉非常麻烦。比如,连续使用scp命令远程拷贝文件时,每次都要求输入密码。...$ eval `ssh-agent` 上面命令中,ssh-agent会先自动在后台运行,并将需要设置的环境变量输出在屏幕上,类似下面这样。...; export SSH_AGENT_PID; echo Agent pid 22842; eval命令的作用,就是运行上面的ssh-agent命令的输出,设置环境变量。...$ ssh-agent -k ssh-add命令 ssh-add命令用来将私钥加入ssh-agent,它有如下的参数。 (1)-d -d参数从内存中删除指定的私钥。

61.3K123
  • SSH代理(ssh-agent)及SSH代理转发(agent-forwarding)功能介绍

    ,并将拷贝到Server_B上 2)Server_A上SSH登录Server_C只能通过Server_B跳转,但是我又不想Server_B也通过ssh-keygen生成另外一对与私钥(用于Server_B...免密码登录登录Server_C),我想复用Server_A原先生成的那一对与私钥,来实现免密码登录Server_C,这时需要将Server_A的在Server_C上也保存一份 如何实现这两个需求呢...2、可以通过scp或者ssh-copy-id等方式拷贝到Server_B ? 若要将Server_A的也拷贝到Server_C,可进行如下操作 ?...这实现了一种单点登录(SSO)形式,原文如下 The ssh-agent is a helper program that keeps track of user's identity keys and...1)如果ssh-agent在登录时未自动启动,则可以使用该命令手动启动 eval `ssh-agent` 2)检查SSH_AUTH_SOCK环境变量的值。

    8K31

    SSH工具的非常规使用

    使用ssh-agent ssh-agent可以将本地的私钥文件保存到ssh会话里面,这样远程连到服务器B上,就可以将个人的私钥文件也带入过去。...常用场景:一个git仓库添加了我个人的证书,我有权限用git的ssh协议去pull和push。但是我临时需要部署服务器B,而又不想在git仓库添加此服务器的。...#启动ssh-agent eval $(ssh-agent -s) #添加本地私钥文件(若不加私钥路径,则使用默认私钥路径) ssh-add ~/.ssh/id_rsa #验证是否正确添加key,正确情况会列出你的信息...ssh-add -L 上面是启用ssh-agent,下面还需要修改ssh_config配置文件,开启ForwardAgent yes。...-L在远程服务器上也可以看的你的信息,这样再使用ssh协议的git clone就可以正常使用了。

    1.3K20

    几行命令了解一下远程服务器创建用户并无密登录

    ssh 无密码登录 生成私钥和,将上传至服务器,每次登录自动进行密钥算法比较,如正确即可成功登录 (1) 客户端配置 $ ls ~/.ssh # 如果为空则没有创建过 ssh 密钥,否则会有 id_rsa.pub...id_rsa 两个文件 # 新建和私钥 $ ssh-keygen -t rsa -b 4096 -C "oli@xxx.xxx" # 会生成 id_rsa 和 id_rsa.pub 两个文件...# 代理 $ eval "$(ssh-agent -s)" # Agent pid...: $ ssh-agent bash # 文件加入 $ ssh-add ~/.ssh/id_rsa (2) 服务端配置 `~/.ssh/authorized_keys` 文件 首先执行一遍上面客户端的代码然后创建...authorized_keys: # 将客户端的 id_rsa.pub 中的信息复制到这个文件 $ vi ~/.ssh/authorized_keys # 文件权限设置 $ sudo chmod

    1.2K20

    Mac端设置多个SSH Key以匹配不同的账号

    检查电脑中现有的SSH的信息 ls -al ~/.ssh image.png 而我的id_rsa已经连接了东京大学超算中心,所以想要生成一个新的。 2....生成一个新的 切换到 Markdown 编辑器有的id_rsa文件) Enter file in which to save the key (/Users/xxx/.ssh/id_rsa):id_rsa_github...将生成的SSH Key添加到ssh-agent中 因为默认只读取id_rsa,为了让SSH识别新的私钥,需将其添加到SSH agent中: eval "$(ssh-agent -s)" > Agent...ssh-agentssh-add -K ~/.ssh/id_rsa_github 4....将添加到Github账户当中 有两个方法复制的信息,一个是打开Spotlight直接搜索 ~/.ssh, 找到相应的id_rsa_github.pub文件用文本编辑文件打开,复制里面的内容到Github

    1.6K00

    Git有关ssh-key的配置问题

    配置远程仓库网站 在 Github 或 Gitee 上找到添加 ssh 匙选项,到刚才保存的 ssh-key 的路径下找到对应的 .pub 文件(此为匙可外传,另一个为私匙不可外传),打开后将内容粘贴到...Github 或 Gitee 网站添加 ssh 匙栏中。...暂时解决上述问题 在 git 终端输入以下代码: ssh-add path //path 为你保存匙的绝对路径 如果报错: Could not open a connect to your authentication...agent 说明 ssh-agent 没有开启,输入以下代码开启: ssh-agent bash 或者 eval $(ssh-agent -s) 但这样只能临时解决问题,重新打开 git 终端后发现又不好使了...永久解决上述问题 将代码: eval $(ssh-agent -s) ssh-add path 写到 git 的bashrc中。

    51461

    011SSH免密码登陆

    一、单向无密码访问 单向无密码访问远程服务器操作比较简单,比如服务器A需要无密码访问服务器B(A–>B),那么只需要在服务器A生成密钥对,将生成的上传到服务器B的相关用户目录下的.ssh目录中(没有的话手动创建...100% 399 0.4KB/s 00:00 3、测试 上传完文件到远程后,马上从服务器A登陆到服务器B,如果没有输入密码登陆到了服务器B,表示成功,如果还要输入密码,则请检查远程服务器...执行: $ssh-add 强行将私钥 加进来。...$chmod 600 ~/.ssh/authorized_keys 3.如果执行了第2步,还是不能无密码登录,再试试下面几个   $ps -Af | grep agent 检查ssh代理是否开启...sshd restart 执行ssh-add时提示“Could not open a connection to your authenticationh agent”而失败 执行: ssh-agent

    1.2K40
    领券