WebSSH

Stable v1.0.5

Web-терминал SSH в браузере

📖 Описание

WebSSH — это Python-based веб-терминал, позволяющий подключаться к SSH серверам прямо из браузера. Данный бандл разворачивает WebSSH как systemd сервис на Ubuntu 22.04 (Jammy).

Решение идеально подходит для ситуаций, когда необходим быстрый доступ к серверам через веб-интерфейс без установки SSH клиентов, особенно удобно для административных панелей и облачных инфраструктур.

✨ Основные возможности

  • ✅ SSH доступ через веб-браузер
  • ✅ Предзаполнение параметров подключения через URL
  • ✅ Поддержка base64-кодированных паролей
  • ✅ Работа как systemd сервис
  • ✅ Настраиваемый порт прослушивания
  • ✅ Легкий и быстрый Python backend
  • ✅ Совместимость с Ubuntu 22.04 LTS

⚙️ Параметры конфигурации

Параметр По умолчанию Описание
port 22222 Порт прослушивания WebSSH
systemd_unit webssh Имя systemd unit
base_url / Базовый URL (legacy, не используется)
ssh_user root SSH пользователь (legacy, не используется)

🚀 Использование

После установки WebSSH доступен по адресу:

http://<host>:22222/

Предзаполнение параметров подключения

Вы можете передать параметры подключения через URL:

http://<host>:22222/?hostname=<target>&port=22&username=admin&password=<BASE64>

где password — это base64-кодированный пароль.

Пример кодирования пароля

echo -n 'mypassword' | base64

🎯 Сценарии применения

  • 🖥️ Удаленное администрирование — доступ к серверам без SSH клиента
  • 🌐 Веб-панели управления — интеграция SSH доступа в админ-панели
  • 📱 Мобильный доступ — управление серверами с мобильных устройств
  • 🎓 Обучение — предоставление доступа к учебным серверам
  • 🔧 Быстрая диагностика — срочный доступ к серверам из любой точки
  • ☁️ Cloud Shell — встраивание терминала в облачные решения

📋 Требования

  • ADCM версия: ≥ 2.6.0
  • ОС: Ubuntu 22.04 LTS (Jammy)
  • Python: 3.x
  • Свободный порт: 22222 (или настраиваемый)
  • SSH доступ к целевым серверам

🔐 Безопасность

⚠️ Важные рекомендации по безопасности:

  • Используйте HTTPS для шифрования трафика
  • Настройте firewall для ограничения доступа
  • Не передавайте пароли в открытом виде через URL
  • Рассмотрите использование SSH ключей вместо паролей
  • Регулярно обновляйте WebSSH до актуальных версий
  • Ведите логи доступа к терминалу

💡 Советы по использованию

  • 🔗 Создайте закладки с предзаполненными параметрами для частых подключений
  • 🔒 Настройте reverse proxy (nginx) для добавления HTTPS
  • 🎨 Кастомизируйте терминал (цвета, шрифты) через CSS
  • 📊 Интегрируйте в существующие dashboard'ы
  • 🔐 Используйте VPN для дополнительной защиты