Отправка команд на удаленный сервер s sh из формы моего сайта - PullRequest
3 голосов
/ 30 января 2020

Я хочу создать веб-сайт, на котором пользователи могут заполнить форму,

, а затем я отправляю эти параметры на удаленный сервер sh для выпуска сценария python.

Например, на моей веб-странице форма содержит вводимый текст, para1, para2, para3 и т. Д. c ..

После того, как пользователь нажмет на кнопку отправки, он сможет отправить команду на удаленный сервер s sh. серверный терминал "python para1, para2, para3, ....."

Какая техника мне нужна для решения этой проблемы ??

Спасибо.

1 Ответ

2 голосов
/ 30 января 2020

Вы можете создать веб-приложение, используя Flask Framework, а затем использовать модуль Paramiko для подключения сценария Python к серверу S SH и выполнения команд с локального компьютера. Ваш сценарий python будет действовать как клиент S SH.

Проверьте эту ссылку, которая показывает шаги по созданию веб-приложения с использованием Python и Flask Framework: https://code.tutsplus.com/tutorials/creating-a-web-app-from-scratch-using-python-flask-and-mysql--cms-22972

Веб-приложение Пример:
Для простой формы вы можете обновить домашнюю страницу и страницу регистрации, чтобы получить параметры формы и использовать эти параметры для передачи команд на сервер S SH.

Ниже приведена ссылка на Paramiko и одна ссылка с примерами. Настроить Paramiko очень просто.

try:
    client = paramiko.SSHClient()
    client.load_system_host_keys()
    client.set_missing_host_key_policy(paramiko.WarningPolicy)

    client.connect(hostname, port=port, username=username, password=password)

    stdin, stdout, stderr = client.exec_command(command)
    print stdout.read(),

finally:
    client.close()

Здесь именем хоста будет сервер S SH, а имя пользователя и пароль будут теми, которые вы обычно используете для подключения к S SH сервер.

Парамико - http://docs.paramiko.org/en/stable/
Пример - https://gist.github.com/mlafeldt/841944

...