TeamSpeak je multiplatformní software pro hlasový chat, který používají hráči, týmy a školy. Je lehký a rychlý a nabízí vám větší kontrolu, protože jej můžete hostovat na svém serveru. Nabízí bezpečný a snadný způsob, jak se spojit s lidmi po celém světě. Má plně přizpůsobitelné uživatelské rozhraní, podporuje přímé zasílání zpráv, neomezený přenos souborů a umožňuje anonymní použití.
Tento tutoriál vás naučí, jak nainstalovat server TeamSpeak na server založený na Debianu 11 a připojit se k němu pomocí klienta Windows.
Předpoklady
-
Server založený na Debianu 11.
-
Uživatel bez oprávnění root s právy sudo.
-
Sudo balíček je nainstalován.
-
Vše je aktualizováno.
$ sudo apt update && sudo apt upgrade
-
Několik balíčků, které váš systém potřebuje.
$ sudo apt install nano ufw software-properties-common dirmngr apt-transport-https gnupg2 ca-certificates lsb-release debian-archive-keyring wget -y
Některé z těchto balíčků již mohou být ve vašem systému nainstalovány.
Krok 1 – Konfigurace brány firewall
Prvním krokem je konfigurace firewallu. Debian je dodáván s ufw (Uncomplicated Firewall).
Zkontrolujte, zda je spuštěna brána firewall.
$ sudo ufw status
Měli byste získat následující výstup.
Status: inactive
Povolte port SSH, aby firewall při jeho povolení nepřerušil aktuální připojení.
$ sudo ufw allow OpenSSH
Otevřete následující porty požadované TeamSpeak.
- 9987/udp pro Voice.
- 30033/tcp pro přenos souborů.
- 10011/tcp pro Serverquery (Raw).
- 10022/tcp pro Serverquery (SSH).
- 10080/tcp pro Webquery (HTTP).
$ sudo ufw allow 9987/udp $ sudo ufw allow 30033/tcp $ sudo ufw allow 10011/tcp $ sudo ufw allow 10022/tcp $ sudo ufw allow 10080/tcp
Povolte bránu firewall
$ sudo ufw enable Command may disrupt existing ssh connections. Proceed with operation (y|n)? y Firewall is active and enabled on system startup
Znovu zkontrolujte stav brány firewall.
$ sudo ufw status
Měli byste vidět podobný výstup.
Status: active To Action From -- ------ ---- OpenSSH ALLOW Anywhere 9987/udp ALLOW Anywhere 30033/tcp ALLOW Anywhere 10011/tcp ALLOW Anywhere 10080/tcp ALLOW Anywhere 10022/tcp ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6) 9987/udp (v6) ALLOW Anywhere (v6) 30033/tcp (v6) ALLOW Anywhere (v6) 10011/tcp (v6) ALLOW Anywhere (v6) 10080/tcp (v6) ALLOW Anywhere (v6) 10022/tcp (v6) ALLOW Anywhere (v6)
Krok 2 – Stáhnout TeamSpeak
Navštivte stránku ke stažení TeamSpeak a všimněte si čísla nejnovější verze. V době tohoto tutoriálu je v3.13.6 nejnovější dostupná verze serveru TeamSpeak.
Ke stažení serveru TeamSpeak použijte následující příkaz.
$ TVERSION=3.13.6 $ wget https://files.teamspeak-services.com/releases/server/${TVERSION}/teamspeak3-server_linux_amd64-${TVERSION}.tar.bz2
Rozbalte stažený archiv.
$ tar -xf ./teamspeak3-server_linux_amd64-${TVERSION}.tar.bz2
Krok 3 – Vytvoření uživatele a adresáře TeamSpeak
Prvním krokem při instalaci TeamSpeak je vytvoření uživatele pro server. Uživatel bude mít svůj domovský adresář na /opt/teamspeak
a nebude mít heslo.
$ sudo adduser ts3 --home /opt/teamspeak --shell /bin/bash --disabled-password
Nyní můžeme přesunout extrahovaný adresář do /opt/teamspeak
adresář.
$ sudo mv teamspeak3-server_linux_amd64/* /opt/teamspeak/
Udělte správná oprávnění k adresáři.
$ sudo chown -R ts3:ts3 /opt/teamspeak
Krok 4 – Spusťte server TeamSpeak
Dalším krokem je spuštění serveru TeamSpeak pro první vytvoření klíče oprávnění. Tento klíč vám pomůže získat přístup k serveru jako správce.
Před spuštěním serveru se musíte přihlásit jako uživatel TeamSpeak. Spusťte následující příkaz a přihlaste se do svého prostředí jako uživatel TeamSpeak.
$ sudo -u -i ts3
Za tímto účelem vytvoříme soubor s názvem .ts3server_license_accepted
v pracovním adresáři TeamSpeak.
$ touch .ts3server_license_accepted
Spuštěním následujícího příkazu spusťte server.
$ ./ts3server_startscript.sh start ------------------------------------------------------------------ I M P O R T A N T ------------------------------------------------------------------ Server Query Admin Account created loginname= "serveradmin", password= "BtXdJaCb" apikey= "BAD8rYVPM61p_-TdrsBqEL_8ZxKzEHIKOkUk6_e" ------------------------------------------------------------------ ------------------------------------------------------------------ I M P O R T A N T ------------------------------------------------------------------ ServerAdmin privilege key created, please use it to gain serveradmin rights for your virtualserver. please also check the doc/privilegekey_guide.txt for details. token=WIRagRYXkCnWqM5g7gBoSgcHHpfgLG9w17pcLORy ------------------------------------------------------------------
První spuštění serveru vytvoří účet Server Query Administrator. Poznamenejte si jeho uživatelské jméno a heslo. Poznamenejte si také klíč API a vygenerovaný token oprávnění. Budete to potřebovat v následujících krocích.
Chcete-li server zastavit, stiskněte Ctrl + C na klávesnici.
Odhlaste se jako uživatel TeamSpeak.
$ exit
Krok 5 – Vytvoření démona služby TeamSpeak
Vytvořte soubor /lib/systemd/system/ts3server.service
a otevřete jej pro úpravy.
$ sudo nano /lib/systemd/system/ts3server.service
Vložte do něj následující kód.
[Unit] Description=TeamSpeak3 Server Wants=network-online.target After=syslog.target network.target local-fs.target [Service] WorkingDirectory=/opt/teamspeak User=ts3 Group=ts3 Type=forking ExecStart=/opt/teamspeak/ts3server_startscript.sh start license_accepted=1 ExecStop=/opt/teamspeak/ts3server_startscript.sh stop ExecReload=/opt/teamspeak/ts3server_startscript.sh restart Restart=always RestartSec=15 [Install] WantedBy=multi-user.target
Zavřete soubor stisknutím Ctrl + X a zadáním Y až budete vyzváni.
Znovu načtěte servisního démona.
$ sudo systemctl daemon-reload
Povolte a spusťte službu TeamSpeak.
$ sudo systemctl enable ts3server --now
Zkontrolujte stav služby.
$ sudo systemctl enable ts3server ? ts3server.service - TeamSpeak3 Server Loaded: loaded (/lib/systemd/system/ts3server.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2022-03-29 08:18:17 UTC; 2s ago Process: 23120 ExecStart=/opt/teamspeak/ts3server_startscript.sh start license_accepted=1 (code=exited, status=0/SUCCESS) Main PID: 23127 (ts3server) Tasks: 21 (limit: 2341) Memory: 17.3M CPU: 1.953s CGroup: /system.slice/ts3server.service ??23127 ./ts3server license_accepted=1 daemon=1 pid_file=ts3server.pid Mar 29 08:18:17 teamspeak systemd[1]: Starting TeamSpeak3 Server... Mar 29 08:18:17 teamspeak ts3server_startscript.sh[23120]: Starting the TeamSpeak 3 server Mar 29 08:18:17 teamspeak ts3server_startscript.sh[23120]: TeamSpeak 3 server started, for details please view the log file Mar 29 08:18:17 teamspeak systemd[1]: Started TeamSpeak3 Server.
Krok 6 – Připojení pomocí klienta TeamSpeak
Stáhněte si a nainstalujte klienta Windows TeamSpeak 3 z oficiálního webu. Můžete si také stáhnout nejnovější beta verzi (v5) klienta, ale pro náš tutoriál použijeme starší a stabilní verzi v3.
Spusťte klienta na ploše a poté, co projdete výzvou k licenci, se zobrazí následující obrazovka.
Klikněte na Připojení a vyberte možnost Připojit možnost začít. Zadejte IP adresu vašeho serveru, heslo vygenerované v kroku 4 a vaši přezdívku.
Klikněte na tlačítko Připojit tlačítko pro pokračování. V další výzvě budete požádáni o zadání klíče Privilege. Zadejte token oprávnění z kroku 4 a klikněte na OK pokračovat.
Nyní jste připojeni ke svému TeamSpeak serveru a můžete začít používat klienta pro komunikaci.
Krok 7 – Změna přístupového hesla
Heslo správce serveru můžete změnit na silnější podle svého výběru. Chcete-li to provést, zastavte službu TeamSpeak.
$ sudo systemctl stop ts3server
Přepněte na uživatele TeamSpeak.
$ sudo -i -u ts3
Spusťte server TeamSpeak a přidejte serveradmin_password
parametr ve vašem příkazu.
$ ./ts3server_startscript.sh start serveradmin_password=password Starting the TeamSpeak 3 server TeamSpeak 3 server started, for details please view the log file
Nahraďte password
se silným heslem dle vašeho výběru.
Znovu zastavte server.
$ ./ts3server_startscript.sh stop Stopping the TeamSpeak 3 server . done
Přepněte zpět na svůj uživatelský účet.
$ exit
Znovu spusťte službu TeamSpeak.
$ sudo systemctl start ts3server
Krok 8 – Instalace a konfigurace MySQL
TeamSpeak ve výchozím nastavení používá databázi SQLite k ukládání veškeré komunikace a uživatelských dat. I když je to pro malou komunitu v pořádku, může to být problém, pokud používáte TeamSpeak k hostování více uživatelů. Naštěstí lze TeamSpeak nakonfigurovat tak, aby používal databázi MySQL nebo PostgreSQL.
Nakonfigurujeme jej pro použití se serverem MySQL.
Nainstalujte server MariaDB, který je náhradou za MySQL, protože Debian se standardně nedodává s MySQL 8.
$ sudo apt install mariadb-server -y
Instalační program se spustí a aktivuje službu Mariadb. Můžete zkontrolovat stav služby.
$ sudo systemctl status mariadb
Spusťte bezpečnostní skript pro MariaDB. Použijte níže uvedené možnosti.
$ sudo mysql_secure_installation Enter current password for root (enter for none): (Press Enter) Switch to unix_socket authentication [Y/n] Y Change the root password? [Y/n] n Remove anonymous users? [Y/n] Y Disallow root login remotely? [Y/n] Y Remove test database and access to it? [Y/n] Y Reload privilege tables now? [Y/n] Y
Přihlaste se do prostředí MySQL.
$ sudo mysql
Vytvořte ts3user
uživatel. Nahraďte your_password
se silným heslem dle vašeho výběru.
mysql> CREATE USER 'ts3user'@'localhost' IDENTIFIED BY 'your_password';
Vytvořte teamspeak3
databáze.
mysql> CREATE DATABASE teamspeak3;
Udělte uživatelská oprávnění na teamspeak3
databáze.
mysql> GRANT ALL PRIVILEGES ON teamspeak3.* TO 'ts3user'@'localhost';
Opusťte Shell.
mysql> exit
Přepněte na uživatele TeamSpeak.
$ sudo -i -u ts3
Prvním krokem ke konfiguraci MariaDB pro práci s TeamSpeak je přidání knihovny MariaDB. Najdete ho v /opt/teamspeak/redist
složka.
Vytvořte symbolický odkaz pro knihovnu z redist
složky do hlavního pracovního adresáře.
$ ln -s /opt/teamspeak-server/redist/libmariadb.so.2 /opt/teamspeak-server/libmariadb.so.2
Spusťte následující příkaz a vytiskněte sdílené knihovny požadované TeamSpeak.
$ ldd /opt/teamspeak3-server/libts3db_mariadb.so
Vytvořte konfigurační soubor pro uložení parametrů databáze a otevřete jej pro úpravy.
$ nano ts3db_mariadb.ini
Vložte do něj následující kód.
[config] host=127.0.0.1 port=3306 username=ts3user password=your_password database=teamspeak3 socket=
Použijte přihlašovací údaje databáze vytvořené výše. Zavřete soubor stisknutím Ctrl + X a zadáním Y až budete vyzváni.
Vytvořte konfigurační soubor pro TeamSpeak a otevřete jej pro úpravy.
$ nano ts3server.ini
Vložte do něj následující kód.
machine_id= default_voice_port=9987 voice_ip=0.0.0.0 licensepath= filetransfer_port=30033 filetransfer_ip=0.0.0.0 query_port=10011 query_ip=0.0.0.0 query_ip_whitelist=query_ip_whitelist.txt query_ip_blacklist=query_ip_blacklist.txt dbsqlpath=sql/ dbplugin=ts3db_mariadb dbsqlcreatepath=create_mariadb/ dbpluginparameter=ts3db_mariadb.ini dbconnections=10 logpath=logs logquerycommands=0 dbclientkeepdays=30 logappend=0 query_skipbruteforcecheck=0
Zavřete soubor stisknutím Ctrl + X a zadáním Y po výzvě. Chcete-li se dozvědět o těchto konfiguračních nastaveních, můžete se podívat na soubor server_quickstart.md
k dispozici v doc
složka. Výše uvedený soubor konfiguruje TeamSpeak tak, aby místo databáze SQLite používal MariaDB.
Ukončete prostředí TeamSpeak.
$ exit
Musíme sdělit serveru TeamSpeak, aby použil nově vytvořený konfigurační soubor. Zastavte a deaktivujte službu TeamSpeak.
$ sudo systemctl stop ts3server && sudo systemctl disable ts3server
Otevřete soubor služby.
$ sudo nano /lib/systemd/system/ts3server.service
Najděte řádek ExecStart=/opt/teamspeak/ts3server_startscript.sh start license_accepted=1
a změňte jej přidáním podrobností konfiguračního souboru, jak je uvedeno níže.
.... Type=forking ExecStart=/opt/teamspeak/ts3server_startscript.sh start license_accepted=1 inifile=ts3server.ini ....
Zavřete soubor stisknutím Ctrl + X a zadáním Y až budete vyzváni.
Chcete-li použít změny, znovu načtěte servisního démona.
$ sudo systemctl daemon-reload
Povolte a spusťte službu TeamSpeak.
$ sudo systemctl enable ts3server --now
Zkontrolujte stav serveru.
$ sudo systemctl status ts3server ? ts3server.service - TeamSpeak3 Server Loaded: loaded (/lib/systemd/system/ts3server.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2022-03-29 12:21:22 UTC; 6s ago Process: 26511 ExecStart=/opt/teamspeak/ts3server_startscript.sh start license_accepted=1 inifile=ts3server.ini (code=exited, status=0/SUCCESS) Main PID: 26518 (ts3server) Tasks: 21 (limit: 2341) Memory: 16.0M CPU: 1.818s CGroup: /system.slice/ts3server.service ??26518 ./ts3server license_accepted=1 inifile=ts3server.ini daemon=1 pid_file=ts3server.pid Mar 29 12:21:23 teamspeak ts3server_startscript.sh[26518]: apikey= "BAA_lDBRBQxy2nPJXwPQvTRk9_sX3o403Ktlbjz" Mar 29 12:21:23 teamspeak ts3server_startscript.sh[26518]: ------------------------------------------------------------------ Mar 29 12:21:24 teamspeak ts3server_startscript.sh[26518]: ------------------------------------------------------------------ Mar 29 12:21:24 teamspeak ts3server_startscript.sh[26518]: I M P O R T A N T Mar 29 12:21:24 teamspeak ts3server_startscript.sh[26518]: ------------------------------------------------------------------ Mar 29 12:21:24 teamspeak ts3server_startscript.sh[26518]: ServerAdmin privilege key created, please use it to gain Mar 29 12:21:24 teamspeak ts3server_startscript.sh[26518]: serveradmin rights for your virtualserver. please Mar 29 12:21:24 teamspeak ts3server_startscript.sh[26518]: also check the doc/privilegekey_guide.txt for details. Mar 29 12:21:24 teamspeak ts3server_startscript.sh[26518]: token=kuFsCpz8G7204KiYgQJR8X8orHR+C8OrSv21MZRw Mar 29 12:21:24 teamspeak ts3server_startscript.sh[26518]: ------------------------------------------------------------------
Tím se znovu vytvoří klíč oprávnění. Až se příště přihlásíte na svůj server, budete o to požádáni. Vaše heslo pro správu serveru však zůstane stejné.
Krok 9 – Upgrade TeamSpeak
Prvním krokem k upgradu serveru TeamSpeak je zastavení serveru.
$ sudo systemctl stop ts3server
Stáhněte si nejnovější verzi z oficiálního webu a rozbalte archiv do /opt/teamspeak
adresář přepíše původní soubory podle kroků 2 a 3 z tutoriálu. Ujistěte se, že jste změnili oprávnění extrahované složky.
Jakmile skončíte, spusťte server znovu.
$ sudo systemctl start ts3server
Závěr
Tímto končí náš tutoriál o instalaci a používání serveru TeamSpeak na serveru založeném na Debianu 11. Pokud máte nějaké dotazy, napište je do komentářů níže.