
Я ищу решение для запуска удаленных команд для моего сервера Linux. К сожалению, я не могу использовать SSH, только HTTPS (корпоративный брандмауэр блокирует все, кроме HTTP/HTTPS на портах 80/443).
Я пробовал веб-шелл через HTTPS, но он неудобен и не подходит для моих нужд. Мне просто нужно что-то, чтобы передавать удаленную команду на сервер (опционально проверять результаты), ставить команды в очередь для последовательного выполнения, видеть статусы и завершение для каждой задачи (удаленная команда).
Было бы неплохо иметь сервер для управления очередью заданий, планирования и выполнения заданий с веб-интерфейсом.
Еще одно решение, которое пришло мне в голову, — это сервер с интерфейсом электронной почты (я помню что-то подобное из древней истории Интернета, но не могу вспомнить название), который бы запускал команды из писем.
Если кто-то знает что-то подобное, пожалуйста, назовите кого-нибудь из них.
решение1
Вы можете использоватьРундекдля этого. Это автономный процесс Java, доступ к которому можно получить через веб-браузер. Администратор может указать задания, которые будут запускать либо команду, либо скрипт. Затем пользователь может запустить задание (опционально с параметрами).
Вывод будет отправлен обратно в браузер. Также ведется журналирование выполненных ранее заданий.
Вот скриншот из руководства с использованием заданий:
Редактирование заданий:
решение2
я используюAjaxTerm, представляющий собой веб-терминал, доступ к которому можно получить через веб-браузер.
решение3
http://github.com/hughperkins/securewebcmdэто еще одна возможность (отказ от ответственности: я ее написал и поддерживаю).
- может выполнять произвольные команды, хотя вы можете внести в белый список разрешенные исполняемые файлы, если хотите
- сохраняет полную историю выполненных действий вместе с результатами
- использует nodejs, поэтому довольно прост в установке и запуске, не требует Apache и т. д.