TeamSpeak 3 Linux Server installieren

09.12.2021

TS 3 Server unter Linux installieren

In diesem HowTo wird erklärt wie man einen TeamSpeak 3 Server auf einem Linux Server installiert.

 

1.) Grundlagen / Vorbereitung der Installation

Benötigte Programme:

  • Putty (SSH Windows Client) auf dem Windows Rechner
  • Screen auf dem Linux Server

Teamspeak 3 Beta bringt keinen eigenen Daemon mit. Das heißt keinen Dienst bei dem der TS3 im Hintergrund laufen kann. Dies kann man aber mit Hilfe von Screen machen. Screen ist eine Art Fenstermanager für die SSH-Shell. Screen richtet sozusagen eine weitere im Hintergrund laufende Shell ein, eine sogenannte Screen Session. Und genau in dieser Session können wir jetzt den TS3 Server im Hintergrund laufen lassen.

Sollte Screen auf dem Linux Rechner nicht installiert sein:

  • bei Kubuntu, Ubuntu sowie Debian: apt-get install screen(ggf. noch die Anwendungen zum entpacken installieren:)

    apt-get install bzip2 apt-get install tar

  • bei Suse mittels yast im Menü Software

  • bei CentOS z.B.yum install screen

Zur Installation wird anfangs eine Verbindung über Putty herstellen und als root Benutzer einloggt

Hinweis: Es ist aus Sicherheitsgründen ratsam für TeamSpeak 3 (TS3) einen eigenen Nutzer zu erstellen und es nicht als Root laufen zu lassen. Hierfür gibt es verschiedene Möglichkeiten. Im Anschluß werden zwei einfache Methoden erklärt:

  • Mittels dem Programm yast (nur möglich wenn es sich um einen Suse Linux Server handelt)
  • Mittels des Linux Befehls useradd (auf jedem Linux Server möglich)

a.) TS3 User erstellen mittels yast

yast

yast starten, dann in dem Programm auf Security and Users dann auf “User Management” (Pfeiltaste nach unten, TAB-Taste, ENTER-Taste wird jeweils zur Navigation verwendet). Der Programmteil zur Useradministration startet und wir gehen auf “Add” um einen neuen User anzulegen. In der Aufgehenden Schablone wird folgendes ausgefüllt:

  • User’s Full Name: teamspeak3
  • Username: teamspeak3
  • Passwort: IHR-PASSWORT
  • Confirm Passwort: IHR-PASSWORT

Auf “Accept” gehen um User anzulegen und dann auf “Finish” gehen um den Vorgang abzuschließen. Der User teamspeak3 wird nun mit dem home-Verzeichnis /home/teamspeak3/ und User-Rechten auf Ihrem Webserver angelegt - abschließend wird auf “Quit” geklickt um yast wieder zu beenden.

b.) TS3 User erstellen mittels usradd

Neuen User anlegen.

mkdir /home/teamspeak3

useradd -g users teamspeak3 -d /home/teamspeak3/ -s /bin/bash

User ein Passwort vergeben:

passwd teamspeak3

(Passwort eingeben + ENTER)

Anschließend wird dem Benutzer “teamspeak3” das Homeverzeichniss vergeben

chown -R teamspeak3 /home/teamspeak3/

2.) Installation von TeamSpeak 3

Kurzfassung:

Als User teamspeak3 umloggen, ins Teamspeak Verzeichnis gehen, Downloaden, entpacken, in das neues Verzeichnis kopieren, Download Datei / Verzeichnis löschen, in teamspeak3 Verzeichnis gehen und der Serverdatei Ausführungsrechte vergeben

su teamspeak3 
cd /home/teamspeak3/ 
wget http://ftp.4players.de/pub/hosted/ts3/releases/beta-16/teamspeak3-server_linux-x86-3.0.0-beta16.tar.gz 
tar -xvzf teamspeak3-server_linux-x86-3.0.0-beta16.tar.gz 
cp -r teamspeak3-server_linux-x86/* teamspeak3/ 
rm teamspeak3-server_linux-x86-3.0.0-beta12.tar.gz 
rm -r teamspeak3-server_linux-x86 
cd teamspeak3 
chmod +x ts3server_linux_x86

Ausführliche Erklärung:

Vor der Installation des TS3 Server unter Linux müssen Sie wissen, ob Sie einen 32-bit oder einen 64-bit Server haben. Es spielt dabei keine Rolle, ob es sich um einen v-server oder einen root-server handelt. Eingeloggt wird mit dem eben angelegten User ein.

su teamspeak3 cd /home/teamspeak3/

Im Anschluss startet ihr den Download der TS3 Beta für Linux jeweils für euren Server

64-bit Download:

wget http://ftp.4players.de/pub/hosted/ts3/releases/beta-16/teamspeak3-server_linux-amd64-3.0.0-beta16.tar.gz

32-bit Download:

wget http://ftp.4players.de/pub/hosted/ts3/releases/beta-16/teamspeak3-server_linux-x86-3.0.0-beta16.tar.gz

Die Datei entpacken:

tar xfvz teamspeak3-server_linux-x86-3.0.0-beta16.tar.gz

Installationspakete löschen:

rm teamspeak3-server_linux-x86-3.0.0-beta12.tar.gz rm -r teamspeak3-server_linux-x86

Dem Serverprogramm Ausführungsrechte vergeben:

chmod +x ts3server_linux_x86

Nun erstellen wir alle Dateien (start,stop-scripte) die wir benötigen und vergeben ihnen Ausführungsrechte:

touch licensekey.dat 
touch ts3server.ini 
touch start.sh 
chmod 777 start.sh 
touch restart.sh 
chmod 777 restart.sh 
touch stop.sh 
chmod 777 stop.sh

Um nun Inhalte in die generierten Dateien zu bringen wird der Linux Editor vi benutzt. Gleich noch vorweg, vi ist ein sehr mächtiger Linux Editor und man sollte sich genau an die Anleitung halten, da man sonst womöglich die Datein nicht korrekt abspeichern kann oder sich im falschen Modus befindet. Kurzinfo zu vi:

  • i In Einfügen Modus wechseln
  • Mittels Rechtsklick ins putty Fenster jeweils die Inhalte der Zwischenablage einfügen
  • ESC hier im Beispiel, wechselt den Modus und schließt den Einfügen-Modus ab
  • :wq speichert die Eingabe und verlässt vi
  • :q! verlässt die vi ohne speichern

Im Folgenden werde ich beispielsweise in die datei ts3server.ini den richtigen Inhalt einfügen:

Datei öffnen mit dem Editor:

vi ts3server.ini

Einfügen Modus gehen:

i

Folgendes einfügen (xxx.xxx.xxx.xxx mit der IP des Servers ersetzen)

machine_id= default_voice_port=9987 voice_ip=xxx.xxx.xxx.xxx licensepath= filetransfer_port=30033 filetransfer_ip=xxx.xxx.xxx.xxx query_port=10011 query_ip=xxx.xxx.xxx.xxx dbplugin=ts3db_sqlite3 dbpluginparameter= dbsqlpath=sql/ dbsqlcreatepath=create_sqlite/ logpath=logs logquerycommands=1

Eingabe Modus Verlassen:

ESC

Eingabe Speichern und verlassen von vi:

:wq

Folgende Dateien müssen wie oben beschrieben genauso bearbeitet werden:

start.sh Code zum einfügen:

#!/bin/bash

cd /home/ts3/teamspeak3-server_linux-x86/

screen -A -m -d -S teamspeak3server /home/teamspeak3/teamspeak3-server_linux-x86/ts3server_linux_x86

restart.sh Code zum einfügen:

./stop.sh ./start.sh

stop.sh Code zum einfügen:

#!/bin/sh screen -S teamspeak3server -X quit

licensekey.dat Nun ist es von Vorteil sich gleich eine kostenlose License für Teamspeak3 zu besorgen. Hierfür auf Teamspeak3 regestrieren bei Non-Profit-License (dies wird benötigt um einfach virtuelle server zu erstellen mehr slots etc..). Per eamil bekommen wir anschließend eine licensekey.dat von diesem Anbieter. Diese datei mittels notepad unter Windows öffnen und den ganzen inhalt der Datei kopieren wir (STRG+A, STRG+C (also alles makieren und kopieren) Hier muss euer code eingefügt werden der in etwa so aussieht:

Company name : IHR NAME address : IHRE ADRESSE zipcode : IHRE PLZ city : IHRE STADT country : IHR LAND phone : IHRE TEL fax : sales contact: IHRE EMAIL tech contact : IHRE EMAIL

type : Nonprofit start date : Sun Jan 24 00:00:00 2010 end date : Mon Jan 24 00:00:00 2011 max. virtual servers: 10 max. slots : 512 description : TeamSpeak 3 Non-Profit License

==key== VFMzTGljZW5zZWcwZQIwMBNxaqEk+PGpm7v2Bl9Qdlu WQSDGIWV/rkgT9tK3o5LMdIBi5E2INiwcPc1QJzHcYAjEAkw 7Hw5XE55WAkn0p9VabDLfcxT0YEK7THyofUEvyATVjFhRbY WAWSFVOtLLXyRChwAcHW7qntpKO8x0IFxIO6tQ0LfQy3t7leT LxdIpFaf150ePbnxhSBSHYjkR0TmeyjgMHdTM0ZDJ3v3ui/6p39rfQ ai9vhEi1HbXMIwDmM1DuJu8SdNB5ORtBLnEnr+TPp2wGdLssYX zaJ5vJrWpnVxdMkpZNW3a7tOXjSh5U9aPBX+6IuxpV/PfCUWc8L pEbxXzSBDzWP6IZxYvoQSLHgXrIYM0ir3+jhzm+3Zw==

3.) Erster Serverstart

Teamspeak3 Server das erste mal noch ohne sh-script starten:

./teamspeak3-server_linux-x86 inifile=ts3server.ini

Wenn alles klappt bekommt man in etwa folgende Meldung:

------------------------------------------------------------------ I M P O R T A N T 
------------------------------------------------------------------ 
Server Query Admin Acccount created 
loginname= "serveradmin", password= "DIJIXOJD" 
------------------------------------------------------------------

2010-01-24 17:09:45.973516|INFO |Accounting |
| Licensing Information 2010-01-24 17:09:45.974506|INFO |Accounting | 
| type : Non-profit 2010-01-24 17:09:45.975533|INFO |Accounting |
| starting date : Sun Jan 24 00:00:00 2010 2010-01-24 17:09:45.976835|INFO |Accounting |
| ending date : Mon Jan 24 00:00:00 2011 2010-01-24 17:09:45.977750|INFO |Accounting |
| max virtualservers: 10 2010-01-24 17:09:45.978652|INFO |Accounting |
| max slots : 512 2010-01-24 17:09:46.005742|INFO |FileManager |
| listening on 89.214.64.125:30033 2010-01-24 17:09:46.335851|INFO |VirtualServer |1
| listening on 89.214.64.125:9987 2010-01-24 17:09:46.337530|INFO |VirtualServer | 1
| client 'server'(id:0) added token for servergroup 'Server Admin'(id:6) 
2010-01-24 17:09:46.338432|WARNING |VirtualServer | 1

| -------------------------------------------------------- 
2010-01-24 17:09:46.339306|WARNING |VirtualServer | 1

| ServerAdmin token created, please use the line below 2010-01-24 17:09:46.340439|WARNING |VirtualServer | 1
| token=xNLLCdhweuidhwehd239wehd8923hdio+WW++60ns9O+ 2010-01-24 17:09:46.341359|WARNING |VirtualServer | 1

| -------------------------------------------------------- 
2010-01-24 17:09:46.343208|INFO |Query | 

| listening on 85.214.64.124:10011 2010-01-24 17:09:46.445032|INFO |Query |
| whitelist ips: 127.0.0.1,

Jetzt kopieren wir wir genau diese Ausgabe, und speichern sie auf unserem PC ab (mit Linker Maustaste alles in Putty markieren = kopieren) Hier stehen wichtige Daten wie superadmin Login und das Token (wichtig!) welches für die Konfiguration später benötigt werden. Mit der Tastenkombination STRG-Z stoppen wir den Server vorerst einmal und starten den Server neu mit unserem Shell Script (Hintergrund: damit der Server in einer screen-session läuft)

./start.sh

Sollte alles funktioniert haben müsste nun euer Server auf Port 9987 erreichbar sein.

4.) TeamSpeak 3 Client Einstellungen

Ihr solltet Euch nun auf Eurem TS-Server unter dem Port 9987 mit dem Client Programm einloggen können Als Username und Passwort verwendet Ihr eure superadmin Daten von gerade eben. Als nächstes klickt auf “Extras” “Token benutzen” und gebt den Token ein. Nur so könnt ihr die Superadminrechte bekommen! Ohne dem Token geht es nicht.

5.) Sonstiges zu Teamspeak3

Kommandos können im Client nur über die Konsole (per STRG+Umschalt+V zu erreichen) verwendet werden. Welche es gibt erfahrt ihr hier mit dem Kommando help

Weitere Tipps zu screen: Wenn ihr wollt könnt ihr die Sessions jetzt anschauen die mit screen laufen.

screen -ls

Dieser Befehl beendet alle Screen Sessions

screen -X quit

Natürlich kann man screen's auch ganz schliessen / beenden wenn man sie nicht mehr braucht Gebt einfach im Entsprechenden screen Fenster

exit

ein, oder einfach STRG+D

Wenn man in Screen ist kann man die Screen durchblättern, das geht wieder mit eine Tastenkombination

Strg an = Nächstes Fenster (Session) Strg ab = Vorheriges Fenster (Session