keychain解决私钥加密情况下,不重复输入密码问题

场景

对key加密码,本质是防止key的泄露,服务器权限的丢失。虽然key加密码但是在我们认证的过程中,也是需要输入key密码。
服务端key私钥代理只需输入一次密码后续不在需要输入key密码,需要引入第三方keychain

配置

1.keychain编译安装

https://github.com/funtoo/keychain

make -s -j4
cp keychain /usr/bin/

注意:keychain,在控制端,也就是私钥存储的服务器上!

2.配置登录环境变量

vim ~.bash_profile
keychain id_rsa  ~/.keychain/$HOSTNAME-sh

source  ~.bash_profile

3.认证key

cat id-rsa.pub >>~/.ssh/authorized_keys

chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys
# 进第一次输入密钥密码
/usr/bin/keychain

ssh root@ip

第一次,需要输入秘钥的密码(目的为了防止私钥泄露还能有密码保护)后续登录,不在会提示输入秘钥密码(除非机器重启)