Windows28. Mai 2026 11 Aufrufe

Installer un serveur TeamSpeak sur VPS Windows

Installer un serveur TeamSpeak sur VPS Windows

Schnelle Zusammenfassung: 5 Schritte, um einen funktionierenden TeamSpeak-Server in weniger als 20 Minuten zu haben:

  1. Verbinden Sie sich über RDP mit Ihrem VPS

  2. Laden Sie TeamSpeak Server 3.13.7 (64-Bit) von teamspeak.com/en/downloads herunter

  3. Entpacken Sie in C:\TeamSpeak3-Server\, starten Sie ts3server.exe, sichern Sie sofort den Privilegien-Schlüssel und die ServerQuery-Anmeldeinformationen

  4. Öffnen Sie die Ports 9987/UDP, 10011/TCP, 30033/TCP, 41144/TCP in der Windows-Firewall

  5. Erstellen Sie eine geplante Aufgabe (Task Scheduler) für den automatischen Start

# PowerShell-Befehl: Öffnen Sie die 4 Ports auf einmal
New-NetFirewallRule -DisplayName "TS3 Voice" -Direction Inbound -Protocol UDP -LocalPort 9987 -Action Allow
New-NetFirewallRule -DisplayName "TS3 Query" -Direction Inbound -Protocol TCP -LocalPort 10011 -Action Allow
New-NetFirewallRule -DisplayName "TS3 FileTransfer" -Direction Inbound -Protocol TCP -LocalPort 30033 -Action Allow
New-NetFirewallRule -DisplayName "TS3 TSDNS" -Direction Inbound -Protocol TCP -LocalPort 41144 -Action Allow

Voraussetzungen

Empfohlene VPS-Spezifikationen je nach Anzahl der Benutzer

Gleichzeitige Benutzer

RAM

vCPU

Bandbreite

Bis zu 10

1 GB

1 vCPU

100 Mbps

Bis zu 50

2 GB

2 vCPU

200 Mbps

Bis zu 100

4 GB

2 vCPU

500 Mbps

Bis zu 200

8 GB

4 vCPU

1 Gbps

TeamSpeak ist leichtgewichtig. Ein VPS mit 2 GB RAM reicht für die meisten Gaming-Communities aus.

Zu öffnende Ports

Port

Protokoll

Verwendung

9987

UDP

Sprachverkehr (Hauptport)

10011

TCP

ServerQuery (Verwaltung)

30033

TCP

Dateitransfer

41144

TCP

TSDNS (interne DNS-Auflösung)

Erforderliches Betriebssystem

Windows Server 2019 oder 2022 (64-Bit). Windows Server 2016 funktioniert ebenfalls, aber 2022 wird für die Sicherheit empfohlen.


Schritt 1: RDP-Verbindung zu Ihrem Windows-VPS

Verbinden Sie sich zunächst über den Remote Desktop (RDP) mit Ihrem VPS.

Unter Windows 10/11: Win + R → geben Sie mstsc ein → geben Sie die IP Ihres VPS, Ihren Benutzernamen und Ihr Passwort ein.

Stellen Sie sicher, dass Sie als Administrator angemeldet sind: Dies ist notwendig, um Firewall-Regeln und geplante Aufgaben zu erstellen.


Schritt 2: TeamSpeak Server herunterladen

Gehen Sie zur offiziellen Seite: teamspeak.com/en/downloads

Wählen Sie Server 64-Bit für Windows. Die aktuelle Version ist 3.13.7. Laden Sie die Datei .zip herunter und überprüfen Sie den auf der Seite angegebenen SHA256-Hash.

TeamSpeak 3 vs TeamSpeak 5: Was 2026 wählen?

Kriterium

TeamSpeak 3

TeamSpeak 5

Serverstabilität

✅ Ausgereift, bewährt

⚠️ Noch in Entwicklung

Berechtigungssystem

✅ Vollständig und dokumentiert

⚠️ Unvollständige Funktionen

Plugins & Bots

✅ Reichhaltiges Ökosystem

❌ Eingeschränkte Unterstützung

Client-Oberfläche

Klassische Oberfläche

Moderne Oberfläche

RAM-Verbrauch

Sehr gering

Höher

Selbsthosting

✅ Empfohlen

⚠️ In Entwicklung

Unsere Empfehlung für 2026: TeamSpeak 3. Der TS5-Server bietet noch nicht die notwendige Reife für ein ernsthaftes Hosting. TS3 bleibt der Maßstab für die Erstellung eines stabilen und verwaltbaren TeamSpeak-Servers.


Schritt 3: Server installieren und konfigurieren

Dateien extrahieren

Öffnen Sie PowerShell als Administrator und führen Sie Folgendes aus:

# Installationsverzeichnis erstellen
New-Item -ItemType Directory -Path "C:\TeamSpeak3-Server" -Force

# Archiv extrahieren (passen Sie den Pfad je nach Ihrem Download an)
Expand-Archive -Path "$env:USERPROFILE\Downloads\teamspeak3-server_win64-3.13.7.zip" -DestinationPath "C:\TeamSpeak3-Server" -Force

# Dateien bei Bedarf verschieben (je nach ZIP-Struktur)
# Die Dateien müssen direkt in C:\TeamSpeak3-Server\

Erster Start

# In das Verzeichnis wechseln
Set-Location "C:\TeamSpeak3-Server"

# Server starten
.\ts3server.exe

Ein Konsolenfenster öffnet sich. Lesen Sie es sorgfältig: Es zeigt die anfänglichen Anmeldeinformationen an.

⚠️ SICHERN SIE DIESE INFORMATIONEN SOFORT

🔴 KRITISCHE WARNUNG: Diese Daten erscheinen nur EINMAL

------------------------------------------------------------------
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=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
------------------------------------------------------------------

Kopieren und sofort sichern:

  • Den Token (Privilegien-Schlüssel): ohne ihn können Sie Ihren Server nicht verwalten

  • Die ServerQuery-Anmeldung (serveradmin) und ihr automatisch generiertes Passwort

Speichern Sie sie in einem Passwort-Manager (Bitwarden, KeePass). Wenn Sie den Privilegien-Schlüssel verlieren, ist die Wiederherstellung über ServerQuery möglich, aber mühsam.

Lizenz akzeptieren

Beim ersten Start wird automatisch eine Datei license_accepted erstellt, wenn Sie dies über die Konsole akzeptieren. Sie können diese Datei auch manuell erstellen:

# Lizenz manuell akzeptieren
New-Item -ItemType File -Path "C:\TeamSpeak3-Server\license_accepted" -Force

Schritt 4: Windows-Firewall konfigurieren

Öffnen Sie PowerShell als Administrator und fügen Sie diesen gesamten Block ein:

# Regel 1: Hauptsprachport (UDP 9987)
New-NetFirewallRule `
  -DisplayName "TeamSpeak3 - Voice (UDP 9987)" `
  -Direction Inbound `
  -Protocol UDP `
  -LocalPort 9987 `
  -Action Allow `
  -Profile Any

# Regel 2: ServerQuery (TCP 10011)
New-NetFirewallRule `
  -DisplayName "TeamSpeak3 - ServerQuery (TCP 10011)" `
  -Direction Inbound `
  -Protocol TCP `
  -LocalPort 10011 `
  -Action Allow `
  -Profile Any

# Regel 3: Dateitransfer (TCP 30033)
New-NetFirewallRule `
  -DisplayName "TeamSpeak3 - FileTransfer (TCP 30033)" `
  -Direction Inbound `
  -Protocol TCP `
  -LocalPort 30033 `
  -Action Allow `
  -Profile Any

# Regel 4: TSDNS (TCP 41144)
New-NetFirewallRule `
  -DisplayName "TeamSpeak3 - TSDNS (TCP 41144)" `
  -Direction Inbound `
  -Protocol TCP `
  -LocalPort 41144 `
  -Action Allow `
  -Profile Any

Write-Host "✅ 4 Firewall-Regeln erfolgreich erstellt" -ForegroundColor Green

Überprüfen Sie, ob die Regeln korrekt erstellt wurden:

Get-NetFirewallRule | Where-Object { $_.DisplayName -like "TeamSpeak3*" } | Select-Object DisplayName, Enabled, Direction

Hinweis: Wenn Ihr Anbieter eine Netzwerkfirewall (neben der Windows-Firewall) anbietet, denken Sie daran, die gleichen Ports von Ihrem Kundenbereich aus zu öffnen.


Schritt 5: Automatischer Start über den Task Scheduler

Dies ist der Schritt, den die meisten Anleitungen vernachlässigen. Hier ist die vollständige und zuverlässige Methode.

Startskript erstellen

# Startskript erstellen
$scriptContent = @'
# Startskript TeamSpeak 3
$tsPath = "C:\TeamSpeak3-Server"
$tsExe  = "$tsPath\ts3server.exe"

# Überprüfen, ob der Server bereits läuft
$running = Get-Process -Name "ts3server" -ErrorAction SilentlyContinue

if (-not $running) {
    Start-Process -FilePath $tsExe `
                  -WorkingDirectory $tsPath `
                  -ArgumentList "inifile=ts3server.ini" `
                  -WindowStyle Hidden
    Write-EventLog -LogName Application -Source "TeamSpeak3" -EventId 1000 `
                   -EntryType Information -Message "TeamSpeak 3 Server gestartet" `
                   -ErrorAction SilentlyContinue
}
'@

New-Item -ItemType Directory -Path "C:\Scripts" -Force | Out-Null
$scriptContent | Out-File -FilePath "C:\Scripts\Start-TeamSpeak3.ps1" -Encoding UTF8
Write-Host "✅ Skript erstellt: C:\Scripts\Start-TeamSpeak3.ps1" -ForegroundColor Green

Geplante Aufgabe erstellen

# Aufgabendaten
$taskName    = "TeamSpeak3-AutoStart"
$scriptPath  = "C:\Scripts\Start-TeamSpeak3.ps1"
$description = "Automatischer Start des TeamSpeak 3 Servers beim Booten"

# Aktion: PowerShell mit dem Skript starten
$action = New-ScheduledTaskAction `
    -Execute "powershell.exe" `
    -Argument "-NonInteractive -WindowStyle Hidden -ExecutionPolicy Bypass -File `"$scriptPath`""

# Trigger: beim Systemstart, mit 30 Sekunden Verzögerung
$trigger = New-ScheduledTaskTrigger -AtStartup
$trigger.Delay = "PT30S"  # 30 Sekunden Verzögerung (wichtig für die Stabilität)

# Einstellungen: auch ohne offene Sitzung ausführen, mit SYSTEM-Rechten
$settings = New-ScheduledTaskSettingsSet `
    -ExecutionTimeLimit (New-TimeSpan -Hours 0) `
    -RestartCount 3 `
    -RestartInterval (New-TimeSpan -Minutes 1)

$principal = New-ScheduledTaskPrincipal `
    -UserId "SYSTEM" `
    -LogonType ServiceAccount `
    -RunLevel Highest

# Aufgabe registrieren
Register-ScheduledTask `
    -TaskName $taskName `
    -Action $action `
    -Trigger $trigger `
    -Settings $settings `
    -Principal $principal `
    -Description $description `
    -Force

Write-Host "✅ Geplante Aufgabe '$taskName' erfolgreich erstellt" -ForegroundColor Green

Überprüfen der Funktionsfähigkeit

# Überprüfen, ob die Aufgabe existiert
Get-ScheduledTask -TaskName "TeamSpeak3-AutoStart" | Select-Object TaskName, State

# Manuell testen (Start simulieren)
Start-ScheduledTask -TaskName "TeamSpeak3-AutoStart"

# 5 Sekunden warten und dann den Prozess überprüfen
Start-Sleep -Seconds 5
Get-Process -Name "ts3server" -ErrorAction SilentlyContinue

Starten Sie Ihren VPS neu und überprüfen Sie, ob ts3server.exe nach dem Booten im Task-Manager angezeigt wird.


Schritt 6: Verbindung und erste Konfiguration

TeamSpeak-Client herunterladen

Laden Sie den Client von teamspeak.com/en/downloads herunter → Abschnitt Client.

Mit dem Server verbinden

  1. Öffnen Sie den TeamSpeak-Client

  2. Verbindungen → Verbinden (oder Ctrl+S)

  3. Adresse: IP_IHRES_VPS:9987

  4. Spitzname: Ihr Benutzername

  5. Klicken Sie auf Verbinden

Verwendung des Privilegien-Schlüssels (Admin-Token)

Beim ersten Verbindungsversuch wird ein Fenster angezeigt, in dem Sie einen Token eingeben sollen. Fügen Sie Ihren Privilegien-Schlüssel ein, den Sie in Schritt 3 gesichert haben. Sie erhalten die Server-Admin-Rechte.

Wenn das Fenster nicht automatisch angezeigt wird: Berechtigungen → Privilegien-Token verwenden.

Grundlegende Servereinstellungen

Klicken Sie mit der rechten Maustaste auf den Servernamen → Virtuellen Server bearbeiten:

  • Servername: Wählen Sie einen klaren Namen für Ihre Community

  • Nachricht des Tages (MOTD): Nachricht, die beim Verbinden angezeigt wird

  • Maximale Slots: 32 mit der kostenlosen Lizenz, bis zu 1024 mit einer Gamer-Lizenz

  • Passwort: optional, um den Zugang zu beschränken


Schritt 7: Erweitertes Berechtigungssystem

Das Berechtigungssystem von TeamSpeak 3 ist leistungsstark, wird aber oft missverstanden. So gehen Sie damit um.

Erweiterter Modus aktivieren

Im Client: Extras → Optionen → Anwendung → aktivieren Sie Erweiterter Modus. Andernfalls haben Sie nur Zugriff auf einen Bruchteil der Berechtigungen.

Gruppenhierarchie

TeamSpeak unterscheidet zwischen zwei Arten von Gruppen:

Servergruppen: gelten für den gesamten Server:

Gruppe

Typische Rolle

Server Admin

Vollständige Kontrolle über den Server

Moderator

Kick, Ban, Verschieben

Mitglied

Zugang zu Standardkanälen

Gast

Eingeschränkter Zugang, nur Lesen

Kanalgruppen: gelten nur in einem Kanal:

Gruppe

Typische Rolle

Kanal Admin

Verwaltet Unterkanäle und lokale Berechtigungen

Kanalbetreiber

Kann Mitglieder aus dem Kanal kicken

Normal

Reden und hören

Benutzerdefinierte Gruppe erstellen

  1. Berechtigungen → Servergruppen

  2. Rechtsklick → Gruppe hinzufügen

  3. Nennen Sie sie (z.B.: "VIP", "Streamer")

  4. Aktivieren Sie die gewünschten Berechtigungen (z.B.: b_channel_create_permanent zum Erstellen permanenter Kanäle)

Berechtigungen pro Kanal zuweisen

  1. Klicken Sie mit der rechten Maustaste auf einen Kanal → Kanal bearbeiten

  2. Registerkarte Berechtigungen: Legen Sie die Werte i_channel_needed_join_power fest, um den Zugang zu beschränken

  3. Oder verwenden Sie Berechtigungen → Kanalberechtigungen für eine granulare Kontrolle

Praktischer Tipp: Verwenden Sie i_channel_join_power auf der Gruppenebene und i_channel_needed_join_power auf der Kanalseite. Wenn der Wert der Gruppe niedriger ist als der des Kanals, wird der Zugang verweigert.


Schritt 8: Erweiterte Sicherung

Das Hosten eines TeamSpeak-Servers exponiert Ihren VPS. Diese Schritte gehen über die einfache Firewall hinaus.

1. Ändern Sie das ServerQuery-Passwort

Das Standardpasswort wird zufällig generiert, es ist jedoch besser, es zu ändern. Melden Sie sich über Telnet oder einen ServerQuery-Client an:

telnet IP_VPS 10011
login serveradmin IHR_AKTUELLES_PASSWORT
clientupdate client_login_password=NEUES_STARKES_PASSWORT

Oder über PowerShell mit dem TS3-Modul:

# ServerQuery über TCP verbinden
$client = New-Object System.Net.Sockets.TcpClient("127.0.0.1", 10011)
$stream = $client.GetStream()
# Dann senden Sie die Befehle login + clientupdate

2. Deaktivieren Sie ungenutzte Ports

Wenn Sie den Dateitransfer nicht verwenden, deaktivieren Sie den Port 30033:

# Regel für Dateitransfer deaktivieren
Set-NetFirewallRule -DisplayName "TeamSpeak3 - FileTransfer (TCP 30033)" -Enabled False

3. Aktivieren Sie die Verschlüsselung der Kanäle (Opus Voice Codec)

Im Client klicken Sie mit der rechten Maustaste auf jeden Kanal → Kanal bearbeitenCodec: Wählen Sie Opus Voice und aktivieren Sie die Verschlüsselung. Opus bietet die beste Qualität/Kompression und unterstützt die Ende-zu-Ende-Verschlüsselung.

4. Verbindungen pro IP begrenzen

Über ServerQuery:

serveredit virtualserver_max_clients_per_identity=3

Dies begrenzt die gleichzeitigen Verbindungen pro Identität auf 3, was die Auswirkungen von Floods verringert.

5. Bannen Sie bösartige IPs

# Über ServerQuery
banclient clid=CLIENT_ID banreason=Spam time=3600
# oder direkt eine IP bannen
banadd ip=1.2.3.4 banreason=Flood time=0

time=0 = permanenter Bann.

6. Sicherheits-Checkliste: 6 Punkte

  • ServerQuery-Passwort geändert (anders als das generierte Passwort)

  • Port 10011 (ServerQuery) nur von Ihrer IP aus zugänglich, wenn möglich

  • Opus Voice Codec + Verschlüsselung auf sensiblen Kanälen aktiviert

  • Verbindungslimit pro konfigurierten IP

  • Serverpasswort aktiviert, wenn die Community privat ist

  • Logs aktiviert und regelmäßig eingesehen (C:\TeamSpeak3-Server\logs\)


Schritt 9: Backups und Wiederherstellung

Kritische Dateien zum Sichern

Datei

Inhalt

Priorität

ts3server.sqlitedb

Vollständige Datenbank (Benutzer, Kanäle, Berechtigungen)

🔴 Kritisch

licensekey.dat

Ihr TeamSpeak-Lizenzschlüssel

🔴 Kritisch

query_ip_allowlist.txt

Erlaubte IPs für ServerQuery

🟡 Wichtig

query_ip_denylist.txt

Gesperrte IPs für ServerQuery

🟡 Wichtig

ts3server.ini

Serverkonfiguration

🟡 Wichtig

Automatisiertes PowerShell-Backup-Skript

# Skript : C:\Scripts\Backup-TeamSpeak3.ps1
# Tägliches Backup mit Rotation über 7 Tage

$sourceDir  = "C:\TeamSpeak3-Server"
$backupRoot = "C:\Backups\TeamSpeak3"
$date       = Get-Date -Format "yyyy-MM-dd_HH-mm"
$backupDir  = "$backupRoot\$date"
$maxBackups = 7

# Backup-Verzeichnis erstellen
New-Item -ItemType Directory -Path $backupDir -Force | Out-Null

# Zu sichernde Dateien
$filesToBackup = @(
    "ts3server.sqlitedb",
    "licensekey.dat",
    "query_ip_allowlist.txt",
    "query_ip_denylist.txt",
    "ts3server.ini"
)

foreach ($file in $filesToBackup) {
    $src = Join-Path $sourceDir $file
    if (Test-Path $src) {
        Copy-Item -Path $src -Destination $backupDir -Force
        Write-Host "✅ Gesichert : $file" -ForegroundColor Green
    } else {
        Write-Host "⚠️  Datei nicht gefunden : $file" -ForegroundColor Yellow
    }
}

# Rotation : Backups älter als 7 Tage löschen
$allBackups = Get-ChildItem -Path $backupRoot -Directory | Sort-Object CreationTime
if ($allBackups.Count -gt $maxBackups) {
    $toDelete = $allBackups | Select-Object -First ($allBackups.Count - $maxBackups)
    foreach ($dir in $toDelete) {
        Remove-Item -Path $dir.FullName -Recurse -Force
        Write-Host "🗑️  Altes Backup gelöscht : $($dir.Name)" -ForegroundColor Gray
    }
}

Write-Host "✅ Backup abgeschlossen : $backupDir" -ForegroundColor Cyan

Geplantes tägliches Backup

$backupAction = New-ScheduledTaskAction `
    -Execute "powershell.exe" `
    -Argument "-NonInteractive -ExecutionPolicy Bypass -File `"C:\Scripts\Backup-TeamSpeak3.ps1`""

$backupTrigger = New-ScheduledTaskTrigger -Daily -At "03:00"

Register-ScheduledTask `
    -TaskName "TeamSpeak3-DailyBackup" `
    -Action $backupAction `
    -Trigger $backupTrigger `
    -Principal (New-ScheduledTaskPrincipal -UserId "SYSTEM" -LogonType ServiceAccount) `
    -Description "Tägliches Backup TeamSpeak 3" `
    -Force

Write-Host "✅ Tägliches Backup um 03:00 geplant" -ForegroundColor Green

Wiederherstellungsverfahren

# 1. TeamSpeak-Server stoppen
Stop-Process -Name "ts3server" -Force -ErrorAction SilentlyContinue
Start-Sleep -Seconds 3

# 2. Backup festlegen, das wiederhergestellt werden soll (Datum anpassen)
$backupToRestore = "C:\Backups\TeamSpeak3\2026-05-27_03-00"
$targetDir       = "C:\TeamSpeak3-Server"

# 3. Dateien wiederherstellen
$filesToRestore = @("ts3server.sqlitedb", "licensekey.dat", "query_ip_allowlist.txt", "ts3server.ini")
foreach ($file in $filesToRestore) {
    $src = Join-Path $backupToRestore $file
    if (Test-Path $src) {
        Copy-Item -Path $src -Destination $targetDir -Force
        Write-Host "✅ Wiederhergestellt : $file" -ForegroundColor Green
    }
}

# 4. Server neu starten
Start-Process -FilePath "$targetDir\ts3server.exe" -WorkingDirectory $targetDir
Write-Host "✅ TeamSpeak 3-Server neu gestartet" -ForegroundColor Cyan

Schritt 10: Aktualisierung des TeamSpeak-Servers

Ersetzen Sie niemals die Binärdateien im laufenden Betrieb. Befolgen Sie dieses Verfahren.

Manuelles Verfahren

# Schritt 1 : Server stoppen
Stop-Process -Name "ts3server" -Force -ErrorAction SilentlyContinue
Start-Sleep -Seconds 5
Write-Host "✅ Server gestoppt"

# Schritt 2 : Backup vor der Aktualisierung
& "C:\Scripts\Backup-TeamSpeak3.ps1"

# Schritt 3 : Neue Version herunterladen
$newVersion = "3.13.7"  # Diese Nummer aktualisieren
$downloadUrl = "https://files.teamspeak-services.com/releases/server/$newVersion/teamspeak3-server_win64-$newVersion.zip"
$zipPath = "$env:TEMP\ts3server_update.zip"

Invoke-WebRequest -Uri $downloadUrl -OutFile $zipPath
Write-Host "✅ Neue Version heruntergeladen"

# Schritt 4 : In ein temporäres Verzeichnis extrahieren
$tempDir = "$env:TEMP\ts3server_new"
Expand-Archive -Path $zipPath -DestinationPath $tempDir -Force

# Schritt 5 : Neue Binärdateien kopieren (ohne DB und Konfiguration zu überschreiben)
$filesToUpdate = @("ts3server.exe", "*.dll", "redist")
foreach ($pattern in $filesToUpdate) {
    Copy-Item -Path "$tempDir\teamspeak3-server_win64\$pattern" `
              -Destination "C:\TeamSpeak3-Server\" `
              -Recurse -Force -ErrorAction SilentlyContinue
}
Write-Host "✅ Binärdateien aktualisiert"

# Schritt 6 : Aufräumen und neu starten
Remove-Item $zipPath, $tempDir -Recurse -Force
Start-Process -FilePath "C:\TeamSpeak3-Server\ts3server.exe" -WorkingDirectory "C:\TeamSpeak3-Server"
Write-Host "✅ Server mit Version $newVersion neu gestartet" -ForegroundColor Green

Hinweis : Überprüfen Sie die offiziellen Versionshinweise vor jedem Update, um die Konfigurationsänderungen zu überprüfen.


Schritt 11: DNS-Konfiguration (benutzerdefinierte Domain)

Anstatt eine rohe IP (185.x.x.x:9987) zu teilen, konfigurieren Sie eine Domain wie ts.meinedomain.com.

Warum einen DNS SRV-Eintrag verwenden?

  • Ihre Benutzer verbinden sich mit ts.meinedomain.com, ohne den Port eingeben zu müssen

  • Wenn Sie die IP ändern, müssen Sie nur das DNS aktualisieren: keine Notwendigkeit, eine neue Adresse zu verteilen

  • Professionelles Erscheinungsbild für Ihre Community

DNS-Einträge erstellen

Schritt 1: A-Eintrag (in Ihrem DNS-Manager) :

Typ : A
Name  : ts
Wert : IP_IHRES_VPS
TTL  : 3600

Schritt 2: SRV-Eintrag :

Typ     : SRV
Name      : _ts3._udp.ts.meinedomain.com
Priorität : 0
Gewicht    : 5
Port     : 9987
Ziel    : ts.meinedomain.com
TTL      : 3600

Bei den meisten Registraren (OVH, Namecheap, Cloudflare) sieht das Formular so aus :

Feld

Wert

Service

_ts3

Protokoll

_udp

Name

ts.meinedomain.com

Priorität

0

Gewicht

5

Port

9987

Ziel

ts.meinedomain.com

Nach der DNS-Propagation (einige Minuten bis 24 Stunden) können sich Ihre Benutzer mit ts.meinedomain.com verbinden, ohne den Port anzugeben.

Überprüfung der Auflösung

# Überprüfen des SRV-Eintrags
Resolve-DnsName -Name "_ts3._udp.ts.meinedomain.com" -Type SRV

Fehlerbehebung: 6 häufige Fehler

1. "failed to bind network interface": Port bereits verwendet

Der Port 9987 wird von einem anderen Prozess verwendet.

# Den Prozess identifizieren, der den Port 9987 verwendet
netstat -ano | findstr :9987

# Den Namen des Prozesses anhand der PID finden
Get-Process -Id NUMMER_PID

Stoppen Sie den Konfliktprozess oder ändern Sie den TeamSpeak-Port in ts3server.ini :

default_voice_port=9988

2. Der Server startet nach dem Neustart nicht

Die geplante Aufgabe ist falsch konfiguriert. Überprüfen Sie :

# Überprüfen des Status der Aufgabe
Get-ScheduledTask -TaskName "TeamSpeak3-AutoStart" | Select-Object State, LastRunTime, LastTaskResult

# LastTaskResult = 0 → Erfolg | anderer Wert → Fehler
# Manuell neu starten, um zu testen
Start-ScheduledTask -TaskName "TeamSpeak3-AutoStart"

Häufige Ursache: Die PowerShell-Ausführungsrichtlinie blockiert das Skript. Überprüfen Sie mit Get-ExecutionPolicy und stellen Sie sicher, dass der Parameter -ExecutionPolicy Bypass in der Aktionsaufgabe enthalten ist.

3. Verbindung von außen nicht möglich

Zwei Firewalls zu überprüfen :

  1. Windows-Firewall : Überprüfen Sie, ob die in Schritt 4 erstellten Regeln aktiviert sind

    Get-NetFirewallRule | Where-Object { $_.DisplayName -like "TeamSpeak3*" } | Select-Object DisplayName, Enabled
    
  2. Netzwerkfirewall des Anbieters : Melden Sie sich in Ihrem Kundenbereich an und überprüfen Sie, ob die Ports 9987/UDP, 10011/TCP, 30033/TCP eingehend geöffnet sind.

4. "You are banned": IP fälschlicherweise gesperrt

Über ServerQuery (telnet auf Port 10011) :

login serveradmin IHR_PASSWORT
use sid=1
banlist
bandel banid=ID_DER_SPERRE

Wenn Ihre eigene IP gesperrt ist und Sie sich nicht mehr verbinden können, fügen Sie Ihre IP in query_ip_allowlist.txt hinzu und starten Sie den Server neu.

5. Verlust des Privilegien-Schlüssels

Wenn Sie das Admin-Token verloren haben, holen Sie es über ServerQuery zurück :

login serveradmin IHR_PASSWORT
use sid=1
tokenadd tokentype=0 tokenid1=6 tokenid2=0

Dies generiert ein neues Token für die Gruppe Server Admin (Gruppen-ID 6 standardmäßig).

6. Datenbank beschädigt

# 1. Server stoppen
Stop-Process -Name "ts3server" -Force

# 2. Beschädigte DB umbenennen
Rename-Item "C:\TeamSpeak3-Server\ts3server.sqlitedb" "ts3server.sqlitedb.beschädigt"

# 3. Aus dem letzten Backup wiederherstellen
$latestBackup = Get-ChildItem "C:\Backups\TeamSpeak3" -Directory | Sort-Object CreationTime -Descending | Select-Object -First 1
Copy-Item "$($latestBackup.FullName)\ts3server.sqlitedb" "C:\TeamSpeak3-Server\"

# 4. Neu starten
Start-Process -FilePath "C:\TeamSpeak3-Server\ts3server.exe" -WorkingDirectory "C:\TeamSpeak3-Server"

Wenn Sie kein Backup haben, erstellt der Server beim nächsten Start eine leere Datenbank: Sie verlieren die Kanäle, Gruppen und Benutzer, aber der Server wird wieder funktionsfähig.


FAQ

TeamSpeak 3 oder TeamSpeak 5 im Jahr 2026?

TeamSpeak 3 bleibt die empfohlene Wahl für einen selbstgehosteten Server im Jahr 2026. TS5 bietet eine modernere Benutzeroberfläche, aber das Berechtigungssystem und die Administrationswerkzeuge sind auf der Serverseite noch unvollständig. Für eine ernsthafte Gaming-Community bleiben Sie bei TS3: es ist stabil, leicht und das Ökosystem von Bots/Plugins ist ausgereift.

Wie viele gleichzeitige Benutzer auf einem VPS mit 4 GB RAM?

Ein VPS mit 4 GB RAM und 2 vCPU verwaltet bequem 100 gleichzeitige Benutzer mit TeamSpeak 3. Der TS3-Server verbraucht etwa 30-50 MB RAM für 50 aktive Benutzer. Die Bandbreite ist der tatsächliche limitierende Faktor: rechnen Sie mit ~10 Kbps pro Benutzer in Opus Voice, also ~1 Mbps für 100 Personen.

Ist TeamSpeak kostenlos für private Nutzung?

Ja. Die kostenlose Lizenz (Non-Profit License) deckt bis zu 32 gleichzeitige Benutzer und 1 virtuellen Server ohne Kosten ab. Für mehr Slots ist die Gamer License (bis zu 1024 Slots) auf Anfrage bei TeamSpeak erhältlich. Weitere Informationen finden Sie unter teamspeak.com/features/licensing.

Wie ändere ich den Standardport (9987)?

Ändern Sie ts3server.ini in C:\TeamSpeak3-Server\ :

default_voice_port=9988

Aktualisieren Sie dann die Firewall-Regel :

Remove-NetFirewallRule -DisplayName "TeamSpeak3 - Voice (UDP 9987)"
New-NetFirewallRule -DisplayName "TeamSpeak3 - Voice (UDP 9988)" -Direction Inbound -Protocol UDP -LocalPort 9988 -Action Allow

Und aktualisieren Sie Ihren SRV-DNS-Eintrag, falls Sie einen haben.

Kann man TeamSpeak und FiveM auf demselben VPS betreiben?

Ja, vorausgesetzt, Sie haben genügend Ressourcen. FiveM verbraucht viel mehr als TeamSpeak: rechnen Sie mindestens 8 GB RAM und 4 vCPU, um beide bequem zu betreiben. Die Ports überschneiden sich nicht (FiveM verwendet 30120, TeamSpeak 9987), sodass es keine Netzwerk-Konflikte gibt.

Wie migriere ich einen bestehenden TeamSpeak-Server zu einem neuen VPS?

  1. Sichern Sie die kritischen Dateien auf dem alten Server: ts3server.sqlitedb, licensekey.dat, ts3server.ini, query_ip_allowlist.txt

  2. Installieren Sie den TeamSpeak-Server auf dem neuen VPS (Schritte 1 bis 5 dieses Leitfadens)

  3. Stoppen Sie den neuen Server, bevor Sie die Dateien kopieren

  4. Kopieren Sie die gesicherten Dateien in C:\TeamSpeak3-Server\ auf den neuen VPS

  5. Starten Sie den Server neu: Alle Ihre Kanäle, Gruppen und Benutzer sind wiederhergestellt

  6. Aktualisieren Sie Ihren A-DNS-Eintrag, um auf die neue IP zu verweisen


Nützliche Quellen