基於django的webssh實現

所需技術:
  websocket 目前市面上大多數的 webssh 都是基於 websocket 協議完成的
  django-channels django 的第三方插件, 爲 django 提供 websocket 支持
  xterm.js 前端模擬 shell 終端的一個庫
  paramiko python 下對 ssh2 封裝的一個庫

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

流程圖:
基於django的webssh實現

具體實現:
  https://github.com/huyuan1999/django-webssh

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章