安装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
字段(网页链接也可看到)
效果如图:
编辑登录脚本
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]
`