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的配置文件,本文仅针对这种情况,以此记录,仅供参考。

相关推荐
我智商开挂24 分钟前
嵌入式Linux(Exynos 4412)笔记
linux·运维·arm开发
sunny052961 小时前
Linux shell getopts 解析命令行参数
linux·运维·bash·shell
朱包林1 小时前
数据库服务-日志管理-备份与恢复-主从同步
linux·运维·服务器·数据库·mysql·云计算
我好饿15 小时前
Linux入门教程 第十五章 Linux 系统调优工具
linux·运维·网络
萌虎爱分享5 小时前
Linux 防火墙 (firewalld) 管理完整指南
linux·运维·防火墙·firewalld
mCell9 小时前
Docker 进阶教程
运维·docker·容器
mCell9 小时前
Docker 入门教程
运维·docker·操作系统
祈祷苍天赐我java之术9 小时前
Linux 进阶之性能调优,文件管理,网络安全
java·linux·运维
王火火(DDoS CC防护)10 小时前
服务器网络带宽不足要怎么处理?
运维·服务器
潇凝子潇10 小时前
获取服务器指标的信息
linux·运维·服务器