使用 Jupyter Notebooks 构建一个远程管理控制台
创始人
2024-03-02 05:49:22
0

把 Jupyter 变成一个远程管理控制台。

SSH 是一个强大的远程管理工具,但有些细节还不够好。编写一个成熟的远程管理控制台听起来好像是一件很费劲的事情。当然,开源社区中肯定有人已经写了一些东西吧?

是的,他们已经写出来了,它的名字是 Jupyter。你可能会认为 Jupyter 是那些数据科学家用来分析一周内的广告点击趋势之类的工具。这并没有错,它确实是的,而且它是一个很好的工具。但这仅仅刻画是它的表面。

关于 SSH 端口转发

有时,你可以通过 22 端口进入一台服务器。一般你也连接不到其他端口。也许你是通过另一个有更多访问权限的“堡垒机”,或者限制主机或端口的网络防火墙访问 SSH。当然,限制访问的 IP 范围是有充分理由的。SSH 是远程管理的安全协议,但允许任何人连接到任何端口是相当不必要的。

这里有一个替代方案:运行一个简单的 SSH 端口转发命令,将本地端口转发到一个“远程”本地连接上。当你运行像 -L 8111:127.0.0.1:8888 这样的 SSH 端口转发命令时,你是在告诉 SSH 将你的本地端口 8111 转发到它认为的“远程”主机 127.0.0.1:8888。远程主机认为 127.0.0.1 就是它本身。

就像在《芝麻街》节目一样,“这里”是一个微妙的词。

地址 127.0.0.1 就是你告诉网络的“这里”。

实际动手学习

这可能听起来很混乱,但运行比解释它更简单。

$ ssh -L 8111:127.0.0.1:8888 moshez@172.17.0.3
Linux 6ad096502e48 5.4.0-40-generic #44-Ubuntu SMP Tue Jun 23 00:01:04 UTC 2020 x86_64

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Wed Aug  5 22:03:25 2020 from 172.17.0.1
$ jupyter/bin/jupyter lab --ip=127.0.0.1
[I 22:04:29.771 LabApp] JupyterLab application directory is /home/moshez/jupyter/share/jupyter/lab
[I 22:04:29.773 LabApp] Serving notebooks from local directory: /home/moshez
[I 22:04:29.773 LabApp] Jupyter Notebook 6.1.1 is running at:
[I 22:04:29.773 LabApp] http://127.0.0.1:8888/?token=df91012a36dd26a10b4724d618b2e78cb99013b36bb6a0d1
<删节>

端口转发 8111127.0.0.1,并在远程主机上启动 Jupyter,它在 127.0.0.1:8888 上监听。

现在你要明白,Jupyter 在撒谎。它认为你需要连接到 8888 端口,但你把它转发到 8111 端口。所以,当你把 URL 复制到浏览器后,但在点击回车之前,把端口从 8888 修改为 8111

Jupyter remote management console

这就是你的远程管理控制台。如你所见,底部有一个“终端”图标。点击它可以启动一个终端。

Terminal in Jupyter remote console

你可以运行一条命令。创建一个文件会在旁边的文件浏览器中显示出来。你可以点击该文件,在本地的编辑器中打开它。

Opening a file

你还可以下载、重命名或删除文件:

File options in Jupyter remote console

点击上箭头就可以上传文件了。那就上传上面的截图吧。

Uploading a screenshot

最后说个小功能,Jupyter 可以让你直接通过双击远程图像查看。

哦,对了,如果你想用 Python 做系统自动化,还可以用 Jupyter 打开笔记本。

所以,下次你需要远程管理防火墙环境的时候,为什么不使用 Jupyter 呢?


via: https://opensource.com/article/20/9/remote-management-jupyter

作者:Moshe Zadka 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

相关内容

Anaconda的简单使用...
一、Anaconda安装图1 Anaconda官网Anaconda...
2025-05-29 22:09:25
不一致的结果 - Jupy...
在Jupyter Notebook中使用Numpy进行矩阵转置时可...
2025-01-11 08:31:27
不小心在JupyterNo...
在Jupyter Notebook中创建一个新的终端,输入以下命令...
2025-01-10 10:00:35
不同浏览器下的Jupyte...
在不同浏览器下,Jupyter Notebook的输出可能会因为浏...
2025-01-09 10:02:08
不同环境使用不同的Jupy...
要在不同的环境中使用不同的JupyterLab工作目录,你可以按照...
2025-01-09 03:30:03
不同的Jupyter No...
不同的Jupyter Notebooks默认情况下是单线程运行的,...
2025-01-08 15:31:56

热门资讯

Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
使用 KRAWL 扫描 Kub... 用 KRAWL 脚本来识别 Kubernetes Pod 和容器中的错误。当你使用 Kubernet...
JStock:Linux 上不... 如果你在股票市场做投资,那么你可能非常清楚投资组合管理计划有多重要。管理投资组合的目标是依据你能承受...
通过 SaltStack 管理... 我在搜索Puppet的替代品时,偶然间碰到了Salt。我喜欢puppet,但是我又爱上Salt了:)...
Epic 游戏商店现在可在 S... 现在可以在 Steam Deck 上运行 Epic 游戏商店了,几乎无懈可击! 但是,它是非官方的。...
《Apex 英雄》正式可在 S... 《Apex 英雄》现已通过 Steam Deck 验证,这使其成为支持 Linux 的顶级多人游戏之...
如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...
2024 开年,LLUG 和你... Hi,Linuxer,2024 新年伊始,不知道你是否已经准备好迎接新的一年~ 2024 年,Lin...
什么是 KDE Connect... 什么是 KDE Connect?它的主要特性是什么?它应该如何安装?本文提供了基本的使用指南。科技日...
Opera 浏览器内置的 VP... 昨天我们报道过 Opera 浏览器内置了 VPN 服务,用户打开它可以防止他们的在线活动被窥视。不过...