Avec l’avènement du jeu en ligne, la communication vocale est devenue un élément incontournable pour les teams, les guildes ou les escouades. Pour répondre à ce besoin, plusieurs solutions existent et nous nous intéresserons dans ce tutoriel à l’une des plus répandues : Teamspeak 3.
Vous pouvez installer un serveur de plusieurs façons. Si vous avez une grosse connexion internet (ADSL pour quelques utilisateurs, Fibre pour les grosses Team / Guildes), vous pouvez par exemple l’héberger directement sur votre machine. L’inconvénient est que votre PC doit être allumé en permanence et ce n’est pas toujours possible !
La solution que je vous propose est réalisable dans le cas où vous disposez d’un serveur dédié ou d’un VPS (Virtual Private Server), chez Ikoula par exemple où a été réalisé le test d’installation sur VPS, qui lui dispose d’une grosse bande passante et sera allumé 24/24 avec une disponibilité de 99,9% dans un datacenter. Vous pouvez également utiliser un PC chez vous qui serait dédié à cet usage, c’est à vous de voir.
1. PRE-REQUIS :
Avant de démarrer, vous avez besoin de :
Un serveur installé sous Linux (32 ou 64 bits) avec MySQL ou MariaDB installé et un compte SQL « teamspeak » disposant de tous les droits sur une base de données (nommée au hasard « teamspeak » pour plus de clarté). Ce tutoriel est basé sur une distribution Linux Ubuntu 64bits avec MariaDB.
2. CREATION DE L’UTILISATEUR DEDIE AU DAEMON :
sudo adduser --system --home /home/teamspeak --gecos "Exe TS3 Server" --group teamspeak
sudo passwd teamspeak
Et lui attribuer un mot de passe de votre choix
3. PREPARATION DES FICHIERS DU SERVEUR :
Téléchargement de l’archive de la dernière version de serveur disponible (adapter à votre architecture) :
cd /home/teamspeak
sudo wget http://ftp.4players.de/pub/hosted/ts3/releases/3.0.11/teamspeak3-server_linux-amd64-3.0.11.tar.gz
Ici, vous devez adapter la version de serveur à votre architecture ET à votre installation. Prendre la version 3.0.10 si vous avez MySQL et 3.0.11 si vous avez MariaDB.
Décompression de l’archive :
sudo tar -zxf teamspeak3-server_linux-amd64-3.0.11.tar.gz
sudo mv teamspeak3-server_linux-amd64 teamspeak3
sudo chown -R teamspeak:teamspeak teamspeak3
Création du fichier de configuration du serveur :
sudo vi /home/teamspeak/teamspeak3/ts3server.ini
Et y insérer pour MariaDB :
machine_id=
default_voice_port=9987
voice_ip=0.0.0.0
licensepath=
filetransfert_port=30033
filetransfer_ip=0.0.0.0
query_port=10011
query_ip=0.0.0.0
dbplugin=ts3db_mariadb
dbpluginparameter=ts3db_mariadb.ini
dbsqlpath=sql/
dbsqlcreatepath=create_mariadb/
logpath=logs
logquerycommands=0
pour MySQL :
machine_id=
default_voice_port=9987
voice_ip=0.0.0.0
licensepath=
filetransfert_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=0
Création du fichier de connexion du serveur à la base de données :
sudo vi /home/teamspeak/teamspeak3/ts3db_mariadb.ini
ou
sudo vi /home/teamspeak/teamspeak3/ts3db_mysql.ini
Et y insérer :
[config]
host=127.0.0.1
port=3306
username=teamspeak
password=VOTRE_MOT_DE_PASSE
database=teamspeak
socket=
Pour MariaDB :
Vérifiez si libmariadb.so est bien présent :
cd /home/teamspeak/teamspeak3
ldd libts3db_mariadb.so
linux-vdso.so.1 (0x00007fff43fff000)
libmariadb.so.2 => not found
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f211d5dd000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f211d234000)
/lib64/ld-linux-x86-64.so.2 (0x00007f211dbe0000)
Si il vous indique également “not found” :
sudo wget http://ftp.de.debian.org/debian/pool/main/m/mariadb-client-lgpl/libmariadb2_2.0.0-1_amd64.deb
sudo dpkg -i libmariadb2_2.0.0-1_amd64.deb
Pour MySQL :
Vérifiez si libmysql.so est bien présent :
cd /home/teamspeak/teamspeak3
ldd libts3db_mysql.so
linux-vdso.so.1 (0x00007fff43fff000)
libmysqlclient.so.15 => not found
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f211d5dd000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f211d234000)
/lib64/ld-linux-x86-64.so.2 (0x00007f211dbe0000)
Si il vous indique également “not found”, sachez qu’il est difficile de trouver le fichier en question. Il est disponible sur mon serveur :
sudo wget http://www.geek-chronicles.com/ressources/libmysqlclient15off_5.0.96-0ubuntu3_amd64.deb
sudo dpkg -i libmysqlclient15off_5.0.96-0ubuntu3_amd64.deb
4. SCRIPT DE DEMARRAGE AUTOMATIQUE DU SERVEUR :
Création du fichier de configuration :
sudo vi /etc/init.d/teamspeak
Et y insérer :
#! /bin/sh
### BEGIN INIT INFO
# Provides: teamspeak
# Required-Start: networking
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: S 0 1 6
# Short-Description: TeamSpeak Server Daemon
# Description: Starts/Stops/Restarts the TeamSpeak Server Daemon
### END INIT INFO
set -e
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC="TeamSpeak 3 Server"
NAME=teamspeak
USER=teamspeak
DIR=/home/teamspeak/teamspeak3
DAEMON=$DIR/ts3server_startscript.sh
#PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
# Gracefully exit if the package has been removed.
test -x $DAEMON || exit 0
cd $DIR
sudo -u teamspeak ./ts3server_startscript.sh $1 inifile=ts3server.ini
Attribution des droits corrects d’exécution :
sudo chown teamspeak:teamspeak /etc/init.d/teamspeak
sudo chmod 755 /etc/init.d/teamspeak
sudo update-rc.d teamspeak defaults
5. DEMARRAGE DU SERVEUR :
Le serveur est prêt à démarrer :
Service teamspeak start
Pensez à noter les identifiants du compte d’administration du serveur et le token qui vous sera nécessaire pour obtenir les privileges administrateur :
Il ne vous reste plus qu’à vous connecter au serveur Teamspeak en entrant l’IP de votre serveur et le port que vous avez configuré (par défaut 9987) : ip.de.votre.serveur:port
Ensuite, dans Permissions > Use Privilege Key, il vous suffit d’entrer la clé « ServerAdmin » fournie par le serveur lors de son premier démarrage.
Le « Server Query Admin Account » vous sera utile pour administrer votre serveur Teamspeak 3 en ligne de commande ou via un utilitaire dédié tel que Yatqa (http://addons.teamspeak.com/directory/addon/administration/YaTQA-Query-Admin-Tool-(German).html).