Серверы
  • Готовые серверы
  • Конфигуратор
  • Серверы с 1CPU
  • Серверы с 2CPU
  • 4 поколение AMD EPYC и Intel Xeоn
  • Серверы с AMD Ryzen и Intel Core i9
  • Серверы для хранения данных
  • Cерверы с портом 10 Гбит/c
  • GPU
  • Распродажа
  • VPS
    GPU
  • Выделенные серверы с GPU
  • Виртуальные серверы с GPU
  • Распродажа
    Маркетплейс
    Colocation
  • Размещение серверов в дата-центре в Москве
  • Обслуживание серверов в других ЦОД
  • Прокат
    Услуги
  • Аренда сетевого оборудования
  • Защита L3-L4 от DDoS атак
  • IPV4 и IPV6 адреса
  • Администрирование серверов
  • Уровни технической поддержки
  • Мониторинг сервера
  • BYOIP
  • USB диск
  • IP-KVM
  • Трафик
  • Коммутация серверов
  • AI-чат-бот Lite
  • О нас
  • Работа в HOSTKEY
  • Панель управления серверами и API
  • Дата-центры
  • Сеть
  • Тест скорости
  • Специальные предложения
  • Отдел продаж
  • Для реселлеров
  • Гранты для специалистов по Data Science
  • Гранты для научных проектов и стартапов
  • Документация и Частые вопросы
  • Новости
  • Блог
  • Оплата
  • Документы
  • Сообщите о нарушении
  • Looking Glass
  • 25.10.2024

    TS3 Manager: что происходит, когда додумываешь документацию

    server one
    HOSTKEY

    Discord заблокирован, и многие пользователи обратили внимание на TeamSpeak как альтернативу. Да, это не полная замена, да, в бесплатной версии без регистрации на серверах компании нельзя поднять больше одного виртуального сервера, имеющего только 32 слота для подключения. Но чтобы получить свой частный сервер, не зависящий от решений регуляторов, это одно из оптимальных решений.

    Инструкций по установке такого сервера (а именно, TeamSpeak 3 Server) тоже много, сделать это достаточно просто разными способами, но пользователям среди прочего важен и удобный веб-интерфейс для работы с сервером на VPS. За время существования TeamSpeak было создано немало проектов разной степени законченности и функциональности: TS3 Web, TSDNS Manager, MyTS3Panel, TS3 Admin Panel (by PyTS) и TS3 Manager (https://www.ts3.app/). Последний — относительно живой (последний коммит был 5 месяцев назад), автор по мере возможности обновляет его, поэтому мы решили добавить в деплой TeamSpeak на наших серверах. Но как обычно в проектах с открытых исходным кодом, он страдает от очень скудной документации.

    Поскольку мы потратили определенное время на поиски проблем, из-за которых TS3 Manager не работал как нужно (от невозможности залогиниться до проблем с отображением серверов), то решили облегчить жизнь тем, кто пойдет по нашем пути.

    Исходные данные: Debian 11+ или Ubuntu 20.04, 22.04, TeamSpeak 3 Server разворачиваемый как docker-контейнер от mbentley/teamspeak и Nginx с Let’s Encrypt (образ jonasal/nginx-certbot). Эта конфигурация разворачивается и работает, позволяя подключаться к себе с клиентов TeamSpeak и управлять ими через использование токена администратора.

    TeamSpeak предустановлен на серверах в Европе, США, Турции и России.

    Арендуйте виртуальный (VPS) или выделенный сервер с TeamSpeak — бесплатной популярной системой голосовой коммуникации для онлайн-гейминга. Выберите подходящую лицензию, сконфигурируйте сервер и приступите к работе уже через 15 минут.

    • Установка уже выполнена — мы позаботились о технической части
    • Сервер оптимизирован — высокая производительность для работы TeamSpeak
    • Техподдержка 24/7 — мы всегда готовы помочь

    Заказать

    К этому docker-бутерброду мы добавляем TS3 Manager, устанавливаемый так же, как docker-контейнер. Официальная документация предлагает использовать для этого docker-compose, но можно обойтись дефолтными настройками и двумя командами:

    docker pull joni1802/ts3-manager
    docker run -p 8080:8080 --name ts3-manager joni1802/ts3-manager

    Если вы хотите повысить безопасность работы TS3 Manager, можете добавить в команду запуска -e WHITELIST=<ip-адрес cервера>,myts3server.com список серверов, которыми хотите управлять. То есть если вы имеете версию, отличающуюся от бесплатной, и можете поставить более одного TS3-сервера на VPS (скажем, запросив NPL-лицензию, которая позволяет создать до 10 виртуальных серверов с 512 слотами), то вы можете управлять и ими (создавать, удалять и настраивать), так как TS3 Manager работает через ServerQuery.

    После этого, зайдя по http://<ip-адрес сервера> (TeamSpeak садится на порт 8080, учитывайте это), вы получаете вот такую картину:

    Что вводить? Самое смешное, что, если у вас есть ssh-доступ до вашего VPS (а он у вас есть), то, введя в поле Server его IP-адрес, в name — root (или другого вашего пользователя), а в Password — пароль от сервера и поставив Port в 22, вы … зайдете в TS3 Manager. Но получите бесконечную загрузку списка серверов.

    Выполнив выход из менеджера, вы получите белый экран с надписью …Loading в левом углу браузера. Поправить положение теперь поможет только очистка куки в браузере.

    Что-то мы делаем не так? Где же взять логин и пароль для входа? А брать их нужно из логов запуска сервера TeamSpeak в docker. Для этого придется зайти по ssh (вот тут надо использовать креды, которые вы пытались ввести в TS3 Manager) и выполнить следующую команду:

    docker logs teamspeak | tail -n 50

    Вы получите вот такой вывод:

    Вас будут интересовать loginname и password. Эти параметры останутся такими же и после перезагрузки, но изменятся, если вы остановите и удалите docker-образ и запустите его заново. Токен вам понадобится, если вы вдруг решите подключить сервер TeamSpeak.

    Идем назад в браузер и вводим запомненные логин и пароль уже от сервера, нажимаем CONNECT и получаем плашку с сообщением об ошибке. Что делать?

    Если посмотреть лог, который вывелся, когда мы смотрели пароль администратора сервера, можно увидеть следующее:

    То есть сервер слушает 3 порта для запросов к серверу: 10011 для обычного (небезопасного) соединения, 10022 — для ssh и 10080 для http-запросов.

    Пробуем ввести IP-адрес сервера, порт 10011 и снять галочку ssh. Ура — нас пустило. Но это не очень безопасно, хотя способ и рабочий. Хочется зайти и управлять сервером по ssh.

    Опять смотрим, есть ли что-то в документации:

    The TS3 Manager is only accessible over HTTP. To make the app available over HTTPS you need to set up a reverse proxy (e. g. Apache or NGINX).

    У нас сервера разворачиваются с SSL-сертификатом, и эта проблема решается автоматически, но все равно что-то не работает. Вывод сервера показывает, что порт 10022 у нас слушается, а вот если задать вывод:

    netstat -tulpn | grep -E '9987|10011|10022|30033|41144'

    …То мы увидим, что у нас в выводе порт 10022 отсутствует. Что это значит? Мы забыли пробросить этот порт в docker (тут должен быть эмодзи «рука-лицо»). Точнее этот момент упущен в документации для docker-образа TeamSpeak, который мы использовали для деплоя, потому что его автор посчитал данный метод управления не стоящим внимания.

    Добавляем в строку задания портов запуска docker-образа проброс порта 10022 наружу (-p 9987:9987/udp -p 30033:30033 -p 10011:10011 -p 41144:41144 -p 10022:10022), останавливаем, удаляем и заново запускаем docker-образ сервера TeamSpeak (и правим это в деплое ПО). Ура! Теперь мы можем зайти в TS3 Manager через ssh и можем использовать не IP, а доменное имя.

    А дальше можно создавать сервера и каналы на них, работать с пользователями и их группами, генерировать админские и API-ключи, банить пользователей, пересылать файлы, создавать текстовые чаты и использовать другие возможности, доступные ранее из консольных запросов. Сразу предупредим — этот инструмент не предназначен для заведения новых пользователей. Он служит именно для управления серверами и пользователями.

    TeamSpeak предустановлен на серверах в Европе, США, Турции и России.

    Арендуйте виртуальный (VPS) или выделенный сервер с TeamSpeak — бесплатной популярной системой голосовой коммуникации для онлайн-гейминга. Выберите подходящую лицензию, сконфигурируйте сервер и приступите к работе уже через 15 минут.

    • Установка уже выполнена — мы позаботились о технической части
    • Сервер оптимизирован — высокая производительность для работы TeamSpeak
    • Техподдержка 24/7 — мы всегда готовы помочь

    Заказать

    Другие статьи

    24.12.2024

    Как мы мониторинг SMART-данных дисков в оVirt экосистеме прикручивали

    Представьте, что на одной из множества ваших виртуальных машин, работающих на oVirt, начнет давать сбой диск в одном из узлов? Мы в Hostkey используем связку smartctl_exporter совместно с Prometheus и Grafana чтобы отследить этот момент и успеть принять меры и хотим поделиться с вами нашим опытом.

    20.12.2024

    В чем разница между IPv6 и IPv4?

    Чем отличаются IPv4 и IPv6? Зачем появился IPv6 и как он решает проблемы IPv4 и что это значит для пользователей.

    20.12.2024

    Как создать виртуальное окружение в Python?

    В этой статье мы разберем, что такое виртуальное окружение, зачем оно нужно и как быстро создать и настроить его для Python-проектов.

    16.12.2024

    Как посмотреть запущенные контейнеры в Docker?

    Хотите узнать, какие контейнеры запущены в вашем Docker? В этой статье мы расскажем о простых командах, которые помогут это сделать.

    28.11.2024

    OpenWebUI обновился. Что нового привнесла версия 0.4.5?

    OpenWebUI обновился до версии 0.4.5! Новые функции для RAG, групп пользователей, аутентификации, улучшенная производительность и многое другое. Узнайте, как обновиться и использовать его возможности на максимум.

    HOSTKEY Выделенные серверы в Европе, России и США Готовые решения и индивидуальные конфигурации серверов на базе процессоров AMD, Intel, карт GPU, Бесплатной защитой от DDoS-атак и безлимитный соединением на скорости 1 Гбит/с 30
    4.3 48 48
    Upload