You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置Git Bash实现系统重启后无需重复输入SSH密钥口令

你当前添加到.bash_profile的脚本仅能实现终端启动时自动拉起ssh-agent并加载密钥,而ssh-agent的口令缓存是存储在内存中的,系统重启后缓存会被完全清空,因此每次开机后首次触发密钥校验时必然需要输入一次口令,属于正常的设计逻辑。你可以选择以下两种方案实现重启后无需重复输入口令:

方案1:使用系统密钥环存储口令(推荐,兼顾安全和便利)

该方案无需移除私钥本身的口令,利用系统自带的可信存储机制保存口令,登录系统后会自动解锁,不会额外降低安全性,适合所有带桌面环境的设备:

  • macOS用户:
    执行命令ssh-add --apple-use-keychain ~/.ssh/你的私钥文件名,输入一次你的SSH密钥口令即可完成存储。如果是macOS Ventura及更高版本,还需要在~/.ssh/config中新增如下配置,保证SSH调用时会自动读取钥匙串中的口令:
    Host *
      UseKeychain yes
      AddKeysToAgent yes
      IdentityFile ~/.ssh/你的私钥文件名
    
  • 桌面Linux(GNOME/KDE等主流桌面发行版)用户:
    大部分发行版默认自带SSH密钥管理组件,首次弹出输入密钥口令的提示时,勾选「自动解锁登录密钥环」「下次登录无需输入」类的选项即可,系统会将口令存储在登录密钥环中,你输入系统用户密码登录后就会自动解锁,不需要重复输入SSH口令。
  • Windows用户:
    在系统服务中找到OpenSSH Authentication Agent,将启动类型设置为「自动」,开启服务后执行命令ssh-add ~/.ssh/你的私钥文件名,输入一次口令后就会永久存储,系统重启也不会丢失。

方案2:直接移除SSH密钥的口令(适合个人自用设备,操作最简单)

如果你确认你的设备只有你本人可以访问,不需要额外的口令保护私钥,可以直接删除私钥的口令,之后所有SSH相关操作都不需要输入密码:
执行命令ssh-keygen -p -f ~/.ssh/你的私钥文件名,按照提示输入旧的口令后,两次新口令直接按回车留空,确认后即可移除私钥的口令。

风险提示:该方案会降低私钥的安全性,如果你的设备丢失或者被他人非法访问,私钥会直接泄露,可能导致你的代码仓库等关联资源权限被盗用,请谨慎使用。

内容的提问来源于stack exchange,提问作者Joy Karmoker

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 17:54:06