TeamSpeak ist eine plattformübergreifende Voice-Chat-Software, die von Spielern, Teams und Schulen verwendet wird. Es ist leicht und schnell und bietet Ihnen mehr Kontrolle, da Sie es auf Ihrem Server hosten können. Es bietet eine sichere und einfache Möglichkeit, mit Menschen auf der ganzen Welt in Kontakt zu treten. Es hat eine vollständig anpassbare Benutzeroberfläche, unterstützt Direktnachrichten, unbegrenzte Dateiübertragung und erlaubt anonyme Nutzung.
Dieses Tutorial zeigt Ihnen, wie Sie den TeamSpeak-Server auf einem Debian 11-basierten Server installieren und sich mit einem Windows-Client mit ihm verbinden.
Voraussetzungen
-
Ein auf Debian 11 basierender Server.
-
Ein Nicht-Root-Benutzer mit sudo-Berechtigungen.
-
Sudo Paket installiert ist.
-
Alles ist aktualisiert.
$ sudo apt update && sudo apt upgrade
-
Einige Pakete, die Ihr System benötigt.
$ sudo apt install nano ufw software-properties-common dirmngr apt-transport-https gnupg2 ca-certificates lsb-release debian-archive-keyring wget -y
Einige dieser Pakete sind möglicherweise bereits auf Ihrem System installiert.
Schritt 1 – Firewall konfigurieren
Der erste Schritt besteht darin, die Firewall zu konfigurieren. Debian kommt mit ufw (Uncomplicated Firewall).
Überprüfen Sie, ob die Firewall ausgeführt wird.
$ sudo ufw status
Sie sollten die folgende Ausgabe erhalten.
Status: inactive
SSH-Port zulassen, damit die Firewall die aktuelle Verbindung beim Aktivieren nicht unterbricht.
$ sudo ufw allow OpenSSH
Öffnen Sie die folgenden von TeamSpeak benötigten Ports.
- 9987/udp für Sprache.
- 30033/tcp für Dateiübertragung.
- 10011/tcp für Serverabfrage (Raw).
- 10022/tcp für Serverabfrage (SSH).
- 10080/tcp für Webabfrage (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
Aktivieren Sie die Firewall
$ sudo ufw enable Command may disrupt existing ssh connections. Proceed with operation (y|n)? y Firewall is active and enabled on system startup
Überprüfen Sie den Status der Firewall erneut.
$ sudo ufw status
Sie sollten eine ähnliche Ausgabe sehen.
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)
Schritt 2 - Laden Sie TeamSpeak herunter
Besuchen Sie die Download-Seite von TeamSpeak und beachten Sie die neueste Versionsnummer. Zum Zeitpunkt dieses Tutorials ist v3.13.6 die neueste verfügbare Version des TeamSpeak-Servers.
Verwenden Sie den folgenden Befehl, um den TeamSpeak-Server herunterzuladen.
$ TVERSION=3.13.6 $ wget https://files.teamspeak-services.com/releases/server/${TVERSION}/teamspeak3-server_linux_amd64-${TVERSION}.tar.bz2
Extrahieren Sie das heruntergeladene Archiv.
$ tar -xf ./teamspeak3-server_linux_amd64-${TVERSION}.tar.bz2
Schritt 3 - TeamSpeak-Benutzer und -Verzeichnis erstellen
Der erste Schritt bei der Installation von TeamSpeak besteht darin, einen Benutzer für den Server anzulegen. Der Benutzer hat sein Heimatverzeichnis unter /opt/teamspeak
und kein Passwort haben.
$ sudo adduser ts3 --home /opt/teamspeak --shell /bin/bash --disabled-password
Jetzt können wir das extrahierte Verzeichnis nach /opt/teamspeak
verschieben Verzeichnis.
$ sudo mv teamspeak3-server_linux_amd64/* /opt/teamspeak/
Gewähren Sie dem Verzeichnis die richtigen Berechtigungen.
$ sudo chown -R ts3:ts3 /opt/teamspeak
Schritt 4 - TeamSpeak-Server ausführen
Der nächste Schritt besteht darin, den TeamSpeak-Server auszuführen, um zum ersten Mal einen Berechtigungsschlüssel zu erstellen. Dieser Schlüssel hilft Ihnen, als Administrator Zugriff auf den Server zu erhalten.
Bevor Sie den Server starten, müssen Sie sich als TeamSpeak-Benutzer anmelden. Führen Sie den folgenden Befehl aus, um sich als TeamSpeak-Benutzer bei Ihrer Shell anzumelden.
$ sudo -u -i ts3
Dazu erstellen wir eine Datei namens .ts3server_license_accepted
im Arbeitsverzeichnis von TeamSpeak.
$ touch .ts3server_license_accepted
Führen Sie den folgenden Befehl aus, um den Server zu starten.
$ ./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 ------------------------------------------------------------------
Beim erstmaligen Ausführen des Servers wird ein Serverabfrage-Administratorkonto erstellt. Notieren Sie sich seinen Benutzernamen und das Passwort. Notieren Sie sich auch den API-Schlüssel und das generierte Berechtigungstoken. Sie werden dies in den nächsten Schritten benötigen.
Um den Server zu stoppen, drücken Sie Strg + C auf Ihrer Tastatur.
Melden Sie sich als TeamSpeak-Benutzer ab.
$ exit
Schritt 5 - TeamSpeak Service-Daemon erstellen
Erstellen Sie die Datei /lib/systemd/system/ts3server.service
und zum Bearbeiten öffnen.
$ sudo nano /lib/systemd/system/ts3server.service
Fügen Sie den folgenden Code ein.
[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
Schließen Sie die Datei, indem Sie Strg + X drücken und geben Sie Y ein wenn Sie dazu aufgefordert werden.
Laden Sie den Service-Daemon neu.
$ sudo systemctl daemon-reload
Aktivieren und starten Sie den TeamSpeak-Dienst.
$ sudo systemctl enable ts3server --now
Überprüfen Sie den Status des Dienstes.
$ 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.
Schritt 6 – Verbinden mit TeamSpeak Client
Laden Sie den Windows TeamSpeak 3 Client von der offiziellen Website herunter und installieren Sie ihn. Sie können auch die neueste Beta-Version (v5) des Clients herunterladen, aber für unser Tutorial verwenden wir die ältere und stabile Version v3.
Starten Sie den Client auf Ihrem Desktop und Sie erhalten den folgenden Bildschirm, nachdem Sie die Lizenzaufforderung durchlaufen haben.
Klicken Sie auf Verbindungen und wählen Sie Verbinden Möglichkeit zum Einstieg. Geben Sie die IP-Adresse Ihres Servers, das in Schritt 4 generierte Passwort und einen Spitznamen für sich selbst ein.
Klicken Sie auf Verbinden Schaltfläche, um fortzufahren. Sie werden aufgefordert, den Privilege-Schlüssel in der nächsten Eingabeaufforderung einzugeben. Geben Sie das Berechtigungstoken aus Schritt 4 ein und klicken Sie auf Ok um fortzufahren.
Sie sind jetzt mit Ihrem TeamSpeak-Server verbunden und können den Client für die Kommunikation verwenden.
Schritt 7 - Zugangspasswort ändern
Sie können das Kennwort des Serveradministrators in ein stärkeres Kennwort Ihrer Wahl ändern. Stoppen Sie dazu den TeamSpeak-Dienst.
$ sudo systemctl stop ts3server
Wechseln Sie zum TeamSpeak-Benutzer.
$ sudo -i -u ts3
Starten Sie den TeamSpeak-Server und fügen Sie das serveradmin_password
hinzu Parameter in Ihrem Befehl.
$ ./ts3server_startscript.sh start serveradmin_password=password Starting the TeamSpeak 3 server TeamSpeak 3 server started, for details please view the log file
Ersetzen Sie password
mit einem sicheren Passwort Ihrer Wahl.
Stoppen Sie den Server erneut.
$ ./ts3server_startscript.sh stop Stopping the TeamSpeak 3 server . done
Wechseln Sie zurück zu Ihrem Benutzerkonto.
$ exit
Starten Sie den TeamSpeak-Dienst erneut.
$ sudo systemctl start ts3server
Schritt 8 – Installation und Konfiguration von MySQL
TeamSpeak verwendet standardmäßig die SQLite-Datenbank, um alle Kommunikations- und Benutzerdaten zu speichern. Während dies für eine kleine Community in Ordnung ist, kann es zu einem Problem werden, wenn Sie TeamSpeak verwenden, um mehr Benutzer zu hosten. Glücklicherweise kann TeamSpeak so konfiguriert werden, dass es entweder eine MySQL- oder eine PostgreSQL-Datenbank verwendet.
Wir werden es für die Verwendung mit dem MySQL-Server konfigurieren.
Installieren Sie den MariaDB-Server, der ein direkter Ersatz für MySQL ist, da Debian standardmäßig nicht mit MySQL 8 ausgeliefert wird.
$ sudo apt install mariadb-server -y
Das Installationsprogramm startet und aktiviert den Mariadb-Dienst für Sie. Sie können den Status des Dienstes überprüfen.
$ sudo systemctl status mariadb
Führen Sie das Sicherheitsskript für MariaDB aus. Verwenden Sie die unten angegebenen Optionen.
$ 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
Melden Sie sich bei der MySQL-Shell an.
$ sudo mysql
Erstellen Sie ts3user
Benutzer. Ersetzen Sie your_password
mit einem sicheren Passwort Ihrer Wahl.
mysql> CREATE USER 'ts3user'@'localhost' IDENTIFIED BY 'your_password';
Erstellen Sie teamspeak3
Datenbank.
mysql> CREATE DATABASE teamspeak3;
Gewähren Sie dem Benutzer Berechtigungen für teamspeak3
Datenbank.
mysql> GRANT ALL PRIVILEGES ON teamspeak3.* TO 'ts3user'@'localhost';
Verlassen Sie die Shell.
mysql> exit
Wechseln Sie zum TeamSpeak-Benutzer.
$ sudo -i -u ts3
Der erste Schritt zur Konfiguration von MariaDB für die Arbeit mit TeamSpeak ist das Hinzufügen der MariaDB-Bibliothek. Sie finden es unter /opt/teamspeak/redist
Ordner.
Erstellen Sie einen Symlink für die Bibliothek aus dem redist
Ordner in das Hauptarbeitsverzeichnis.
$ ln -s /opt/teamspeak-server/redist/libmariadb.so.2 /opt/teamspeak-server/libmariadb.so.2
Führen Sie den folgenden Befehl aus, um die von TeamSpeak benötigten gemeinsam genutzten Bibliotheken zu drucken.
$ ldd /opt/teamspeak3-server/libts3db_mariadb.so
Erstellen Sie die Konfigurationsdatei zum Speichern der Datenbankparameter und öffnen Sie sie zum Bearbeiten.
$ nano ts3db_mariadb.ini
Fügen Sie den folgenden Code ein.
[config] host=127.0.0.1 port=3306 username=ts3user password=your_password database=teamspeak3 socket=
Verwenden Sie die oben erstellten Datenbankanmeldeinformationen. Schließen Sie die Datei, indem Sie Strg + X drücken und geben Sie Y ein wenn Sie dazu aufgefordert werden.
Erstellen Sie eine Konfigurationsdatei für TeamSpeak und öffnen Sie diese zum Bearbeiten.
$ nano ts3server.ini
Fügen Sie den folgenden Code ein.
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
Schließen Sie die Datei, indem Sie Strg + X drücken und geben Sie Y ein wenn Sie dazu aufgefordert werden. Informationen zu diesen Konfigurationseinstellungen finden Sie in der Datei server_quickstart.md
verfügbar im doc
Mappe. Die obige Datei konfiguriert TeamSpeak so, dass es MariaDB anstelle der SQLite-Datenbank verwendet.
Verlassen Sie die TeamSpeak-Shell.
$ exit
Wir müssen dem TeamSpeak-Server mitteilen, dass er die neu erstellte Konfigurationsdatei verwenden soll. Beenden und deaktivieren Sie den TeamSpeak-Dienst.
$ sudo systemctl stop ts3server && sudo systemctl disable ts3server
Öffnen Sie die Servicedatei.
$ sudo nano /lib/systemd/system/ts3server.service
Suchen Sie die Zeile ExecStart=/opt/teamspeak/ts3server_startscript.sh start license_accepted=1
und ändern Sie sie, indem Sie die Details der Konfigurationsdatei wie unten gezeigt hinzufügen.
.... Type=forking ExecStart=/opt/teamspeak/ts3server_startscript.sh start license_accepted=1 inifile=ts3server.ini ....
Schließen Sie die Datei, indem Sie Strg + X drücken und geben Sie Y ein wenn Sie dazu aufgefordert werden.
Laden Sie den Service-Daemon neu, um die Änderungen zu übernehmen.
$ sudo systemctl daemon-reload
Aktivieren und starten Sie den TeamSpeak-Dienst.
$ sudo systemctl enable ts3server --now
Überprüfen Sie den Status des Servers.
$ 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]: ------------------------------------------------------------------
Dadurch wird der Berechtigungsschlüssel neu erstellt. Wenn Sie sich das nächste Mal bei Ihrem Server anmelden, werden Sie danach gefragt. Ihr Serveradministrationspasswort bleibt jedoch gleich.
Schritt 9 - Upgrade von TeamSpeak
Der erste Schritt zum Upgrade des TeamSpeak-Servers besteht darin, den Server zu stoppen.
$ sudo systemctl stop ts3server
Laden Sie die neueste Version von der offiziellen Website herunter und extrahieren Sie das Archiv nach /opt/teamspeak
Verzeichnis, das die Originaldateien überschreibt, indem Sie die Schritte 2 und 3 des Tutorials befolgen. Stellen Sie sicher, dass Sie die Berechtigung des extrahierten Ordners ändern.
Wenn Sie fertig sind, starten Sie den Server erneut.
$ sudo systemctl start ts3server
Schlussfolgerung
Damit ist unser Tutorial zur Installation und Verwendung von TeamSpeak Server auf einem Debian 11-basierten Server abgeschlossen. Wenn Sie Fragen haben, posten Sie diese in den Kommentaren unten.