Лучший способ справиться с этим? (Веб-интерфейс сайта, серверная часть и SSH) - PullRequest
1 голос
/ 31 января 2010

Извините за заголовок, не знаю, как это сформулировать.

У меня есть собственная машина, на которой работает Ubuntu 9.10, и у меня есть несколько сценариев, которые я иногда запускаю по SSH и запускаю. Я хотел бы сделать интерфейс для этого в виде веб-сайта. Как я могу использовать SSH на своем компьютере и запускать эти сценарии?

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

Ответы [ 2 ]

1 голос
/ 31 января 2010

Как вы, наверное, догадываетесь из моего комментария, я не верю, что ваша установка была полностью отличной идеей с точки зрения безопасности. Итак, вот несколько советов о том, чего вы хотите достичь:

  • Если вы ДОЛЖНЫ использовать ssh для команд удаленного сервера, убедитесь, что вы принимаете подключения только по внутреннему IP-адресу и не разрешаете вход в систему root ssh.
  • Рассмотрите возможность настройки веб-службы на удаленном сервере. Это даст вам большую гибкость при интеграции с интерфейсным веб-приложением, работающим в другой системе. Посмотрите на SOAP , REST , XML-RPC и Буферы протокола в качестве возможных сред для этого.
  • Не читать список возможных команд системной оболочки и автоматически запускать их из базы данных. Для этого используйте crontab .

НТН,

0 голосов
/ 31 января 2010

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

  • Поместить приемлемые команды в файл авторизованных ключей
  • Часто меняйте ключи

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

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