Lohnt sich ein eigener Server?
TeamSpeak 3 ist im Vergleich zu modernen Sprachdiensten geradezu genügsam: Ein Server mit 32 Slots kommt mit wenigen hundert Megabyte Arbeitsspeicher aus und erzeugt kaum CPU-Last. Der Ressourcenbedarf ist also kein Argument gegen einen eigenen Server - eher im Gegenteil.
Sinnvoll wird ein eigener vServer vor allem dann, wenn du mehrere Dinge bündeln willst: TeamSpeak plus Gameserver plus Bot plus kleine Webseite auf einer Maschine, alles unter deiner Kontrolle und zu einem Preis. Wer ausschließlich einen Voiceserver braucht und sich nicht mit Serveradministration befassen möchte, ist mit einem fertig eingerichteten Angebot besser bedient.
Zur Lizenz: Die kostenlose Lizenz von TeamSpeak erlaubt bis zu 32 Slots auf einer virtuellen Serverinstanz. Für mehr brauchst du eine kommerzielle Lizenz direkt bei TeamSpeak Systems. Halte dich daran - die Lizenzbedingungen werden beim Start abgefragt und sind bindend.
Vorbereitung
Der vServer sollte eingerichtet und abgesichert sein, siehe Erste Schritte und SSH absichern. Danach installierst du die Bibliothek, die der TeamSpeak-Server für seine SQLite-Datenbank braucht:
sudo apt update
sudo apt install libsqlite3-0 wget bzip2 -y
Der Server soll nicht als root laufen - das ist bei einem Dienst, der aus dem Internet erreichbar ist, unnötig riskant. Lege deshalb einen eigenen Systembenutzer ohne Login-Möglichkeit an:
sudo adduser --disabled-login --gecos "TeamSpeak" teamspeak TeamSpeak-Server installieren
Wechsle in den neuen Benutzer und lade die aktuelle Serverversion herunter. Die jeweils aktuelle Versionsnummer findest du auf der offiziellen Downloadseite von TeamSpeak - passe sie im folgenden Befehl an:
sudo -u teamspeak -s
cd /home/teamspeak
wget https://files.teamspeak-services.com/releases/server/3.13.7/teamspeak3-server_linux_amd64-3.13.7.tar.bz2
tar xfj teamspeak3-server_linux_amd64-3.13.7.tar.bz2
mv teamspeak3-server_linux_amd64/* .
rm -rf teamspeak3-server_linux_amd64 teamspeak3-server_linux_amd64-3.13.7.tar.bz2
Die Lizenzbedingungen musst du aktiv bestätigen, sonst startet der Server nicht:
touch .ts3server_license_accepted
exit
Der letzte Befehl bringt dich zurück in deinen normalen Benutzer.
Autostart per systemd einrichten
Ein Server, der nach einem Neustart nicht von allein hochkommt, taugt nichts. Lege deshalb eine systemd-Unit an:
sudo nano /etc/systemd/system/teamspeak.service
[Unit]
Description=TeamSpeak 3 Server
After=network.target
[Service]
WorkingDirectory=/home/teamspeak
User=teamspeak
Group=teamspeak
Type=forking
ExecStart=/home/teamspeak/ts3server_startscript.sh start inifile=ts3server.ini
ExecStop=/home/teamspeak/ts3server_startscript.sh stop
PIDFile=/home/teamspeak/ts3server.pid
RestartSec=15
Restart=always
[Install]
WantedBy=multi-user.target
Aktivieren und starten:
sudo systemctl daemon-reload
sudo systemctl enable --now teamspeak
sudo systemctl status teamspeak --no-pager
Die Statusanzeige sollte active (running) melden. Restart=always sorgt dafür, dass der Dienst nach einem Absturz automatisch wieder anläuft.
Den Admin-Token sichern
Beim allerersten Start schreibt der Server einen Privilege Key ins Log - damit machst du dich später zum Server-Admin. Diesen Schlüssel gibt es genau einmal.
sudo journalctl -u teamspeak --no-pager | grep -A 3 "token"
Findest du dort nichts, schau direkt in die Logdatei:
sudo grep -r "token=" /home/teamspeak/logs/ | head
Kopiere den Token in einen Passwort-Manager. Geht er verloren, kannst du dir über die ServerQuery-Schnittstelle zwar einen neuen erzeugen, das ist aber deutlich umständlicher.
Ports in der Firewall freigeben
TeamSpeak nutzt drei Ports mit unterschiedlichen Aufgaben:
- 9987/UDP - die eigentliche Sprachübertragung. Der einzige Port, den deine Nutzer zwingend brauchen.
- 30033/TCP - Dateiübertragung, etwa für Avatare und Icons.
- 10011/TCP - ServerQuery zur Fernverwaltung. Gib diesen Port nicht öffentlich frei.
sudo ufw allow 9987/udp
sudo ufw allow 30033/tcp
sudo ufw status
Den ServerQuery-Port erreichst du bei Bedarf über einen SSH-Tunnel, ohne ihn ins Internet zu öffnen:
ssh -L 10011:127.0.0.1:10011 deinname@DEINE-SERVER-IP Verbinden und Admin werden
Starte den TeamSpeak-Client und verbinde dich mit der IP-Adresse deines vServers. Läuft der Server auf dem Standardport 9987, reicht die reine IP-Adresse ohne Portangabe.
Beim ersten Verbindungsaufbau fragt der Client nach dem Privilege Key. Trage den gesicherten Token ein - damit erhältst du die Server-Admin-Rechte. Erscheint die Abfrage nicht, findest du sie im Menü unter Rechte > Privilegien-Schlüssel verwenden.
Sinnvolle nächste Schritte in der Serververwaltung:
- Servernamen und Willkommensnachricht setzen
- Kanalstruktur anlegen und Standardkanal festlegen
- Rechtegruppen für Moderatoren und Mitglieder einrichten
- Bei Bedarf ein Serverpasswort vergeben
Backup und Updates
Der gesamte Zustand deines TeamSpeak-Servers - Kanäle, Rechte, Gruppen, Nutzer - steckt in wenigen Dateien im Verzeichnis /home/teamspeak. Ein Backup ist entsprechend simpel, aber der Dienst muss dafür kurz stehen, sonst sicherst du eine inkonsistente Datenbank:
sudo systemctl stop teamspeak
sudo tar czf /root/ts3-backup-$(date +%F).tar.gz -C /home teamspeak
sudo systemctl start teamspeak
Die entscheidenden Dateien darin sind ts3server.sqlitedb (die Datenbank) und query_ip_whitelist.txt beziehungsweise ts3server.ini, falls du sie angepasst hast.
Für ein Update lädst du die neue Version herunter, entpackst sie über die bestehende Installation und startest den Dienst neu. Sichere vorher - Nextcloud-Updates verzeihen einen Fehler eher als eine überschriebene TeamSpeak-Datenbank. Wie du das automatisierst, steht im Ratgeber Backups einrichten.
Wenn keine Verbindung zustande kommt
- Dienst läuft nicht:
sudo systemctl status teamspeakprüfen. Häufigste Ursache ist die fehlende Datei.ts3server_license_accepted. - Port nicht offen:
sudo ufw statusmuss 9987/udp listen. Beachte, dass es UDP ist, nicht TCP - ein häufiger Tippfehler. - Falscher Port im Client: Läuft der Server nicht auf 9987, musst du die Adresse als
IP:PORTangeben. - Server lauscht nicht: Mit
sudo ss -lunp | grep 9987prüfen, ob der Prozess den Port tatsächlich belegt.
Häufige Fragen
vServer für deinen Voiceserver
Ein TeamSpeak-Server mit bis zu 32 Slots läuft bereits auf dem Tarif XS. Wer zusätzlich einen Gameserver, Bots oder eine Webseite auf demselben Server betreiben will, greift zu S oder M. Alle Tarife mit DDoS-Schutz bis 250 GBit/s.
vServer-Tarife & Preise ansehen