Jak hostovat TeamSpeak Server na Linuxu

Jste hráč na Linuxu, který potřebuje hlasovou komunikaci, ale nechcete využívat cloudová řešení jako Discord? Pokud máte domácí server, zvažte alternativu v podobě vlastního „úložného“ řešení – hostování serveru TeamSpeak.

Zřízení Nového Uživatele

Prvním krokem při instalaci TeamSpeak serveru na Linuxu je vytvoření uživatelského účtu, pod kterým bude software bezpečně spuštěn. Otevřete terminál a s pomocí příkazu sudo získejte přístup k root shellu. Usnadní vám to interakci se serverem a provádění různých příkazů vyžadujících root oprávnění.

sudo -s

Jakmile máte root přístup, použijte příkaz adduser pro vytvoření nového uživatele. Důležité je, že použijeme parametr –disabled-login, protože tento uživatel by se nikdy neměl přihlašovat do systému.

adduser --disabled-login teamspeak

usermod -a -G teamspeak teamspeak

Není nutné přidávat heslo, systém se o vše postará. Nyní můžeme přejít ke stažení serverového softwaru.

Instalace TeamSpeak Serveru

TeamSpeak serverový software je proprietární, takže jej žádná standardní distribuce Linuxu nemůže legálně balit a umožnit snadnou instalaci. Uživatelé si jej proto musí stáhnout sami. Navštivte oficiální webové stránky a vyberte správnou verzi pro váš procesor. TeamSpeak oficiálně podporuje 32bitové i 64bitové verze. Stáhněte si soubor a přeneste ho na svůj server pomocí FTP, Samby nebo jiného nástroje. Pokud se vám nechce přenášet software pomocí těchto metod, zvažte stažení přímo pomocí wget.

Chcete-li stáhnout nejnovější verzi TeamSpeak serveru, přejděte do složky s releasy, klikněte pravým tlačítkem na nejnovější verzi, zvolte „Kopírovat adresu odkazu“ a následně spusťte jeden z následujících příkazů:

wget https://dl.4players.de/ts/releases/3.1.1/teamspeak3-server_linux_amd64-3.1.1.tar.bz2

nebo

wget https://dl.4players.de/ts/releases/3.1.1/teamspeak3-server_linux_x86-3.1.1.tar.bz2

Rozbalte obsah serverového softwaru pomocí příkazu tar.

tar -xvf teamspeak3-server_linux_*.tar.bz2

rm *.tar.bz2

S pomocí příkazu chown udělte plná oprávnění nově vytvořenému uživateli. Změna vlastníka složky je nezbytná, aby uživatel TeamSpeak mohl software korektně spouštět bez chyb.

Důležité upozornění: Z bezpečnostních důvodů nikdy nespouštějte TS3 server jako root.

mv teamspeak3-server_linux_* /usr/local/teamspeak

chown -R teamspeak:teamspeak /usr/local/teamspeak

cd /usr/local/teamspeak

Vytvořte prázdný soubor pomocí příkazu touch, který serverovému softwaru signalizuje přijetí licenčních podmínek.

touch .ts3server_license_accepted

Dále vytvořte vlastní soubor služby systemd pro TeamSpeak.

cd /etc/systemd/system

echo '' > teamspeak3.service

nano teamspeak3.service

Zkopírujte následující kód do textového editoru Nano a uložte ho stisknutím Ctrl + O.

[Unit]
Description=TeamSpeak 3 Server
After=network.target

[Service]
WorkingDirectory=/usr/local/teamspeak/
User=teamspeak
Group=teamspeak
Type=forking
ExecStart=/usr/local/teamspeak/ts3server_startscript.sh start inifile=ts3server.ini
ExecStop=/usr/local/teamspeak/ts3server_startscript.sh stop
PIDFile=/usr/local/teamspeak/ts3server.pid
RestartSec=15
Restart=always

[Install]
WantedBy=multi-user.target

Spusťte a aktivujte nový soubor teamspeak3.service pomocí příkazů systemd:

systemctl enable teamspeak3

systemctl start teamspeak3

Server můžete kdykoli restartovat pomocí systemd příkazem:

systemctl stop teamspeak3

A server zcela deaktivovat pomocí:

systemctl disable teamspeak3

Přihlášení

Nejtěžší část nastavení TeamSpeak3 serveru je hotová. Nyní je třeba získat váš administrátorský klíč (také známý jako privilegovaný token). Tento token je generován náhodně při prvním spuštění serveru. Chcete-li získat token, musíte otevřít klienta TeamSpeak3 a připojit se k serveru. Při prvním připojení by vás měl server požádat o zadání „privilegovaného klíče“. Pokud se nezobrazí výzva k zadání klíče, budete muset prohledat nastavení na vašem serveru a kliknout na tuto možnost.

Použijte tento příkaz k automatickému vyhledání a uložení tokenu administrátora TeamSpeak do souboru:

cat /usr/local/teamspeak/logs/* | grep "token"

Zkopírujte řetězec čísel za textem „token=“ a vložte ho za příkaz echo do uvozovek:

echo 'token string' > /usr/local/teamspeak/admin-token.txt

Odeslání řetězce do souboru tímto způsobem udrží token na bezpečném místě.

Pro zobrazení textového souboru s tokenem použijte příkaz cat.

Pro udělení administrátorských práv svému uživateli zkopírujte a vložte obsah souboru do zobrazené výzvy.

cat /usr/local/teamspeak/admin-token.txt

Mějte na paměti, že pro každého nového administrátora budete možná muset vygenerovat nový privilegovaný token. Pro podrobnější informace se podívejte do dokumentace TeamSpeak.

Odinstalace TeamSpeak Serveru

TeamSpeak je užitečný software, ale někteří uživatelé nemusí mít zájem o veškeré obtíže s ním spojené. Pokud jste ho vyzkoušeli a rozhodli jste se server TeamSpeak dále nepoužívat, postupujte podle následujících kroků a zjistěte, jak software kompletně odinstalovat.

Nejprve deaktivujte a zastavte službu TeamSpeak pomocí systemd.

sudo systemctl disable teamspeak3 -f

sudo systemctl stop teamspeak3

Dále odstraňte vlastní službu systemd, kterou jste vytvořili v nastavení.

sudo rm  /etc/systemd/system/teamspeak3.service

Následně smažte software ze serveru.

sudo rm -rf /usr/local/teamspeak/

Nakonec smažte skupinu a uživatele TeamSpeak.

sudo userdel -r teamspeak

sudo groupdel teamspeak

Spuštěním všech těchto příkazů by se měly ze serveru odstranit všechny stopy po TeamSpeak. Příkaz sudo by měl fungovat, ale pokud ne, zvažte odstranění sudo z každého z výše uvedených příkazů a místo toho zkuste nejdříve získat root shell (sudo -s).