Gitlab添加SSH后任需要输入密码问题

本文主要记录一下在Gitlab上设置过ssh秘钥后,任然无法进行ssh访问的问题。

配置步骤

要在GitLab中添加SSH登录,你需要按照以下步骤操作:

  1. 生成SSH密钥对

在你的本地机器上生成一个SSH密钥对。如果你已经有一个密钥对,你可以跳过这一步。在终端中运行以下命令:

bash 复制代码
   ssh-keygen -t ed25519 -C "your_email@example.com"

这将生成一个新的ed25519 SSH密钥对。你可以替换"your_email@example.com"为你的电子邮件地址。

  1. 复制公钥

打开你的公钥文件并复制内容。默认情况下,公钥文件位于~/.ssh/id_ed25519.pub。你可以使用以下命令来复制公钥:

bash 复制代码
   cat ~/.ssh/id_ed25519.pub | pbcopy

这将把你的公钥复制到剪贴板。

  1. 在GitLab中添加公钥

登录到你的GitLab账户,点击右上角的用户头像,然后选择"Settings"。在左侧菜单中选择"SSH Keys"。

在"Key"字段中粘贴你的公钥,然后点击"Add key"按钮。

现在理论上你应该可以使用SSH密钥对在你的本地机器和GitLab之间进行安全的通信了,可以执行以下命令进行验证。

bash 复制代码
ssh -T git@github.com ##这里Git地址请自行替换成对应的Git地址,gitlab github等

问题

问题描述

实际上,执行上面配置以后,在测试ssh链接性时发现,任需要输入密码,而且此时即便输入正确的密码,一直提示密码错误

解决方法

查看ssh配置文件,mac中文件地址为~/.ssh/config,发现该文件中指定的私钥不是刚才生成的秘钥对中的私钥。(之前配置过ssh,后面不知道怎么ssh不生效了,这里的秘钥是之前生成的)

bash 复制代码
Host github.com
    HostName github.com
    User git ##对应的用户名
    IdentityFile /root/.ssh/xxx ##git上ssh配置的公钥对应的私钥文件
    IdentitiesOnly yes

将其中IdentityFile改成刚生成的私钥 ,然后再执行ssh -T命令,此时可以成功访问了。

总结

如果配置了ssh后,任然需要输入密码,而且怎么输入密码都不对的时候,可以检查下ssh的配置文件,本文仅针对这种情况,以此记录,仅供参考。

相关推荐
CCI3442 小时前
Remote ssh无法连接?
运维·ssh
技术小李...2 小时前
docker下mysql更改密码后WordPress提示无法连接数据库问题
运维·docker·容器
Focussend智能化营销3 小时前
2026破局:以营销自动化成熟度Macom模型为鞍,驰骋增长新赛道!
运维·自动化
wanhengidc3 小时前
什么是裸金属服务器
运维·服务器·科技·智能手机·云计算
刘某的Cloud3 小时前
shell脚本-read-输入
linux·运维·bash·shell·read
莫问前程_满城风雨3 小时前
verilog 可变范围的bit选择
运维·服务器·verilog
AEMC马广川3 小时前
能源托管项目中“企业认证+人才证书”双轨评分策略分析
大数据·运维·人工智能·能源
无锡耐特森3 小时前
CANopen转Profinet网关:小设备撬动自动化产线大效率
运维·自动化
可爱又迷人的反派角色“yang”4 小时前
ansible的概念及基本操作(一)
运维·ansible
三小尛4 小时前
linux的开发工具vim
linux·运维·vim