Aller au contenu | Aller au menu | Aller à la recherche

Site membre du réseau Izardev et LCNET

Installer un serveur Teamspeak 3 sous Linux (squeeze)

Teamspeak est une application client/serveur très performante permettant d'effectuer des radio-conférences. Il est particulièrement utilisé par la communauté de joueurs en ligne (notamment de MMORPG comme World of Warcraft)

Téléchargement et installation de TS3

Tout d'abord, téléchargez teamspeak :

cd /usr/src
wget http://teamspeak.gameserver.gamed.de/ts3/releases/rc1/teamspeak3-server_linux-amd64-3.0.0-rc1.tar.gz #selon version en vigueur
tar -xvzf teamspeak3-server_linux-amd64-3.0.0-rc1.tar.gz
mv /usr/src/teamspeak3-server_linux-amd64 /usr/local/teamspeak

Une fois téléchargé teamspeak, décompressé et placé dans son répertoire d'installation, vous pouvez d'ores est déjà le lancer :

sh ts3server_startscript.sh start

Vous ne pouvez pas le lancer en étant root, utilisez donc un autre utilisateur, si vous n'avez pas besoin de plus de fonctionnalités, vous pouvez vous arreter là.

Configuration du pare-feu

Si vous utilisez un firewall pensez bien à ouvrir les ports suivants :

  • 9987 en UDP pour la connexion au serveur (port par défaut)
  • 10011 en TCP pour le ServerQuery (optionnel)
  • 30033 en TCP pour le FileTransfert (optionnel mais recommandé)

Pensez à ouvrir les ports de connexion au serveur en UDP en fonction des ports que vous leur affecterez

Licence non-commerciale Teamspeak

Bien que Teamspeak 3 soit installé, il l'est avec un minimum d'options, vous pouvez obtenir une licence non-commerciale si toutefois le but n'est pas lucratif, en vous rendant sur cette page.

Une fois que vous aurez rempli toutes les formalités administratives, vous pourrez poursuivre l'installation.

Copiez tout d'abord le fichier licencekey.dat à la racine d'installation de TS3 : /usr/local/teamspeak dans notre cas.

Base de données teamspeak

Créez une base de données pour teamspeak : ts3 avec comme utilisateur/mot de passe : ts3/ts3 :

# mysql -u root -pXXXXX
mysql > CREATE DATABASE ts3;
mysql > GRANT ALL on ts3.* to ts3@localhost IDENTIFIED BY 'ts3';

Configuration de la base de données

Créez un fichier ts3db_mysql.ini sur la racine d'installation et ajoutez y ce contenu :

[config]
host=localhost
port=3306
username=ts3
password=ts3
database=ts3
socket=

Fichier /usr/local/teamspeak/ts3db_mysql.ini

Configuration teamspeak

Créez maintenant un fichier de configuration ts3server.ini à la racine de l'installation :

machine_id=
default_voice_port=9987
voice_ip=0.0.0.0
liscensepath=
filetransfer_port=30033
filetransfer_ip=0.0.0.0
query_port=10011
query_ip=0.0.0.0
dbplugin=ts3db_mysql
dbpluginparameter=ts3db_mysql.ini
dbsqlpath=sql/
dbsqlcreatepath=create_mysql/
logpath=logs
logquerycommands=1

Fichier /usr/local/teamspeak/ts3server.ini

Bibliothèque MySQL libmysql.so.15 (facultatif)

Personnellement sous squeeze, j'ai eu un souci de driver de client MySQL : c'est dû au fait que TS3 requiert un driver plus ancien : libmysql.so.15 (et que libmysql.so.16 est installé par défaut sous squeeze avec apt-get).

Afin de vérifier si cette section vous concerne, faites :

# ldd libts3db_mysql.so
        linux-vdso.so.1 =>  (0x00007fffbe78c000)
        libmysqlclient.so.15 => /usr/lib/libmysqlclient.so.15 (0x00007f7a80750000)
        libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f7a8043c000)
        libm.so.6 => /lib/libm.so.6 (0x00007f7a801b9000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00007f7a7ffa3000)
        libc.so.6 => /lib/libc.so.6 (0x00007f7a7fc42000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x00007f7a7fa25000)
        libcrypt.so.1 => /lib/libcrypt.so.1 (0x00007f7a7f7ee000)
        libnsl.so.1 => /lib/libnsl.so.1 (0x00007f7a7f5d6000)
        libz.so.1 => /usr/lib/libz.so.1 (0x00007f7a7f3be000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f7a80d69000)

Si en face de la valeur libmysqlclient.so.15 vous obtenez "not defined", vous allez devoir installer cette librairie et obtiendrez cette erreur au démarrage :

unable to load database plugin library "libts3db_mysql.so"

sinon, ne faites rien :

Vous trouverez votre bonheur sur cette page : http://ftp.fr.debian.org/debian/pool/main/m/mysql-dfsg-5.0/

wget http://ftp.nl.debian.org/debian/pool/main/m/mysql-dfsg-5.0/libmysqlclient15off_5.0.51a-24%2Blenny5_amd64.deb
dpkg -i libmysqlclient15off_5.0.51a-24+lenny5_amd64.deb

Créer un utilisateur qui va lancer Teamspeak

On ne peut lancer teamspeak 3 en root, créez un utilisateur et confiez lui le dossier d'installation :

adduser teamspeak
# ...
chown -R teamspeak:users /usr/local/teamspeak/

Script de démarrage de teamspeak

Créez le fichier /etc/init.d/teamspeak :

#!/bin/bash

TS_DIR="/usr/local/teamspeak"
TS_USER="teamspeak"
RUN_SCRIPT="ts3server_minimal_runscript.sh"
INI_FILE="ts3server.ini"

start_ts() {
echo "Lancement du server TeamSpeak"
su $TS_USER $TS_DIR/$RUN_SCRIPT init=$TS_DIR/$INI_FILE > /dev/null &
}

stop_ts() {
echo "Arrêt du serveur TeamSpeak"
skill -KILL -u $TS_USER > /dev/null
}

case "$1" in
start)
start_ts
;;
stop)
stop_ts
;;
restart)
stop_ts
sleep 2
start_ts
;;
*)
echo "Usage du script : $0 {start|stop|restart}"
;;
esac

Vous pouvez maintenant démarrer votre serveur teamspeak de la manière suivante :

/etc/init.d/teamspeak start

Interface de gestion web

Il existe une interface de gestion de Teamspeak téléchargeable ici. On la télécharge, la décompresse et la place dans le répertoire de nos sites web :

cd /usr/src
wget -O ts3wi.rar "http://addons.teamspeak.com/index.php?option=com_mtree&task=att_download&link_id=53&cf_id=24"
unrar ts3wi.rar
mv ts3wi /var/www/
chown -R www-data:www-data /var/www/ts3wi #on donne les droits à l'utilisateur d'apache

Vous pouvez maintenant y accéder via le web, regardez du côté de config.php pour configurer l'appli web.

Conclusion

Vous disposez maintenant d'un serveur vocal puissant :)

Partagez cet article !

  • Delicious
  • Stumbleupon
  • Digg
  • Facebook
  • Google
  • Linkedin
  • Yahoo Buzz
  • Twitter
Vous avez apprécié cet article ?

Commentaires S'abonner au flux RSS des commentaires

  1. Jagwar77 | Bibliothèque MySQL libmysql.so.15 |
    Nouveau lien pour télécharger le package :

    wget http://..._amd64.deb

    Voili, voilou si ça peut aider quelqu'un :)
  2. Razor | aucun fichier ou dossier de ce type |
    <bonjour, super tuto mais voici ce que je rencontre comme erreur :

    teamspeak@ks365507:~$ sh ts3server_startscript.sh start
    sh: ts3server_startscript.sh: Aucun fichier ou dossier de ce typ


    et quand je tape /etc/init.d/teamspeak même en root il me dit permission non accordée.
  3. Super tutoriel, merci!

    C'était presque trop simple à installer du coup.
  4. Merci beaucoup pour ce tuto. J'ai déjà effectué une installe de teamspeak3 mais j'ai perdu mon token et ne suis donc plus admin... de plus je me suis dis il dois être dans la base mysql mais quand je lance mon serveur il me dis driver SQLite3 donc je trouve ça bizarre pourtant je lui indique bien init=monfichier.ini ??
    Avez vous une idée pour flusher l’installe pour recommencer une propre.
  5. Alembra | Au sujet du script de démarrage de Teamspeak |
    Dans ton script de démarrage automatique, à la ligne 10 (su $TS_USER $TS_DIR/$RUN_SCRIPT init=$TS_DIR/$INI_FILE > /dev/null & ) tu utilises l'option "init=" pour spécifier le fichier ts3server.ini à utiliser.

    Sur la version Teamspeak 3 version 3.0.1, cette option a été déprécié au profit de l'option : "inifile=".

    Pensez alors à changer votre script pour que celà fonctionne.
  6. Bravo pour ce tutoriel complet, je n'en ai certes pas besoin (tout ce que tu a cité étant déjà fait :p) mais cela peut aider bon nombre de personnes.
  7. Merci pour cet article très documenté.
    J'ai rencontré un seul souci, en faisant un copier coller du ts3server.ini ...
    le copier coller comportait des espaces en trop à la fin de chaque ligne mais sinon nickel :)
  8. Christophe | libmysql.so.15 VS libmysql.so.16 |
    Merci pour l'article j'avais jamais réussi à installer ts3 / squeeze sans downgrader MySQL !

Ajouter un commentaire

Les commentaires sont tous validés par un modérateur, votre commentaire n'apparaît pas directement sur le site.
Aucun support n'est assuré ici, vous pouvez néanmoins laisser vos remarques et critiques sur l'article, les points de vue pertinents sont toujours les bienvenus.