我可以在 Ubuntu 的 Web 浏览器上使用终端模拟器吗?

9 command-line gnome-terminal google-chrome chromebook gnome-shell

我不想使用默认的终端模拟器应用程序,而是想在 Chrome 或 Firefox 浏览器上打开一个终端选项卡,我可以在 Chromium OS (Crosh) 上这样做,但不能在 Ubuntu 上这样做。

Crosh - Chromium OS shell

ken*_*enn 8

您可以为其使用节点环境。

然后安装网络终端

npm install web-terminal -g
web-terminal --port 8088
Run Code Online (Sandbox Code Playgroud)

只需在浏览器中打开该链接:

http://localhost:8088/terminal/
Run Code Online (Sandbox Code Playgroud)

您可以向启动应用程序添加一个新条目以在启动时自动启动它。

gnome-session-properties
Run Code Online (Sandbox Code Playgroud)

打开该窗口,命名您的条目并在其中添加命令或添加 bash 脚本的路径。

编辑:

有很多的选择,我在过去使用其中的一个wetty 你可以寻找他们 的GitHubNMP

编辑2:

在 Web 浏览器上使用终端模拟器不是一个好主意。如果您在本地网络中感到不安全,并且您不在防火墙路由器后面,则攻击者可能会渗透到您的操作系统中。

编辑3:

通过ufw阻止从本地网络或互联网访问您的计算机,关闭分配的端口以进行传入连接尝试。

 sudo ufw enable
 sudo ufw deny in 8088
Run Code Online (Sandbox Code Playgroud)

查看防火墙的状态:

 sudo ufw status
Run Code Online (Sandbox Code Playgroud)

  • **警告:如果您在此答案中运行命令,则您的终端可以访问世界!** 对不起,大喊大叫,但这_真的_危险;默认情况下,web-terminal 侦听 0.0.0.0:8088,因此任何访问 yourip:8088 的人都将获得一个终端,然后可以以您的用户身份执行任何命令。还不如附上一句“进来拿你想要的!”。(另外,我真的不喜欢 `npm install -g randomsoftware`,在全球安装未经身份验证的未更新软件......) (12认同)
  • @kenn 我不确定你是否理解严重性。就目前而言,任何遵循您建议的人_完全暴露_他们的计算机。这不是关于“没有什么是 100% 安全的”,**这是关于 100% 不安全**。不要用“你可以提交错误”来驳回它。 (11认同)
  • 我觉得这个建议有点令人担忧的是,据我所知,通过 `npm` 安装的软件在你运行通常的 `apt-get` 命令以保持你的系统与最新的安全性保持同步时不会收到安全更新更新。您推荐的软件当然对安全至关重要。不难想象它可能包含尚未发现的错误,在某些情况下,这些错误会允许在本地计算机上运行的任何进程将权限提升到您的用户帐户。 (4认同)
  • @AGoldMan 足够多的用户使用公共网络,这些网络不强制在网络设备之间进行隔离,这*是*一个问题。笔记本电脑和咖啡店/机场/随机网络很常见。也就是说,当进程以稍微不寻常的方式与 PTY 交互时,该项目也无法正常工作,恕我直言,这是一个功能缺陷 (3认同)
  • @AGoldMan 我们能否停止传播路由器是防火墙的误解。此外,防火墙永远不应该是您唯一的防御层。 (3认同)