REPL консольный сервис приложений - PullRequest
0 голосов
/ 12 июня 2009

Я надеюсь, что это правильный форум для этого и извините за наивный вопрос.

Я хотел бы предоставить "гостевую" регистрацию для (не выделенного) сервера Linux и запустить только одно консольное приложение. Пользователь не может сделать ничего больше, чем использовать это приложение. Сценарий может быть:

      ssh dervinATsomehost.com (no password)

и просто автоматически запустите приложение оболочки, скажем

       Welcome to Dervin's shell.
       Dervin$

когда пользователь говорит о выходе, разрывается все соединение, а не только приложение.

Это кажется относительно простым, но я не знаю, с чего начать.

Спасибо.

[ ПРИМЕЧАНИЕ Я также опубликовал это на Serverfault. Не знал, какой форум был лучшим. Не стесняйтесь закрывать, если это не уместно.]

Ответы [ 3 ]

3 голосов
/ 12 июня 2009

Вы можете установить желаемое приложение в качестве оболочки пользователя в /etc/passwd.

Поэтому, когда пользователь входит в систему, вместо сеанса bash он попадает прямо в приложение.

0 голосов
/ 13 июня 2009

Вы определенно захотите раздать ssh-ключи всем или попросить их сгенерировать свои собственные и передать их вам. Добавьте программу, которую вы хотите запустить, в список в / etc / shells и используйте chsh для этих пользователей, чтобы изменить их оболочку для этой программы.

0 голосов
/ 12 июня 2009

Полагаю, сначала вы захотите выбрать язык для работы. Что-то с функцией оценки кода, например, схема eval, облегчает "Е" часть REPL. Кроме этого, это просто чтение пользовательского ввода и распечатка результатов оценки. Тогда цикл, конечно.

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