溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

基于 django 的 webssh 實(shí)現(xiàn)

發(fā)布時(shí)間:2020-08-02 05:29:12 來源:網(wǎng)絡(luò) 閱讀:5202 作者:紅塵世間 欄目:編程語言

所需技術(shù):
??websocket 目前市面上大多數(shù)的 webssh 都是基于 websocket 協(xié)議完成的
??django-channels django 的第三方插件, 為 django 提供 websocket 支持
??xterm.js 前端模擬 shell 終端的一個(gè)庫
??paramiko python 下對 ssh3 封裝的一個(gè)庫

如何將所需技術(shù)整合起來?
??1、xterm.js 在瀏覽器端模擬 shell 終端, 監(jiān)聽用戶輸入通過 websocket 將用戶輸入的內(nèi)容上傳到 django
??2、django 接受到用戶上傳的內(nèi)容, 將用戶在前端頁面輸入的內(nèi)容通過 paramiko 建立的 ssh 通道上傳到遠(yuǎn)程服務(wù)器執(zhí)行
??3、paramiko 將遠(yuǎn)程服務(wù)器的處理結(jié)果返回給 django
??4、django 將 paramiko 返回的結(jié)果通過 websocket 返回給用戶
??5、xterm.js 接收 django 返回的數(shù)據(jù)并將其寫入前端頁面

流程圖:
基于 django 的 webssh 實(shí)現(xiàn)

具體實(shí)現(xiàn):
??https://github.com/huyuan1999/django-webssh

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI