by Devin Yang

建立於: 4年前 ( 更新: 4年前 )

網路上好像有很多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

需要登入才可留言!

類似的文章


php,linux

WebShell功能介紹及注意事項

突然想來介紹什麼是WebShell就上網找了一個,他的功能已相當好了, 不過我還想要一些功能,於是就用了三個晚上的時間,替他進行了一些小小的優化。 如果,您還沒聽過WebShell,快來看看這個影片吧。 如果您喜愛我的優化版本,請給我個讚哦,謝謝啦。

linux

如何建ssh金鑰,讓自己的電腦可以連到 GCE的instance

最近剛好開始使用Google的GCE,記錄一下Goolge官方的說明文件,如何產生金鑰給instance使用。 這裡的-C comment會用登入使用者的名稱,另外-t使用rsa。

linux

rsync回傳的錯誤碼

這裡列出所有的rsync錯誤碼,因此在排程中,我們可以了解失敗的原因。