Вот проблема: я сделал что-то с python, которое работает практически с любой ОС, кроме Windows, и мне сказали, что люди, которые собираются оценивать / использовать / пробовать его, имеют только доступные окна. Все доступные консольные эмуляторы потерпели неудачу, и у меня нет возможности переписать код или установить виртуальную машину на этих машинах.

Последний срок составляет 8 часов, и это то, что я имею в виду:

Возьмите мой сервер, создайте пользователя без пароля (например, с именем приложения), который может только запустить этот файл или псевдоним (который запускает файл) и запустить сервер ssh.

Затем все, что им нужно сделать, это ssh в машину, и программа появится. Это текстовая консоль, поэтому с этим не может быть проблем.

Дело в том, что я не знаю, как сделать пользователя linux ЭТОМ ограниченным. Как я могу это сделать? Сервер - всего лишь тестовая машина, он не содержит важных данных и обычно выключен или работает в автономном режиме, поэтому безопасность здесь не является большой проблемой. Я просто хочу, чтобы это работало. Кроме того, решение не будет постоянным, мне просто нужно, чтобы оно работало завтра в течение ~ 7 часов, и тогда я смогу свободно возиться с ним и заставить его работать должным образом.

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

2 ответа2

0

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

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

command="/your/script/path/filename",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pry YOUR-SSH-KEY

Вы можете получить больше информации об управлении SSH для скриптов и заданий cron.

0

Я не мог создать пользователя без пароля, но я создал его с именем пользователя и паролем имя программы и в файле /etc /ssh /sshd_config я добавил Match User testuser и ForceCommand python /path/file.py Таким образом, любой может войти в систему (логин информация находится на веб-сайте на этом сервере) посмотрите программу и автоматически выйдите из системы после закрытия программы.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .