SSH配置中动态处理远程集群每日变化用户ID的问题求助
SSH配置中动态处理远程集群每日变化用户ID的问题求助
我现在碰到个挺闹心的情况:远程集群上的用户ID每24小时就会自动变更一次,每次登录都手动处理ID实在太折腾人了。
我不想每次都做下面这两件事:
- 每次登录都重新输入新ID,比如敲
ssh NewID@thathost或者ssh -l NewID thathost - 每天手动编辑
~/.ssh/config里对应主机的配置项
我本来打算写个脚本,让它提示我输入用户ID,然后把信息存到临时配置文件里。不过我在 ~/.ssh/config 里写的这段配置没达到预期效果:
Match originalhost thathost !exec "ssh -T -F ~/.ssh/HACK/config thathost true" exec "~/.ssh/HACK/queryID thathost" include ~/.ssh/HACK/config Host thathost include ~/.ssh/HACK/config
我的预期是这个Match规则会先尝试连接,如果连接失败,就调用queryID脚本重新生成临时配置。但问题是,哪怕我在命令行里执行那个ssh命令返回的是0,在配置里调用时它的退出码总是255,导致queryID脚本每次都会被触发。
我隐约觉得SSH配置里可能不允许调用ssh命令?这里说明下,不存在递归问题,因为嵌入的ssh操作并没有使用同一个配置文件。
备注:内容来源于stack exchange,提问作者Carl Ponder
相关产品推荐
相关产品推荐

