Я преподаю в местном колледже курс системного администрирования Linux. У некоторых студентов в классе нет готового доступа к установке Linux, поэтому в колледже есть SSH-сервер, к которому они могут получить доступ для выполнения лабораторных работ, экспериментов и т. д. Естественно, мы не предоставляем студентам корневой доступ и т.д., что имеет очевидные педагогические ограничения.
Я размышлял над идеей, где студенты могут иметь свой собственный контейнер, где они могут иметь привилегии суперпользователя и т. д., чтобы я мог охватить более широкий круг тем. Мой опыт работы с контейнерами несколько ограничен, поэтому у меня есть несколько вопросов, с которыми я надеялся получить помощь:
- Возможно ли, чтобы студенты подключались по ssh «напрямую» к контейнеру или им нужно было запускать контейнер при входе в систему. Обратите внимание, я не спрашиваю (например) о привязке контейнера к определенному порту, но возможно ли, чтобы их оболочка (/etc/passwd) была оболочкой контейнера или иным образом помещала их в контейнер сразу после входа в систему через параметр bash ?
- Большую часть времени контейнеры запускаются эфемерно, но я, по сути, хочу, чтобы студенты могли иметь постоянный контейнер. Есть ли потенциальные проблемы с наличием постоянных контейнеров?
- Мне кажется, что размещение учащегося в контейнере было бы более безопасным, чем наличие у него непривилегированного доступа к оболочке, но есть ли какие-либо недостатки безопасности при предоставлении учащимся root-доступа к контейнеру?
Студенты использовали систему Centos для своей работы ранее, и весь материал моего курса построен на Centos. Есть ли рекомендуемый образ контейнера, который я должен использовать? Подойдет ли в этой ситуации обычный образ docker/podman centos.
Спасибо за вашу помощь и предложения.