Интерактивный SSH-терминал (оболочка) в шаблоне Django с Javascript, HTML - PullRequest
0 голосов
/ 16 октября 2019

В нашем предприятии есть инструмент обеспечения, который используется для создания / изменения / настройки некоторых устройств с SSH (paramiko). Он использует Django 2.1.0 и Python 3.5.

На самом деле, у нас есть утилита, которая позволяет нам отправлять одну команду на устройство посредством ssh и распечатывать вывод (например: show running-config на устройстве Cisco).

Я пытаюсь создать интерактивную оболочку (например, http://web -console.org / , но встроенную в веб-страницу), которая будет работать так же, как если бы вы установили соединение SSH наустройство и его можно использовать на веб-странице (HTML и Javascript).

Я действительно могу отправить одну команду, как старый метод, и она отображается правильно. Проблема в том, что я не могу повторно использовать сеанс SSH с устройством, потому что каждый запрос POST, сделанный в представлении, создает новое представление, поэтому создается новый сеанс SSH, и он не использует старый.

Например, на устройстве Cisco я хотел бы отправить команды «настроить терминал» и «интерфейс vlan 1». Первая команда будет работать, вторая будет в неправильном контексте, потому что был создан новый сеанс SSH.

Вопрос: как я могу сохранить сеанс SSH, чтобы использовать его позже на веб-странице? Я не могу сохранить его в модели Django (пробовал с BinaryField), я не могу вернуть его в Javascript ... Возможно ли это сделать? Если да, то как? Если нет, по крайней мере я пытался ...

Спасибо за вашу помощь! :)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...