by Devin Yang

建立于: 5年前 ( 更新: 5年前 )

网络上好像有很多colab ssh介绍。
这里我介绍,我用自己的连线方式,透过自己写的bash连线到colab。

如何做到的,概念上很简单,

这支bash会在colab的VM上安装OpenSSH Server,
并且随机生成自己的OpenSSH的公密钥匙对(SSH key pairs)。

然后,透过这支bash,我们也提供自己主机的连线信息给他,
主机的「使用者名称」、「主机位置]及「要创建ssh通道的连接埠」,跟我们自己的「OpenSSH公钥」。

这支bash能把我们提供的公钥添加到colab的 /root/.ssh/authorized_keys ,
让我们取得登录colab root VM的权限。

然后colab vm上,也会提供他随机的生成公钥(/root/.ssh/authorized_keys)给我们,
将他加到我们主机的${HOME}/.ssh/authorzed_keys内,让colab有权限连到我们的主机,

因此在Colab上运行的这只Bash就可以帮我们创建VM与我们主机的SSH通道罗。

当加密的通道创建完成,我们便可穿透防火墙,
登录到colab的VM啦。



看看Demo吧。

免费的GPU,拿来跑Python真棒。:D
我的 colab_ssh Github。

附注: 如果断线了,使用的是相同的连接埠,您可能需要删除旧有的通道,或换一个连接埠。
您也可以使用GitHub中的clear_all_tunnels.sh清掉自已电脑中所有没用的连线。




测试中,贴到浏览器的console,自动定时点击,防止断线用.
function ClickConnect(){
console.log("Working"); 
document.querySelector("colab-toolbar-button#connect").click() 
}
setInterval(ClickConnect,60000)

Tags: linux python colab

Devin Yang

文章内容无法一一说明,如果您有什么不了解处,欢印提问哦:)

No Comment

Post your comment

需要登入才可留言!

类似文章


linux,system,config

修正CentOS6.x无法再更新的问题

有些地方或许还存在一些老旧进程,只能跑旧的系统。但又希望能运行及安装一些想要的包,您或许可以试这招请注意,如果这个系统对您很重要,请自行评估,建议您是Docker环境,并且有备份了image才可尝试。

linux

如何建ssh密钥,让自己的电脑可以连到 GCE的instance

最近刚好开始使用Google的GCE,日志一下Goolge官方的说明文档,如何生成密钥给instance使用。 这里的-C comment会用登录使用者的名称,另外-t使用rsa。

linux,docker,wifi

用docker创建WPA2/EAP企业用Radius验证伺服器,后端使用mysql数据库

AP提供了WPA2/EAP功能,但不会用吗? 本文介绍我如何透过docker的ubuntu:21.04 image,极速创建Radius伺服器, 与Wifi的WPA2/EAP等相关运用。