Это невозможно сделать из клиента. Это функция безопасности, :файл ~/.ssh/rc
может делать вещи, которые клиент не должен иметь возможности обойти (, хотя это не является обычным использованием ).
Самый очевидный способ обойти то, что делает ~/.ssh/rc
, состоит в том, чтобы обернуть это в код, который зависит от переменной среды, и позволить клиенту передать эту переменную среды серверу(AcceptEnv
в директиве /etc/sshd_config
).
Другой способ сделать это со стороны сервера — использовать ключ с параметром no-user-rc
.
Первый очевидный шаг :проверка того, что доступно для записи всем, а что является конфиденциальным и доступным для чтения всем.
Во-вторых, я полагаю, что вы создаете пользователей с помощью команды adduser
. (Это относится только к вариантам 1 и 2 ниже.)
В-третьих, есть несколько вариантов установки apache и т.п.
Что вы выберете, вероятно, зависит от того, сколько администрирования он хочет сделать, и сколько вы хотите сделать.
Другой доступный вариант :позволяет ему получить виртуальную машину на хостинге. Например, Amazon бесплатно предоставит ему небольшую виртуальную машину на год.
Если вы хотите, чтобы он выполнял установку программного обеспечения и администрирование, вам нужно предоставить ему root-доступ и доверить ему все.
Если вы хотите справиться со сложностями администрирования, необходимыми для запуска многопользовательского сервера, вы можете это сделать. Хотя он всегда будет просить вас изменить различные вещи. Это очень быстро утомит, даже если вы преодолеете сложности правильной настройки многопользовательского сервера.
Цель, которую вы пытаетесь достичь, та же, что и вдохновила cPanel.
Вместо того, чтобы делать все это с нуля, вам следует рассмотреть возможность изучения таких панелей управления, как Webmin, cPanel, Plesk, Ensim, DirectAdmin и т. д.
Это похоже на то, что может подойти для Docker.
Если вы действительно заботитесь о безопасности, третьим вариантом может быть предоставление ему полного контроля (корневого доступа )к чему-то вроде Raspberry Pi. Pi можно использовать в автономном режиме с доступом по ssh, чего должно быть достаточно для веб-разработки. Сделайте резервную копию SD-карты с помощью dd
и gzip
/7zip, и если что-то пойдет не так, у вас есть способ восстановить ее до хорошего состояния.