使用linux/macos 自带的shell实现证书方式的快速登陆


一般登陆机器都是需要使用证书安全登陆到跳板机上然后在跳板机去登陆到各个机器。

我们建立一个统一的文件夹mykey,将登陆的pem证书放上去,证书权限设置成0600(chmod 0600 xx.pem),然后创建一个空白的文件,vim jump.sh

#!/usr/bin/expect -f
set user {{username}}
set host {{hostname}}
set password {{certificate_password}}
set certificate {{path of sit.pem}}
set timeout -1

spawn ssh -i $certificate $user@$host
expect "*passphrase*"
send "$password\r"
interact

然后在/usr/local/bin/下创建一个空白文件vim jump,输入

#!/bin/zsh
export LC_CTYPE=en_US
expect ~/mykey/jump.sh

然后给jump文件执行权限,chmod +x jump

这样就可以在shell窗口直接执行jump命令就可以完成跳板机的登陆了,加上export LC_CTYPE=en_US这句是为了解决使用expect命令后不能正常使用sz  rz命令