购彩365
重庆银保监局蒋平:强化数字金融... 陕西最大的石窟群,番邦人惊叹其... 肾病总反复,全怪没好药?肾内科... 狗狗嘴巴流浓粘液腐败求原因... 拿饮料当水喝, 6岁孩子患痛风!...

让建站和SEO变得简单

让不懂建站的用户快速建站,让会建站的提高建站效率!

购彩365官网>>你的位置:购彩365 > 购彩365官网 > 在浏览器里面运行敕令行,真香!

在浏览器里面运行敕令行,真香!

发布日期:2022-05-15 14:30    点击次数:102

 

之前我看过一篇《万物皆可 API》,这个花式便是把一些剧本的实验恶果输出到了网页里面。

然而这个照旧有好多创新空间,比如说 UI 能面子些,以致能实验交互敕令该多好,终末思来想去,它的究极形态未便是一个 Web 版的 Terminal (终局)吗?

然后原来我还想着对花式进行改良来着,然而想想,最终若是要改形成一个 Web 版的 Terminal,这个笃定仍是有开源美满了。

于是我就初始搜,终末搜到几个还可以的。

Web Terminal  ttyd:https://github.com/tsl0922/ttyd,一款可以将敕令行转到 Web 实验的器具,基于 C 编写的。  gotty:https://github.com/yudai/gotty,和 ttyd 雷同,只不外是 Go 话语写的,但最新更新是在 2017 年了,意象失修了。  wetty:https://github.com/butlerx/wetty,基于 Node.js 征战的,也可以将敕令行转到 Web 实验,然而需要基于 SSH 登录,其实便是个 Web 版的 SSH 终局。  Secure Shell (Chrome App):Google 浏览器插件,也可以提供网页版 SSH 终局。  tmate:https://tmate.io/,从 tmux 修改而来,可以辅助 Terminal 共享。

进程一番试用,我个人首推的照旧 ttyd,其他的几个要么是基于 SSH 的,要么不若何好用或罢手爱戴了。

底下我就来先容下 ttyd 的浅薄用法。

装置

装置其实十分浅薄,我用的是 Mac,是以用 HomeBrew 胜利装置即可: 

brew install ttyd 

若是你用的是 Windows、Linux,依然也可以辅助,装置可以参考 https://github.com/tsl0922/ttyd#installation 章节。

使用

ttyd 辅助不少功能配置,齐备敕令如下: 

ttyd is a tool for sharing terminal over the web  USAGE:      ttyd [options] <command> [<arguments...>]  VERSION:      1.6.3  OPTIONS:      -p, --port              Port to listen (default: 7681, use `0` for random port)      -i, --interface         Network interface to bind (eg: eth0), or UNIX domain socket path (eg: /var/run/ttyd.sock)      -c, --credential        Credential for Basic Authentication (format: username:password)      -u, --uid               User id to run with      -g, --gid               Group id to run with      -s, --signal            Signal to send to the command when exit it (default: 1, SIGHUP)      -a, --url-arg           Allow client to send command line arguments in URL (eg: http://localhost:7681?arg=foo&arg=bar)      -R, --readonly          Do not allow clients to write to the TTY      -t, --client-option     Send option to client (format: key=value), repeat to add more options      -T, --terminal-type     Terminal type to report, default: xterm-256color      -O, --check-origin      Do not allow websocket connection from different origin      -m, --max-clients       Maximum clients to support (default: 0, no limit)      -o, --once              Accept only one client and exit on disconnection      -B, --browser           Open terminal with the default system browser      -I, --index             Custom index.html path      -b, --base-path         Expected base path for requests coming from a reverse proxy (eg: /mounted/here)      -P, --ping-interval     Websocket ping interval(sec) (default: 300)      -6, --ipv6              Enable IPv6 support      -S, --ssl               Enable SSL      -C, --ssl-cert          SSL certificate file path      -K, --ssl-key           SSL key file path      -A, --ssl-ca            SSL CA file path for client certificate verification      -d, --debug             Set log level (default: 7)      -v, --version           Print the version and exit      -h, --help              Print this text and exit  Visit https://github.com/tsl0922/ttyd to get more information and report bugs. 

可以看到,这里可以使用 -p 来指定运行端口,使用 -c 指定登录密码等等。

基本使用

咱们来试下,最基本的敕令如下: 

ttyd bash 

这样就使用启动了一个 Web 版的 bash,运作歹果如下:

这里骄横是在 7681 上运行的,那咱们就可以大开 http://localhost:7681/,就可以胜利运行敕令了:

十分丝滑。

看了下背后的传输契约是 WebSocket,是以踏实性照旧有保险的:

诚然,咱们也可以无谓 bash,用我方心爱的 Shell,比如 zsh,敕令如下:

ttyd zsh 

这样的话浏览器里面的 Shell 便是 zsh 啦:

绑定端口

诚然咱们也可以更换端口,比如 8000,则可以使用如下敕令: 

ttyd -p 8000 zsh 

这样 ttyd 就可以在 8000 端口运行 HTTP 行状,咱们大开 http://localhost:8000/ 就可以实验敕令了。

Basic Auth

诚然这样胜利暴流露去似乎也不太安全,咱们可以建树 Basic Auth,使用 -c 这个选项即可指定用户名密码,要道为 username:password,举例咱们指定用户名和密码都是 admin,那敕令就这样写: 

ttyd -p 8000 -c admin:admin zsh 

这样大开  http://localhost:8000/ 之后就需要输入用户名密码才可以登录了:

自动大开浏览器

咱们还可以使用 -B 敕令让它自动大开浏览器: 

ttyd -p 8000 -B zsh 

这样运行之后,默许的浏览器就会自动大开 http://localhost:8000/,无谓咱们再去敲网址了,十分便捷。

是以,上头这个敕令以致咱们还可以做成一个 alias,比如: 

alias webcmd="ttyd -p 8000 -B zsh"; 

这样输入 webcmd 就可以直率大开一个 Web 版敕令行了。

Docker 辅助

另外 ttyd 还提供了 Docker 镜像,若是你不想装置的话,可以胜利启 Docker,比如这样的话就可以在 7681 上启动: 

docker run -it --rm -p 7681:7681 tsl0922/ttyd 

但这本体上是把容器里面的敕令行暴流露来了,若是要泄露宿主机的敕令行还需要 mount 下磁盘:

SSH 终局

ttyd 还辅助 SSH 终局,敕令如下: 

ttyd login 

这样的话,大开浏览器之后就需要 SSH 登录,输入正确的 SSH 用户名和密码后才气使用。

SSL 辅助

若是你想配置 SSL 辅助,即辅助 HTTPS 的话,可以我方生成文凭并添加对应的参数来启动 ttyd,参考贯穿是:https://github.com/tsl0922/ttyd/wiki/SSL-Usage。

更多

上头的用法基本能空闲泛泛需要了,若是想要了解更多用法,可以参考其 Wiki,贯穿是:https://github.com/tsl0922/ttyd/wiki/Example-Usage。

公网泄露

诚然,咱们若是想把它公网暴流露来,还可以互助 Ngrok,比如 ttyd 运行在 8000 端口上,我可以使用 Ngrok 将其暴流露来: 

ngrok http 8000 

运作歹果如下:

这样我就可以通过指定的 URL 拜谒这个终局了,比如这里我就可以使用 https://11b4-2404-f801-8050-3-bf-00-55.ngrok.io/ 来拜谒我的终局了:

十分 Nice!

追溯

好了,以上便是 ttyd 的基本使用了,有了它,咱们就可以直率将某台机器上的终局转到 Web 上来实验了,还长短常便捷灵验的。 

 



首页 首页 公司资讯 购彩365官网

Powered by 购彩365 @2013-2022 RSS地图 HTML地图

Copyright 365建站 © 2013-2021 365建站器 版权所有