Teamspeak2 Server auf Linux installieren!

  • Autor: Weishaar Michael
    Homepage: HowTo-DB.net



    Inhalt:


    Installation:
    -- 1.0 - System vorbereiten
    -- 1.1 - Dateien Downloaden/Installieren
    -- 1.2 - TeamSpeak starten


    Konfiguration:
    -- 1.3 - Das WebInterface
    -- 1.4 - Die server.ini
    -- 1.5 - Die server.log
    -- 1.6 - Die server.dbs
    -- 2.0 - Routerkonfiguration
    -- 3.0 - Backup erstellen
    -- 4.0 - Banner einbauen


    -- FAQ: (Häufig gestellte Fragen) Offizielle FAQ und/oder TeamSpeak-Einstieg
    (An diesem Punkt mal Danke an das komplette TSE-Team, vor allem an Ch'Ih-Yu , der sich die Mühe gemacht hat die Homepage inkl. dem FAQ-System aufzubauen!)
    -----------------------------------------------------


    ----------------------------------------------------------
    1.0 System vorbereiten
    ----------------------------------------------------------
    Wir öffnen die Konsole bzw. loggen uns per SSH ein.


    Wir werden root mit:


    Code
    1. su


    Zuerst erstellen wir einen neuen Benutzer, damit wir später TeamSpeak mit ihm ausführen können:


    Code
    1. useradd -m ts


    Nun haben wir einen neuen Benutzer erstellt.


    Der Benutzer benötigt nun nur noch ein Passwort, mit dem er sich per SSH einloggen kann:


    Code
    1. passwd ts


    Nun müssen wir das Passwort eingeben.
    Wir wechseln jetzt auf den Benutzer ts mit:


    Code
    1. su - ts


    ----------------------------------------------------------
    1.1 Dateien Downloaden/Installieren
    ----------------------------------------------------------
    So, nun gehts los. Wir laden uns TeamSpeak auf unseren Rechner:
    (Gentoo-User können auch einfach nur "emerge teamspeak2-server-bin" in die Konsole eingeben und dann gleich mit Punkt 1.2 fortfahren)


    Code
    1. wget ftp://ftp.freenet.de/pub/4players/teamspeak.org/releases/ts2_server_rc2_202319.tar.bz2


    (Aktuelle Links auf der offliziellen Homepage: http://www.goteamspeak.com) Je nach Anbindung des Rechners kann der Download eine gewisse Zeit dauern.
    Wir entpacken das Archiv mit:


    Code
    1. tar -jxvf ts2_server_rc2_202319.tar.bz2


    (Kleiner Tipp: Tab-Taste = Autovervollständigung)


    Je nach Rechenleistung kann dieser Vorgang einige Zeit in Anspruch nehmen.


    ----------------------------------------------------------
    1.2 TeamSpeak starten
    ----------------------------------------------------------
    Nun wechseln wir mit:


    Code
    1. cd tss2_rc2


    in unser soeben entpacktes Verzeichnis.
    Da bei TeamSpeak ein Startscript schon beiliegt genügt ein:


    Code
    1. ./teamspeak2-server_startscript start


    um den Server zu starten. Wenn ein:


    Code
    1. TeamSpeak Server Daemon started with PID ****


    erscheint, wurde er erfolgreich gestartet. Das Ganze können wir mit:


    Code
    1. ./teamspeak2-server_startscript status


    auch nochmal überprüfen. Weitere Commands:


    ? ./teamspeak2-server_startscript stop - Stoppt den Server


    ? ./teamspeak2-server_startscript restart - Startet den Server neu


    ? ./teamspeak2-server_startscript passwords - Gibt das Superadmin und Admin-Passwort aus - Wobei wir beim nächsten Punkt wären. Wir schreiben:


    Code
    1. ./teamspeak2-server_startscript passwords


    in die Konsole um das SuperAdmin-Passwort zu bekommen. (Dies ist kein Standardpasswort sondern ein generiertes, es muss also nicht geändert werden!)


    ----------------------------------------------------------
    1.3 Das WebInterface
    ----------------------------------------------------------
    Nun können wir uns am Browser mit



    ? http://ip.des.servers:14534



    bzw.



    ? http://localhost:14534



    ins WebInterface einloggen. Das Interface an sich ist selbsterklärend.


    Optional bietet sich auch das Webinterface von NevaKee.de an. http://www.nevakee.de/index.php?site=files&file=2


    Zurück zur Shell:
    Im TeamSpeak-Verzeichnis finden wir die server.ini, die mit:


    Code
    1. mcedit server.ini


    geöffnet werden kann.


    -------------------------------------------------------
    Sollte mcedit nicht funktionieren, muss der mc-editor erst Installiert werden:


    Debian: Einfach "apt-get install mc" eingeben.
    Gentoo: Einfach "emerge mc" eingeben.
    Suse: Einfach "yast2 -i mc" eingeben.


    -------------------------------------------------------


    ----------------------------------------------------------
    1.4 Die server.ini
    ----------------------------------------------------------
    [Main Config]
    BoundToIp1 - Werte 0.0.0.1 bis 255.255.255.255 - Standardwert: leer - Wenn der Server mehrere IP-Adressen "besitzt" kann TeamSpeak dort einer IP zugewiesen werden.
    ExternalIPDetection - Werte 0 oder 1 - Standardwert: 1 - Diese Funktion sollte auf 1 bleiben, da der TeamSpeak-Server sich dadurch selbst die auf den Server verweisende IP "besorgt".
    HTTPServer Port - Werte: 1 bis 65535 - Standardwert: 14534 - Dies ist der Port zum WebInterface von TeamSpeak.
    HTTPServer Enabled - Werte: 0 oder 1 - Standartwert: 1 - Diese Funktion bestimmt, ob das WebInterface an oder ausgeschaltet sein soll.
    DateTimeFormat - Werte: Beliebig vertauschbar - Standardwert: dd-mm-yyyy hh:nn:ss - Die Zeitangabe für TeamSpeak
    TCPQueryPort - Werte: 1 bis 65535 - Standardwert: 51234 - Legt den Port zum Zugriff auf den Server per Telnet fest (Fortgeschrittene).
    AllowedClientNameChars - Werte: A-Z + Sonderzeichen - Standardwert: leer - Die erlaubten Buchstaben/Zeichen im Nicknamen der Clients, die auf den Server Connecten (Sinnvoller ist die nächste Einstellung).
    DisAllowedClientNameChars - Werte: A-Z + Sonderzeichen - Standardwerte: ()[]{} - Die Buchstaben/Zeichen die nicht im Nicknamen der Clients vorkommen dürfen.


    [Debug]
    MessageTypes - Werte: ? - Standardwert: LMTALL Diese Einstellung am besten einfach so lassen
    MessageDepths - Werte: ? - Standardwert: LMDALL - Diese Einstellung am besten einfach so lassen


    [WebPost]
    Diese Einstellungen können komfortabel im WebInterface verwaltet werden (Global Settings).


    [Log]
    access_r - Werte 0 oder 1 Standardwert: 0 - Logt die Aktion Registriert (Wenn sich ein User Registriert/Den Server betritt)
    access_u - Werte 0 oder 1 Standardwert: 0 - Logt die Aktion Unregistriert (Wenn ein Unregistrierter User den Server betritt)
    channel_registered - Werte 0 oder 1 Standardwert: 0 - Logt die Aktion Registierte Channel (Wenn ein Channel Registriert/gelöscht wird)
    channel_unregistered - Werte 0 oder 1 Standardwert: 0 - Logt die Aktion Unregistrierte Channel (Wenn ein Unregistriert Channel erstellt wird)
    sa - Werte 0 oder 1 Standardwert: 0 - Logt die Aktion ServerAdmin (Wenn ein Server-Admin den Server betritt/jemand ServerAdmin bekommt/jemand ServerAdmin entzogen wird)
    chat - Werte 0 oder 1 Standardwert: 0 - Logt die Aktion Chat (Wenn sich User/Registrierte/Admins per Chat unterhalten)
    kick_server - Werte 0 oder 1 Standardwert: 0 - Logt die Aktion ServerKick (Wenn jemand vom Server gekickt wird)
    kick_channel - Werte 0 oder 1 Standardwert: 0 - Logt die Aktion ChannelKick (Wenn jemand aus einem Channel gekickt wird)


    [Spam]
    Diese Einstellungen können komfortabel im WebInterface verwaltet werden (Global Settings).



    ----------------------------------------------------------
    1.5 Die server.log
    ----------------------------------------------------------
    In ihr werden:



    ? Die Resultate von den Log-Einstellungen der server.ini gespeichert.
    ? Änderungen der Konfiguration gespeichert. (Starten des Servers/Starten eines Virtuellen Servers usw..)
    ? Eventuell auftretende Fehler gespeichert. (Nützlich hier im Forum!)


    ----------------------------------------------------------
    1.6 Die server.dbs
    ----------------------------------------------------------
    ? In der server.dbs werden alle Informationen über die Virtuellen Server gespeichert. (Unter anderem die Channels, Servernamen usw..)



    ----------------------------------------------------------
    2.0 Routerkonfiguration
    ----------------------------------------------------------
    Verwendet man im internen Netzwerk einen Router, so muss man Konfigurationseinstellungen am Router vornehmen, bevor andere User sich mit deinem TeamSpeak-Server ausserhalb des internen Netzwerks, also über das Internet verbinden können. Du selber musst dich mit der internen IP, also 192.168.x.x verbinden, wenn du den Server innerhalb deines Privaten Netzwerkes installierst.
    Da es unzählige Routermodelle gibt, ist es sehr schwer, das so einfach wie möglich zu erklären. Man muss selbst auch ein bisschen nachdenken.


    Normalerweise haben alle Router eine eigene "Homepage", in der verschiedene Einstellungen vorgenommen werden können.
    Also öffnen wie den Browser und geben


    Code
    1. http://192.168.0.1


    ein. Sollte ein Fenster mit einer Passwortabfrage erscheinen, ist der Benutzername normalerweise


    Code
    1. admin


    und das Passwort


    Code
    1. 1234


    Wenn du dir sicher bist, dass du Benutzername und Passwort richtig eingegeben hast, und trotzem der Zugriff verweigert wird => Handbuch des Routers lesen.
    Wenn das Fenster jedoch gar nicht erscheint, so kannst du es mit


    Code
    1. http://192.168.1.1


    probieren. Wenn das Fenster dann immer noch nicht erscheint => Handbuch des Routers lesen.


    Ich nehme an, dass wir uns jetzt auf der Startseite der "Routerhomepage" befinden. Bitte ändere dort keine Einstellungen wenn du nicht weißt, was es bedeutet.
    Wie schon gesagt, es gibt viele verschiedene Routermodelle, deshalb musst du jetzt selber die "Homepage" nach "Port-Forwarding", "Port-Freigabe", "Virtual-Servers", "Ports" oder ähnlichem durchsuchen.
    Dort sollten sich mindestens 2 Textfelder befinden:
    Das Textfeld, in das der benötigte Port eingegeben wird und das Textfeld, in das deine Lokale IP-Adresse eingegeben werden muss (192.168.x.x). TeamSpeak verwendet folgende Ports:


    - 8767 wäre der UDP-Standartport. (Nur dieser ist notwendig um sich mit dem Server von ausserhalb zu verbinden. Wenn ein neuer virtueller Server mit Port 8768 gestartet wird, so muss die Port-Freigabe auch für diesen konfiguriert werden)


    - 14534 wäre der TCP-WebInterfaceport. (Zur Administration)


    - 51234 wäre der TCP-Telnetport. (Fortgeschrittene)


    Nach der Eingabe der gewünschten Ports den Button "Save", "Commit" oder ähnliches betätigen, sonst werden die Einstellungen nicht gespeichert!


    ----------------------------------------------------------
    3.0 Backup erstellen
    ----------------------------------------------------------
    Manchmal ist es sinnvoll, zwischendurch ein Backup (Sicherung) vom TeamSpeak-Server vorzunehmen. Im Falle einer Übernahme des Servers oder durch Dummheit kann es schnell vorkommen, dass man mit leeren Händen da steht. Genau in dieser Sektion wollen wir das verhindern: (Es gibt auch andere Wege ein Backup von Dateien zu erstellen, jedoch sind das Scripte die mehr Linux-Kenntnisse erfordern. Als Anfänger kann man dadurch das System beschädigen. Deshalb machen wir das noch auf die "unmoderne" Tour.)


    Für uns ist also die server.dbs (in der die Informationen für alle Server, Channels usw. enthalten sind) und die server.ini (in der alle Informationen über die Einstellungen des TeamSpeak-Servers enthalten sind) wichtig.
    Da wir faul sind und keine Lust dazu haben die einzelnen Dateien auf einen anderen PC/Server zu kopieren, packen wir die zwei Dateien in ein .tar.gz-Archiv. Wir gehen also in unser TeamSpeak-Verzeichnis und geben folgendes ein:


    Code
    1. tar -cvzf backup.tar.gz server.dbs server.ini


    Und schon haben wir alle zwei Dateien im Archiv.
    Jetzt haben wir verschiedene Möglichkeiten das Archiv vom Server zu bekommen. Wir nehmen aber die Einfachste: WinSCP
    Das Programm ist eigendlich selbsterklärend. Wie auch mit dem SSH-Clienten einfach einloggen. Von dort aus kann man wie im Explorer die Datei einfach auf den Lokalen PC downloaden.


    Und schon sind wir fertig!


    Wenn wir das Backup wieder einspielen möchten, kopieren wir uns das Archiv mit WinSCP wieder vom PC auf den Server (ins TeamSpeak-Verzeichnis) und geben folgendes ein:


    Code
    1. tar -zxvf backup.tar.gz


    ----------------------------------------------------------
    4.0 Banner einbauen
    ----------------------------------------------------------
    Seit der Final von TeamSpeak 2 ist es möglich einen Banner in TeamSpeak einzubauen. Dieser platziert sich dann im Client dort, wo unter anderem die Channelinformationen angezeigt werden. Momentan ist es leider nur möglich einen Banner für den kompletten Server zu konfigurieren und nicht für die einzelnen virtuellen. Noch ein Haken: Wenn der Client seine Fenstergröße ändert, verzieht sich der Banner in selben Proportionen.


    WICHTIG: Der Banner muss im .jpg Format sein, sonst wird er nicht angezeigt!


    Wir müssen uns wie gewohnt mit dem SSH-Clienten einloggen, ins TeamSpeak-Verzeichnis wechseln und mit dem Befehl


    Code
    1. mcedit server.ini


    (oder anderen Editoren z.B. nano, pico, vi...) die Konfigurationsdatei von TeamSpeak öffnen.
    Dort finden wir den Eintrag


    Code
    1. ISPLinkURL=


    den wir wie folgt abändern


    Code
    1. ISPLinkURL=http://www.deinedomain.de/


    Durch diese Einstellung wird der Banner mit der angegebenen URL verlinkt. Der Client wird also auf deinedomain.de verwiesen, wenn er auf den Banner klickt. Möchte man das nicht, so lassen wir diese Einstellung einfach aus.


    Ganz unten in der server.ini geben wir nun folgendes ein:


    Code
    1. [ISP]
    2. GFX URL=http://www.deinedomain.de/images/banner.jpg


    Wie du siehst steht dort jetzt der absolute Pfad zum Banner.
    Wenn du den mceditor verwendet hast, mit "F10" wieder beenden (Aber abspeichern nicht vergessen).
    Das unsere soeben getätigten Einstellungen auch vom Server erkannt werden, müssen wir den TeamSpeak-Server mit


    Code
    1. ./teamspeak2-server_startscript restart


    kurz neustarten.


    (Der Banner wird in der imagecache.ini beim Clienten abgespeichert. Leider wird der Banner nicht aktualisiert, wenn du den Banner mal ändern solltest. Der Benutzer hat somit mit hoher Warscheinlichkeit den Banner bis er mal wieder formatiert. Durch löschen der imagecache.ini (die Datei ist hidden - C:\Dokumente und Einstellungen\DeinName\Anwendungsdaten\teamspeak2\ ) wird der Banner dann wieder aktualisiert.)