SSH 每次都会询问密码

2024-04-02

我的私钥有一个恼人的问题。每次我想要clone or push通过终端或 Tower 应用程序中的 ssh,我必须输入我的密码。

我什至删除并重新创建了 ssh 密钥,并在 Github 上设置了几次密钥,但看起来它的生命周期很短,几分钟后就过期了!

我跟着生成新的 SSH 密钥 https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/创建密钥。最后我跑了ssh-add ~/.ssh/id_rsa它打印出来:

Identity added: /Users/sajad/.ssh/id_rsa (/Users/sajad/.ssh/id_rsa)

重新启动机器后我运行了ssh-add -l检查它是否仍然存在,结果如下:

The agent has no identities.

我怎样才能解决这个问题?我用的是macOS。

My /etc/ssh/ssh_config:

#   $OpenBSD: ssh_config,v 1.30 2016/02/20 23:06:23 sobrado Exp $

# This is the ssh client system-wide configuration file.  See
# ssh_config(5) for more information.  This file provides defaults for
# users, and the values can be changed in per-user configuration files
# or on the command line.

# Configuration data is parsed as follows:
#  1. command line options
#  2. user-specific file
#  3. system-wide file
# Any configuration value is only changed the first time it is set.
# Thus, host-specific definitions should be at the beginning of the
# configuration file, and defaults at the end.

# Site-wide defaults for some commonly used options.  For a comprehensive
# list of available options, their meanings and defaults, please see the
# ssh_config(5) man page.

Host *
        SendEnv LANG LC_*

# Host *
#   ForwardAgent no
#   ForwardX11 no
#   RhostsRSAAuthentication no
#   RSAAuthentication yes
#   PasswordAuthentication yes
#   HostbasedAuthentication no
#   GSSAPIAuthentication no
#   GSSAPIDelegateCredentials no
#   BatchMode no
#   CheckHostIP yes
#   AddressFamily any
#   ConnectTimeout 0
#   StrictHostKeyChecking ask
#   IdentityFile ~/.ssh/identity
#   IdentityFile ~/.ssh/id_rsa
#   IdentityFile ~/.ssh/id_dsa
#   IdentityFile ~/.ssh/id_ecdsa
#   IdentityFile ~/.ssh/id_ed25519
#   Port 22
#   Protocol 2
#   Cipher 3des
#   Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc
#   MACs hmac-md5,hmac-sha1,[email protected] /cdn-cgi/l/email-protection,hmac-ripemd160
#   EscapeChar ~
#   Tunnel no
#   TunnelDevice any:any
#   PermitLocalCommand no
#   VisualHostKey no
#   ProxyCommand ssh -q -W %h:%p gateway.example.com
#   RekeyLimit 1G 1h

对于一个非常相似的问题,有一些非常好的解决方案超级用户 https://superuser.com/questions/1127067/macos-keeps-asking-my-ssh-passphrase-since-i-updated-to-sierra and 提出不同意见 https://apple.stackexchange.com/questions/254468/macos-sierra-doesn-t-seem-to-remember-ssh-keys-between-reboots.

基本要点是苹果最近改变了 Sierra 中的一些行为。值得庆幸的是,通过将以下内容添加到您的顶部即可轻松恢复它们~/.ssh/config file:

Host *
  AddKeysToAgent yes
  UseKeychain yes

这应该足以让它开始使用钥匙串来存储/检索您的 SSH 密钥密码。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SSH 每次都会询问密码 的相关文章

  • git 提交错误:检测到大文件

    您好 我正在为 ios 8 1 开发一个应用程序 xcode 我已经使用 googleMaps 框架来实现自动完成功能 当我尝试在 Git 中推送我的项目时 我收到大文件检测错误 后来尝试使用 git lfs 并跟踪 git 检测到的文件
  • Github Action 在运行可执行文件时卡住

    我正在尝试设置运行google tests on a C repository using Github Actions正在运行的Windows Latest 构建过程完成 但是当运行测试时 它被卡住并且不执行从生成的可执行文件Visual
  • 带有 git Remote 的 Gem 文件在 Heroku 推送上失败

    我的 gemfile 中有以下行 gem client side validations git gt email protected cdn cgi l email protection Dakuan client side valida
  • Git 到 TFS 源代码管理迁移

    我想看看 TFS 如何为我的命令工作 所以我想将我们当前的 GIT 存储库移动到 TFS 数据库 我们使用 GIT 来获得普遍的分支支持 因此我想使用 TFS 2010 来解决该问题 现在的问题是 如何将 GIT 存储库导出到 TFS 显然
  • 无法通过 Git Bash 克隆 git 存储库

    在尝试使用克隆存储库时git clone 它显示以下错误 致命 无法访问 https github com microsoft c9 python getting started git https github com microsoft
  • git reflog 和 log 有什么区别?

    手册页说 log 显示提交日志 reflog 管理 reflog 信息 reflog 信息到底是什么 它有哪些日志没有的信息 日志看起来更详细 git log显示当前的 HEAD 及其祖先 也就是说 它打印提交 HEAD 指向的提交 然后打
  • 使当前提交成为 Git 存储库中唯一(初始)提交?

    我目前有一个本地 Git 存储库 我将其推送到 Github 存储库 本地存储库有约 10 次提交 Github 存储库是其同步副本 我想要做的是从本地 Git 存储库中删除所有版本历史记录 以便存储库的当前内容显示为唯一提交 因此存储库中
  • Git 更改丢失 - 为什么?

    我们的开发团队正在使用 git 最近我们至少两次丢失了文件更改 我们正在使用私人 Github 存储库 在当前情况下 我们可以返回 Github 上的日志并查看我对文件所做的一些更新 后来 另一位团队成员更改了文件的不同部分 它似乎破坏了我
  • 从 Xcode 中的存储库中删除未引用的图像

    我从资源文件夹中删除了 default png 因为我想要为加载屏幕使用不同的图像 但我只是删除了引用 这显然是一件愚蠢的事情 我将新图像拖到资源中并尝试将名称更改为 Default png 但它不允许我这样做 我认为这是因为第一个 Def
  • github actions 找不到 package.json

    我正在尝试设置一些基本的 GitHub 操作来在 PR 上撰写评论 Action 发布在 github 上 如下所示 action yml 文件 name name description description author me inp
  • 显示 master 之前/之后有多少提交分支的别名

    新的 Bitbucket Branches 页面非常棒 它显示每个分支领先 落后于 master 的提交数量 是否有显示相同信息的 Git 别名 信息应显示 分店名称 上次更新是什么时候 其背后有多少提交 有多少提交领先于 master 看
  • git 是否有任何静态接口?

    我一直在寻找一个宁静的 git api 但似乎没有找到 我得到的最接近的是 Github 的 api 来访问一些存储库信息 还有其他的实施吗 Orion Git API http wiki eclipse org Orion Server
  • git merge 冲突的不同场景

    我试图了解 git 合并后可能发生 git 冲突的情况以及如何避免它们 我创建了一个 git 存储库并向其中添加了一个文本文件 我已将 1 添加到文本文件中并将其提交给 master 我已经从 master 创建了一个新分支 分支 2 并将
  • 如何使用git-svn切换svn分支?

    复制 如何让 git svn 使用特定的 svn 分支作为远程存储库 https stackoverflow com questions 192736 how do i make git svn use a particular svn b
  • git 推送到 github 失败并显示“错误:pack-objects 因信号 967 死亡”

    我触发了这个命令 git push origin master 我得到这个结果 Counting objects 15626 done Delta compression using up to 4 threads error pack o
  • ssh:连接到主机 bitbucket.org 端口 22:连接超时致命

    整个错误是 ssh connect to host bitbucket org port 22 Connection timed out fatal The remote end hung up unexpectedly 当我从位于不同服务
  • 从 github 中排除文件夹

    我需要从我的 Github 中排除文件夹 App Data 但我不知道如何做 我有一个应用程序 它在目录中保存许多文件 例如 jpg 文件 Source MyProject App data stored filename jpg 现在我需
  • 无法使用 Git 部署从多项目解决方案部署正确的网站到 Azure

    我有一个解决方案 它有一个 mvc 网站 WebApplication1 该网站依赖于解决方案中的另一个项目 WebAppCore 源代码托管在 Visual Studio Online 上的 git 中 我配置了持续集成 一切都构建得很好
  • 如何创建名称中带有正斜杠的标签

    当我已经有了类似的标签时 有什么方法可以创建名称中带有正斜杠的 git 标签吗 假设我有 1 16 0 标签 并且我想创建 1 16 0 1 0 0 标签 git tag 1 16 0 1 0 0 error refs tags 1 16
  • 如何自动将清单添加到新的 github PR 中?

    创建 Github 拉取请求时 如果能自动将 代码审查 清单添加到 PR 中 那就太好了 然后 PR 提交者可以填写此内容 审核者将能够看到提交者在发送审核之前已经完成了他应该做的事情 这有可能吗 最好的解决方案是在创建 PR 时自动显示清

随机推荐

  • 在元素属性内回显?

    我只是想知道是否可以将 php echo 放入 iframe 中 像这样的东西 如果不是 正确的做法是什么 PHP 的工作方式是在发送 HTML 之前在幕后完成工作 因此当您实际将完整数据发送给用户时 它已被解析为应提供给浏览器的内容 也就
  • Jetpack Compose LargeTopAppBar 显示标题两次

    我正在尝试使用 Scaffold 和 LargeTopAppBar 构建 Jetpack Compose 应用程序 我目前有一个非常简单的 UI 只有 Scaffold 中的 LargeTopAppBar 但是当我运行我的应用程序时 我在屏
  • 使用 XML 和 XSL

    第一次编辑我正在获取Child 1标签以 C 形式放入 DropDownList 请建议用于删除 XML 文件中的父标签及其所有子标签的最佳实践代码 C 例子
  • 从n中生成k个元素的“反灰色”按需组合的算法

    我正在尝试实现一种算法 从一组 n 个元素中获取 k 个元素的所有组合 其中两个连续组合之间的差异最大化 类似于反向格雷码 换句话说 应该对组合进行排序以避免元素连续出现两次 这样就不会不必要地歧视任何元素 理想情况下 该算法也不会预先计算
  • C# 的每个循环按什么顺序迭代 List

    我想知道 C 中的 foreach 循环循环的顺序System Collections Generic List
  • 是否有用于平面度测试的在线算法?

    我知道平面度测试 http en wikipedia org wiki Planarity testing可以在 O v 相当于 O e 因为平面图有 O v 条边 时间内完成 我想知道是否可以在 O 1 摊销时间内在线完成 因为添加每个边
  • 在 MySQL 中使用 NoSQL

    我注意到 MySQL 可以将 Memcached NoSQL 与 InnoDB 结合使用 但我无法检索有关如何使用它的信息 我想与 PHP 一起使用 NoSQL 查询是标准的吗 首先 MySQL从5 6版本开始只支持NoSQL的memcac
  • 在 Django 中创建时将用户添加到组

    仅当创建用户后将该用户的字段指定为 True 时 我才希望将用户添加到组中 创建的每个用户都会有一个与之关联的 用户配置文件 这是实现这样的事情的正确方法吗 模型 py def add group sender instance creat
  • npm run build 不使用代理

    我有一个正在运行的react js应用程序 它使用npm start 使用create react app构建的应用程序 运行 当我尝试运行 npm run build 时 它会构建应用程序 我用它来服务 serve s build l 3
  • LIKE 条件中的多个字符串 - Presto SQL

    我想使用查询表中的列LIKE条件 这工作正常 select from my table where my column LIKE hello 但是 如何在我的数据库中使用多个字符串查询此列LIKE健康 状况 寻找类似的东西 select f
  • Flash 安全错误 #2048:是否有解决方法,或者 Twilio 是否必须更改其元策略?

    我的 Flash Flex 应用程序出现问题 几个月来 它可以从 Twilio 下载文件 但现在我收到以下错误 我不得不删除超链接 所以想象 ttp 实际上是 http 安全错误事件 类型 安全错误 气泡 false 可取消 假事件阶段 2
  • Bash 将 Curl 结果存储到数组中

    我正在运行以下curl命令 results curl USERNAME PASSWORD URL search dates dateFields created from Three Months Ago today repos gener
  • jenkins maven setPerCoreThreadCount

    詹金斯版本 1 538 使用 Maven 3 1 0 工作得很好 使用 Maven 3 2 1 会出现以下错误 Jenkins自己安装了Maven 3 2 1 从Apache下载并解压 怎么了 Parsing POMs maven31 ag
  • Java 中哪个重载会被选择为 null?

    如果我用 Java 写下这一行 JOptionPane showInputDialog null Write something 将调用哪个方法 showInputDialog Component parent Object message
  • 一个可选参数,不需要位置参数

    我有一个关于 python argparse 的问题 是否可以有一个不需要位置参数的可选参数 Example parser add argument lat help latitude parser add argument lon hel
  • 在 IntelliJ 中的 Java 早期访问版本中启用“预览”功能

    不幸的是 即使是 IntelliJ 的最新早期访问版本通常也不支持 Java 的早期访问版本 例如 我正在尝试使用Intellij 2022 1 1预览版 终极版 与实验构建 https jdk java net loom of 织机计划
  • javassist.CannotCompileException: [源错误] ) 丢失了这是什么?

    我现在尝试在我的 Web 应用程序中编写一些字节码操作 当我尝试将代码注入到我的方法中时 它总是会抛出错误 javassist CannotCompileException 源错误 丢失 我不知道为什么以及这是什么 我用谷歌搜索了一下 有些
  • 将视频保存到 Android 的 MediaStore 时设置文件名和扩展名

    我需要一些非常简单的东西 我有一个我的应用程序录制的 mp4 文件 我想将其插入 MediaStore 到用户的视频收藏中 这是我的代码 包括处理新的作用域存储的推荐方法 fileToExpose is in internal storag
  • 如何使用 Java 通过 Selenium WebDriver 获取父级 HTML 标签 [重复]

    这个问题在这里已经有答案了 我有一个测试来搜索 span class legend 在上一个级别上 我有一个包含多个值的字段集 这是我的问题 我没有得到该字段集的定位器 首先我得到一个包含所有内容的列表class legend对象 List
  • SSH 每次都会询问密码

    我的私钥有一个恼人的问题 每次我想要clone or push通过终端或 Tower 应用程序中的 ssh 我必须输入我的密码 我什至删除并重新创建了 ssh 密钥 并在 Github 上设置了几次密钥 但看起来它的生命周期很短 几分钟后就