WebSSH: безопасный веб-интерфейс для SSH и SFTP доступа

WebSSH: безопасный веб-интерфейс для SSH и SFTP доступа

WebSSH — это самохозяйственный SSH и SFTP рабочий интерфейс, ориентированный на безопасность, для хомелабов и команд.

Проект позволяет организовать работу с терминалом и файлами в одном браузерном пространстве. Он предлагает многофункциональность: поддержка нескольких пользователей, управление через passkeys и OIDC, шифрование ключей, резервное копирование и возможность работы оффлайн. В отличие от традиционных SSH-клиентов, WebSSH не требует контроля через облако или CDN, что улучшает безопасность и независимость. Это решение может быть полезно для команд разработчиков или администраторов систем, которым важна гибкость и безопасность.

Проект написан на Python (версия 3.11 или новее) и можно запустить через контейнер Docker. Будь внимателен: WebSSH все еще находится в разработке и может содержать ошибки. Для использования тебе нужно будет настроить все в соответствии с документацией.

Проект WebSSH — это безопасная, самохостинговая среда для работы с SSH и SFTP, предназначенная для домашних сетей и команд. Она позволяет организовать рабочее пространство, где все: терминалы, файлы, команды и заметки, находятся в одном е участвующей браузерной среде.

WebSSH разрабатывается без зависимости от удаленных серверов или CDN, что обеспечивает больший контроль над данными. Он поддерживает многопользовательский режим и предоставляет возможность подключения через существующий SSH-центральный сервер при необходимости.

Основные особенности

  • Поддержка нескольких SSH-сессий с вкладками и различными панелями отображения.
  • Интеграция с tmux для создания устойчивых удаленных сеансов.
  • Функционал SFTP и опциональный SMB для работы с файлами.
  • Безопасность, включая многопользовательские аккаунты, шифрование ключей и аутентификацию по OIDC.
  • Административные инструменты для управления пользователями и резервного копирования данных.

Установка и запуск

Установка WebSSH осуществляется с помощью Docker. Для начала тебе нужно создать каталог, скачать файл конфигурации и запустить контейнер:

mkdir webssh-deployment
cd webssh-deployment
curl -O https://raw.githubusercontent.com/bifrost0x/webssh/main/docker-compose.yml
docker compose up -d

После запуска открой http://localhost:5000 в браузере. На новом экземпляре необходимо сразу создать первого администратора из доверенной сети.

Ограничения и безопасность

WebSSH не является шифрованным реле и обрабатывает соединения и данные терминала, что подразумевает необходимую защиту хоста и сетевого окружения. Необходимо следить за безопасностью ключей и конфиденциальных данных. Убедись, что:

  • вы используете HTTPS на доверенном уровне;
  • производите контроль над доверенными SSH-ключами;
  • включаете только однопоточный режим для Gunicorn для корректной работы сессий.

Рекомендуется ознакомиться с политикой безопасности проекта и руководствами по развертыванию, прежде чем делать его общедоступным.

Документация и поддержка

Для получения более подробной информации об установке, настройке и эксплуатации, можно воспользоваться [Wiki проекта](https://github.com/bifrost0x/webssh/wiki), где представлены руководства и идеи по разработке. Если у тебя появятся вопросы или обнаружатся проблемы, ты можешь создать issue или участвовать в обсуждениях на GitHub.

Открыть на GitHub: bifrost0x/webssh →

Что нового на GitHub — короткие обзоры на русском Новые обзоры приходят в Telegram. Без спама, по делу.
Подписаться

Похожие статьи

Популярные темы на сайте