Удаленное управление ПК с помощью xmpp

Удаленное управление ПК с помощью xmpp

В настоящее время я управляю своим сервером через SSH с моего телефона. Бывают моменты, когда интернет-соединение нестабильно или проблемно, или иногда у меня есть менее срочный запрос, и я не хочу идти на все, чтобы запустить приложение SSH.

Благодаря предложениям, сделанным в комментариях, я выбрал xmpp. Из того, что я прочитал, мне нужен xmpp-бот.

Как заставить xmpp-бота, поддерживающего OTR, запустить скрипт после получения сообщения, а затем отправить ответ обратно через xmpp?

Я не против хостинга сервера xmpp или могу использовать сторонний сервер. У меня есть root-доступ на сервере, он работает под управлением Debian.

Буду признателен за краткий пример.

решение1

Существует так много способов сделать это, что на их описание уйдет целая неделя!

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

В прошлом я написал несколько подобных систем, и они полезны и эффективны.

Если вы не увлекаетесь программированием, то также подойдет что-то вроде IFTTT со службой уведомлений на сервере, поскольку IFTTT будет выступать в качестве брокера.

Но на самом деле, вам стоит взглянуть на индивидуальное программирование. Все скриптовые языки, такие как Node.JS, Python и PHP, имеют библиотеки обработки электронной почты, которые могут взаимодействовать с электронной почтой с помощью IMAP, и я использовал как PHP, так и Node.JS.

Если все это для вас слишком, как насчет настройки веб-сайта на сервере, который запускает процессы. Я тоже так делал! Например, у меня есть приложение Node.JS, которое запускает Windows PowerShell и другие скрипты удаленно. (правда, руки так и не дошли до того, чтобы закончить его безопасность, поэтому оно и не опубликовано).

К счастью, кто-то уже сделал все это много лет назад. УстановкаВебМинна сервере предоставляется полнофункциональный веб-интерфейс для удаленного управления.


ОБНОВЛЕНИЕ: Ну, я же говорил, что есть много способов! Если бы у вас был почтовый сервер на коробке с procmail, это было бы тривиально.

Однако один из подходов — установить dropbox на сервер (вы можете использовать новый логин, если не хотите ставить под угрозу свой основной логин). Затем используйте IFTTT для прослушивания какого-либо другого канала — электронной почты, SMS (в некоторых странах) или одного из многих других. Используйте это, чтобы перетащить текстовый файл с инструкциями в dropbox. На сервере должен быть скрипт, который вы запускаете каждые несколько минут с помощью CRON (или создайте систему наблюдения за файлами, если знаете как), который ищет новые файлы, читает их и выполняет по мере необходимости. Есть дополнительные подробностиздесь,здесь,здесьВ первом из них показана часть Dropbox, в других — некоторые дополнительные идеи по использованию IFTTT.

Связанный контент