Вступление
Если вам надоело обходить блокировку Discord и вас не устраивает связь в tg или Steam, то предлагаю поднять свой TeamSpeak(TS) сервер. У меня, например, вылезла проблема, что CoD отказывается запускаться при включенной службе обхода дискорда. Тем более, что последнее обновление сделало TS неплохим его аналогом.
И так, нам понадобится домашний сервер (например, старый комп) с установленной ОС или же арендованный VPS. Ваш IP должен быть статическим, иначе придётся в конфигурации роутера каждый раз менять внешний IP.
Проще, если у вас стоит полноценная ОС с UI. Качаете c оф. сайта файл и следуете инструкциям установки.
Я расскажу как поставить TS, которым смогут пользоваться и ваши друзья на Ubuntu-server через терминал.
Установка
При установке помог этот гайд.
Заходим в терминале сервера по SSH или любым другим способом и создаём нового пользователя для TS-сервера:
sudo useradd -mrd /opt/teamspeak teamspeak -s "$(which bash)"
Файлы teamspeak будут лежать в директории /opt/teamspeak
.
Установим библиотеку:
sudo apt install bzip2
Сменим пользователя на teamspeak
:
su - teamspeak
и скачаем архив
wget https://files.teamspeak-services.com/releases/server/3.13.7/teamspeak3-server_linux_amd64-3.13.7.tar.bz2 -O teamspeak-server.tar.bz2
Теперь нужно его распаковать
tar xvfj teamspeak-server.tar.bz2 --strip-components 1
а затем принять лицензионное соглашение:
touch ~/.ts3server_license_accepted
После этого перейдём из пользователя teamspeak
обратно в свой
su - username
Создание системного сервиса
Чтобы наш сервер постоянно крутился, а также удобно было следить за его работой, создадим системный сервис. Все сервисы лежат в директории /etc/systemd/system
.
sudo nano /etc/systemd/system/teamspeak.service
и добавим следующий код:
teamspeak.service
[Unit]
Description=Teamspeak Service
Wants=network.target
[Service]
WorkingDirectory=/opt/teamspeak
User=teamspeak
ExecStart=/opt/teamspeak/ts3server_minimal_runscript.sh
ExecStop=/opt/teamspeak/ts3server_startscript.sh stop
ExecReload=/opt/teamspeak/ts3server_startscript.sh restart
Restart=always
RestartSec=15
[Install]
WantedBy=multi-user.target
В Description
можно указать любое название сервиса. Также, здесь указываются рабочие директории и исполняемые файлы. Сервис будет работать под пользователем teamspeak
. И наш сервис будет постоянно перезагружаться в случае падения (Restart=always
).
Чтобы сохранить файл, нажимаем Ctrl+C
. Вводим y
и жмём Enter
.
Далее нужно применить изменения командой
sudo systemctl daemon-reload
Запустим наш сервис
sudo systemctl start teamspeak
и выведем его текущий статус
sudo systemctl status teamspeak
Должно выглядеть примерно так

Ну и, дабы сервис сам запускался при перезапуске системы, введём
sudo systemctl enable teamspeak
Пароль администратора для TeamSpeak
Чтобы установить пароль администратора, сначала остановим сервер
sudo systemctl stop teamspeak
Перейдём в пользователя teamspeak
su - teamspeak
и запустим сервер TS с указанием пароля (конечно же, из директории /opt/teamspeak/
)
./ts3server_startscript.sh start serveradmin_password=MyPassword123
Остановим
./ts3server_startscript.sh stop
Перейдём обратно в своего пользователя
su - username
Вновь запускаем сервис
sudo systemctl start teamspeak
Настройка роутера
Данные настройки только для домашнего сервера, который находится в вашей локальной сети.
Нам нужно пробросить порты в настройках роутера на наш домашний сервер. Для этого переходим в настройки роутера: обычно 192.168.0.1
или 192.168.1.1
. Адрес можно посмотреть на наклейке снизу роутера, и там же найдёте логин/пароль.
Далее, ищем вкладку Переадресация портов. Обычно находится в Расширенных настройках WAN.
Порты, которые использует TeamSpeak:
9987 - UDP
10011 - TCP
30033 - TCP

Вводим любое имя службы.
Свой внешний IP (можно узнать, введя IP в поисковике).
Внешний порт
Локальный IP сервера (ищем в панели роутера).
Локальный порт.
То есть, внешний адрес 92.3X.XX.XXX:9987
будет переадресован на адрес локального сервера 192.168.0.50:9987
.
ИЛИ ищем настройку DMZ в панели роутера. Выглядит примерно так:

Вводим локальный IP нашего сервера в домашней сети. Наконец, перезагружаем роутер, чтобы изменения применились.
И ещё, если у вас на сервере активен брэндмауэр, нужно открыть эти порты:
sudo ufw allow 9987/udp
sudo ufw allow 10011, 30033/tcp
Подключение к серверу
Для первичного подключения нам понадобиться узнать токен. Для этого в терминале сервера вводим
grep -i token /opt/teamspeak/logs/*

Копируем токен к себе. Он понадобится для получения прав администратора.
Устанавливаем клиент.

В поиск вбиваем наш внешний IP. Когда всплывёт окно ввода токена, вставим туда сохранённый ранее токен. Теперь вы администратор сервера.
Чтобы пригласить друга, нажимаем "Создать приглашение" и кидаем ссылку друзьям.

Либо же даём другу свой внешний IP. TeamSpeak автоматически переадресует на сервис TS вашего сервера.
В принципе, всё.
Комментарии (14)
Dark_AssassinUA
31.01.2025 15:39DMZ и проброс портов это буквально взаимоисключающие вещи
iamezhik
31.01.2025 15:39Тоже не очень понял зачем мы сначала пробрасываем порты, а после этого добавляем сервер DMZ
Spyman
31.01.2025 15:39А кто пользовался - подскажите три вещи.
Какие требования к ресурсам (озу в первую очередь)?
Есть ли в тимспике комнаты как в дискорде - куда можно подключиться без звонка.
Есть ли стрим экрана, и если есть то в каком качестве?
panda_bambyk Автор
31.01.2025 15:39Требования
For Windows:
Windows 8.1 and newer, 32 and 64-bitFor Mac OS X:
Mac OS 10.14 Mojave and above, 32 and 64-bit Intel CPUFor Linux:
Any recent Linux distribution, 32 and 64-bitFor FreeBSD:
10.2 and above, 32 and 64-bitFor the CPU:
SSE2 capable CPU
SSE4.x capable CPU with POPCNT enabled (Only for the 64-bit version on Windows)For Memory:
This depends on the operating system being used, however a minimum of 1 GB RAM is recommended.
Total memory usage depends on the number and size of hosted virtual servers.For the Hard disk:
The bare minimum installation is 15 MB.
Total disk usage is highly dependent on actual usage, size and the amount of hosted virtual servers.
Additional space is required for file transfer and for icon/avatar storage.Каналы есть в TS6 клиенте: чат/аудиозвонки.
Стрим экрана и вебку, как сказал уже Kundello, выкатят в TS6-server.
Johan_Palych
31.01.2025 15:39В первую очередь прочитать:
TeamSpeak 3 Licensing
https://www.teamspeak.com/en/features/licensing/
FREE SERVER LICENSE: PRICE: FREE, 1 Virtual Server, Up to 32 slots - подключение не более 32 слотов (одновременных пользователей)
Через docker за 5 мин
https://hub.docker.com/_/teamspeakdocker pull teamspeak docker run -d --restart=always -p 9987:9987/udp -p 10011:10011 -p 30033:30033 -e TS3SERVER_LICENSE=accept teamspeak docker ps docker logs CONTAINER ID | grep token
Установить TS3 Client, зайти по IP, ключ привелегий-token, редактировать сервер
По умолчанию teamspeak-server использует базу данных sqlite3(есть поддержка MariaDB и PostgreSQL)
Kundello
31.01.2025 15:39Проще, если у вас стоит полноценная ОС с UI.
Нет, не проще, это еще и отожрет доп. ресурсы.
На данный момент успешно держу тску на впс 2 ядра/2гб озу/30гб ссд, человек 15 держит без проблем, больше пока не пробовали. У бесплатной версии сервера ограничение на 32 человека, кстати
Советую не торопиться с 3-й версией сервера, в ближайшее время должна выйти 6-я, с трансляцией экрана и вебками. Вероятнее всего, инструкция будет абсолютно другок
zFailure
31.01.2025 15:39На самом деле, домашний сервер спика, не плохая идея, помню первые сервер я поставил на винду в 2007г. Подключил услугу постоянный ип адрес, потом по чистой случайности в 2011 с одним сисадмином из Германии, опущу подробности, но была такая возможность купить навсегда сервер за 200€ от его хостинга где он работает, так до сих пор сервер на плаву, и раньше было проще получить лицензию на 500 пользователей)) так вот, я о чем, для домашнего сервера, слишком много лишних манипуляций произвёл, можно было в 2 раза упростить, выше уже написали, но думаю нынче не так дорого арендовать впс за 1800р в год, ну или же за 2250 в год, не надо мучится с приглашениями и раздачей адреса)
13werwolf13
для начала проприетарному куску.. софта.. я бы обрезал права, ну и конечно создавать юзверей вручную тоже не наш метод:
ну и почитато на тему:
1) https://www.freedesktop.org/software/systemd/man/latest/systemd-sysusers.html
2) https://www.freedesktop.org/software/systemd/man/latest/systemd-tmpfiles-setup.service.html
3) https://documentation.suse.com/smart/security/html/systemd-securing/index.html
если мы говорим про один домашний сервер то этого в целом хватит, если планируем разворачивать несколько то я бы упаковал файлы в пакет (конечно тогда вместо
/etc
будет/usr/lib
и добавил бы выкачивание и разворачивание самого софта вExecStartPre
с указанием версии черезExecStartPre
и проверкой кондиции по какому нибудь файлу внутри/opt/teamspeak
. в репозиторий дистрибутива такой пакет не покласть, для этого разрешение разрабов teamspeak надо, но для какой нибудь внутнренней своей репы более чем подходит.13werwolf13
"добавил бы выкачивание и разворачивание самого софта в
ExecStartPre
с указанием версии черезEnvironmentFile
" простите за очепятку, поздно заметил..Markscheider
Вот это меня в первую очередь отпугнуло. В итоге не решился.
ki11j0y
Развернул на vps в мск. Лучше чем дома, доменное имя есть. Права обрезаны. В целом я дискорд ни когда не любил, с юности тс была.