Привет.
Требуется сделать SSH консоль прямо в браузере. К примеру, человек заходит на определенный сайт, к примеру, на страницу /ssh, и ему во весь экран высвечивается SSH консоль.
1) Где найти такой плагин на JS? (Ну, можно и не на JS)
2) Сервер будет основным, как настроить доступ так, чтобы пользователи не смогли что-то снести? Да и вообще, как выдать права, чтобы они могли создавать/удалять/редактировать файлы только в определенной директории?
Shellinabox или Apache Guacamole. Первый работает как самостоятельный приклад, второй необходимо компелировать серверную часть, а клиентская идёт как модуль для Apache Tomcat.
Чтобы работало на 80/443 порту это добро - использовать Nginx как reverse proxy
Сервер будет основным, как настроить доступ так, чтобы пользователи не смогли что-то снести? Да и вообще, как выдать права, чтобы они могли создавать/удалять/редактировать файлы только в определенной директории?
Настроить OpenSSH сервер (Subsystem sftp, настроить для группы: Match Group или пользователей: Match User).
ssh в браузере не выйдет, но можно написать сервер на nodejs взяв за основу https://github.com/Microsoft/node-pty (не смотрим что MS - эта штука кроссплатформенная)
а на клиенте https://github.com/xtermjs/xterm.js/
гонять команды по вебсокетам.
Так как обе библиотеки используются в vscode их api неплохо подогнано для совместного использования.
Чтобы ограничить пользователей, создайте unix пользователя с усеченными правами и запускайте nodejs сервер от его имени.