有个业务,想要个页面上按钮点击直接远程连接服务器,自动输入账号密码的那种
查了些资料,无论用node还是java都是起服务使用exec方法执行命令,但是我们想不调后台。直接第一次让客户安装注册表,之后可以一直调的那种。所以通过查询注册表语句意思,和调用挖坑,最后搞出来自定义协议来启动
注册表
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\ssh]
@="URL:ssh Protocol"
"URL Protocol"=""
[HKEY_CLASSES_ROOT\mycall\DefaultIcon]
@="cmd.exe,1"
[HKEY_CLASSES_ROOT\ssh\shell]
[HKEY_CLASSES_ROOT\ssh\shell\open]
[HKEY_CLASSES_ROOT\ssh\shell\open\command]
@="cmd.exe /k Xshell -url %1"
自定义注册的ssh协议,这个协议windows没有,但是xshell自己有,如果不注册到windows,浏览器访问不了,如果改成别的xshell还不识别。
/k 是你cmd执行完命令后自动关闭窗口,不想关的话改成 /c
下面%1是参数,也就是你传过来的参数
HTML
<a href="ssh://你的服务器账号:你的服务器密码@你的公网IP">cmd</a>
这里就省事了,直接a标签点击就可以,也可以直接浏览器输入url访问,把里面内容替换成你的服务器配置信息就可以