У меня есть машина, в которую я не могу войти. Я хотел бы иметь возможность контролировать сеанс оболочки в нем. Есть ли какой-нибудь способ подключить его к другому компьютеру и дать мне команду на сервере, запущенную на клиентском компьютере?
2 ответа
Вы можете, если вы можете настроить обратный сеанс SSH.
Используйте следующую настройку для настройки переадресации портов на машине, к которой у вас нет доступа (т.е. вы должны сделать это один раз на этой машине)
ssh -R 2210:localhost:22 bhome.dyndns.com
и тогда, когда вы хотите от вашей домашней машины:
ssh -p 2210 localhost
подключится к машине, к которой у вас не было доступа.
Если вы можете запускать сценарии веб-приложений на компьютере, я бы порекомендовал установить безопасный набор сценариев, которые запускаются через HTTPS - возможно, из пользовательского меню. Большинство языков сценариев, включая PHP, Python и PERL, Lua, Ruby и т.д., Способны запускать команды уровня ОС.
Действительно, именно так работает Webmin - за исключением того, что он идет еще дальше. Создает собственный веб-сервер.
Я делал это в прошлом, чтобы решить проблему, которую вы выделили.
Вы также можете пойти дальше, если вы можете заставить аппарат общаться с почтовым сервером - я бы обычно откладывал почтовую учетную запись IMAP. Затем вы можете настроить скрипт, который периодически проверяет почтовый ящик на наличие специально отформатированных писем.