解决连接远程服务(跳板机或git)时,免输入私钥密码:Enter passphrase for key

https://cdn.192ly.com/wp-content/uploads/2020/03/1583304722-Password-9.jpg)

环境:mac
工具:iterm
登录验证工具:google验证器

免输入私钥密码

一、发现问题

今天之前使用items 连接跳板机ssh脚本命令的时候,还能正常只输入google验证码,不知什么原因导致,今天先让我输入电脑密码才可以。我也不记得何时配置过免密登陆。

总之让输入私钥。

Enter passphrase for key /Users/自己用户路径/.ssh/XXXXXXX

二、解决问题

于是在网上寻找少输入一次密码的方法。方法有很多,试着放到自己的ssh脚本中,还是不好使。因为以前用的好好的,突然出现这种情况,寻找原因的话,是不是因为某缓存文件清除了呢?
结果真是。由于找到了这个命令 ssh-add

ssh-add
把专用密钥添加到ssh-agent的高速缓存中

语法
 ssh-add [-cDdLlXx] [-t life] [file ...]
 ssh-add -s pkcs11
 ssh-add -e pkcs11
 
选项
 -D:删除ssh-agent中的所有密钥.
 -d:从ssh-agent中的删除密钥
 -e pkcs11:删除PKCS#11共享库pkcs1提供的钥匙。
 -s pkcs11:添加PKCS#11共享库pkcs1提供的钥匙。
 -L:显示ssh-agent中的公钥
 -l:显示ssh-agent中的密钥
 -t life:对加载的密钥设置超时时间,超时ssh-agent将自动卸载密钥
 -X:对ssh-agent进行解锁
 -x:对ssh-agent进行加锁

于是 在 shh里前面加了一行命令,如下:

 ssh-add --apple-use-keychain /Users/自己用户路径/.ssh/XXXXXXX

注: 网上有很多使用的 -K 参数,但是mac会报warning错误,如下:

The -K and -A flags are deprecated and have been replaced
         by the --apple-use-keychain and --apple-load-keychain
         flags, respectively.  To suppress this warning, set the
         environment variable APPLE_SSH_ADD_BEHAVIOR as described in
         the ssh-add(1) manual page.

所以上面那行命令 使用了 --apple-use-keychain 参数。

最终,可以跳过第一次要输入的私钥密码。



END


如有问题请在下方留言。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值