环境准备

安装brew

参考文档:https://brew.sh/index_zh-cn.html

安装oath-toolkit 和expect

brew install oath-toolkit

brew install expect

 

正式开始

生成​​MFA_KEY对应的6位otp密码:oathtool -b --totp [MFA_KEY]​

​MFA_KEY​​​就是你绑定​​APP​​​时,扫描的二维码里的​​secret​​字段(网页链接也可看到)

效果如图:

免otp动态密码登录堡垒机_免密登录

编辑登录脚本

vim relay.exp

填以下内容,修改下登录用户名和ip, 不同公司堡垒机跳转稍微差异,注意交互式输入密码就好!

#!/usr/bin/expect
set timeout 3
#堡垒机用户名
set login zhang_san
#堡垒机密码,有则send
set login_pass 123456
#堡垒机地址
#set login_ip xxx-corp.com

set login_ip [lindex $argv 0]
set six_code [lindex $argv 1]

#登陆堡垒机
spawn ssh $login@$login_ip
expect {
"*:" {send "$six_code\n";interact}
}

#登录后执行
#send "./hadoop.sh \n"

加执行权限: chmod 777 relay.exp

最终启动:传参ip + 6位otp密码

./relay.exp 10.13.122.111 `oathtool -b --totp ​​[MFA_KEY]​​`