Назад | Перейти на главную страницу

Централизованный способ предотвращения интерактивного входа в систему

У меня есть сервер Ubuntu, который используется моими учениками для двух основных целей:

  1. Чтобы сохранить файлы, которые студентам необходимо временно загрузить для моей оценки (то есть: я даю им входное изображение, и они загружают свое домашнее задание MATLAB .m файлы и выходные изображения, это просто мое исходное изображение, которое они пропустили через свой код).
  2. Служить прокси для учащихся, которым необходим доступ к страницам, которые блокирует школа (по какой-то глупой причине). Я предоставил инструкции для студентов, использующих Ubuntu и Windows (через puTTY), по созданию SSH-туннеля и как использовать FoxyProxy с Firefox для использования прокси.

Все студенты должны сгенерировать пару открытого / закрытого ключей, они дают мне открытый ключ, который я добавляю в authorized_keys файлы для своей учетной записи на моем сервере Ubuntu. Они должны иметь закрытый ключ, зашифрованный с помощью надежного пароля, и не передавать его другим студентам.

В настоящее время у меня есть единственная запись в authorized_keys для каждой учетной записи с префиксом no-pty, чтобы студенты могли войти на сервер в качестве прокси и использовать SFTP для загрузки файлов на сервер. Это именно та установка, которая мне нужна.

Однако в дальнейшем я могу включить telnet и FTP на сервере для ограниченного числа учетных записей. Если я хочу запретить какой-либо службе иметь интерактивную оболочку, я могу просто добавить /sbin/nologin или /dev/null к /etc/shellsи установите оболочку по умолчанию для отдельных пользователей на /etc/passwd, но это нарушает настройку прокси и SFTP, но, очевидно, позволяет FTP работать без интерактивного входа в систему.

Есть ли способ просто установить «без интерактивных оболочек» в одном месте, или мне следует отказаться от настройки telnet и FTP и просто придерживаться своих настроек SFTP? Единственная причина, по которой я рассматриваю FTP и telnet, которые, насколько мне известно, гораздо менее безопасны, чем SFTP, заключается в том, что некоторые студенты используют брандмауэры, которые предотвращают исходящие соединения SSH.

Спасибо.