求帮神器之远程实时终端

开发 项目管理
当你写代码时遇到问题了,如果大佬离你比较近,你可以拿着笔记本电脑去现场请教,如果比较远呢?你可能会视频聊天,然后让大佬遥控你,但是这样就存在一个问题,大佬需要用语言来表达他要进行的操作,非常低效。

[[421363]]

当你写代码时遇到问题了,如果大佬离你比较近,你可以拿着笔记本电脑去现场请教,如果比较远呢?你可能会视频聊天,然后让大佬遥控你,但是这样就存在一个问题,大佬需要用语言来表达他要进行的操作,非常低效。

不如直接发个 url 给他,他打开后,可以看到一个终端,和你看到的终端一模一样,他的操作你完全可以看到,就像终端是共享的一样,如下视频所示:

看视频原链接

这个工具就是 termpair,1 分钟就可以完成安装和使用,需要 Python3.6 以上,不过仅支持 Linux 和 MacOS,毕竟 Windows 那不叫 terminal。

GitHub 链接: https://github.com/cs01/termpair

安装

  1. pip install termpair 

启动

先启动服务

  1. termpair serve 

你会看到服务已经启动:

然后在需要共享的终端里面执行:

  1. termpair share 

即可生成一个 url:

然后将这个 url 发给大佬,他和你就共享这个终端了,是不是一个求帮助的神器啊,他的操作对你完全可见,你的操作对他也完全可见:

如果不是局域网呢,那么就需要公网访问本地的服务了。要是你本来就在自己的服务器上搞开发,有自己的公网 IP,那就不存在这个问题了。

公网访问

这里推荐一个免费的工具---花生壳,可以把自己的电脑映射为一个域名,这样自己电脑的服务,就可以通过互联网访问了。

下载花生壳:

https://hsk.oray.com/download

然后按照这个教程进行配置即可:

https://service.oray.com/question/1360.html

特性

1、实时分享 unix 类终端。

2、无论是在终端输入还是浏览器输入,都是同步更新的。

3、多个浏览器也是同步的。

4、浏览器可以设置只读权限。

5、服务端并不能读取终端里的数据,因为使用了 128 位的 AES(Advanced Encryption Standard,缩写:AES)加密算法。

6、可以潜入网站中,输入 terminal id 和 key 即可连接,比如像这样:

技术栈

fastapi,websockets, aiofiles,uvicorn 对其实现感兴趣的可以去研究下源码:

https://github.com/cs01/termpair

最后的话

其实现原理就是 terminal 和 termpair 服务端通过 websocket 加密通信,然后 termpair 服务端再和浏览器通过 websocket 加密通信。除了远程协助之外,也是一个很不错的 terminal 工具,比如你可以对自己的电脑用于远程控制。

本文转载自微信公众号「Python七号」,可以通过以下二维码关注。转载本文请联系Python七号公众号。

 

责任编辑:武晓燕 来源: Python七号
相关推荐

2022-04-29 09:10:25

MobaXterm软件Linux

2021-01-05 09:55:46

TmateLinux命令

2009-02-09 10:02:00

远程终端服务

2019-11-15 09:58:04

LinuxAsciinemapython

2022-11-09 17:20:56

AUTOID10

2022-09-28 14:33:49

终端工具Linux

2022-07-27 11:46:35

Asciinema日志工具

2021-05-26 10:15:52

开发技能工具

2014-06-17 09:49:07

Ngxtop实时监控Nginx

2019-03-20 13:44:30

Web 开发代码

2012-10-23 14:08:49

白忙活的体验

2021-06-02 11:41:54

LinuxTmux命令

2011-03-29 10:06:40

Cacti

2024-03-08 16:27:22

领域事件DDD项目跨层解耦

2011-03-29 09:56:35

Cacti界面

2014-09-11 14:18:18

Linux

2010-01-25 13:42:04

Windows Emb

2020-10-16 18:16:21

远程服务器终端开发人员

2021-06-03 21:54:33

数据库框架缓存

2011-05-06 09:49:22

视觉设计移动终端UI设计
点赞
收藏

51CTO技术栈公众号