Installer un serveur Teamspeak 3 sous Linux

Nous allons voir dans ce billet comment installer un serveur Teamspeak 3 sous Linux.

Création d’un utilisateur ts3

Pour commencer, nous allons créer un utilisateur avec lequel nous allons exécuter le serveur teamspeak. Le but de cette opération est de mieux sécurisé votre serveur car si un bug permet à un pirate d’accéder à votre serveur, il ne pourra faire que des choses en tant qu’utilisateur ts3.

Se mettre en administrateur

Avant de poursuivre, nous allons nous mettre en utilisateur root pour pouvoir créer notre utilisateur.

sudo su

Note : si la commande ci-dessus ne fonctionne pas, mettez simplement la commande « su » pour devenir administrateur.

Création de l’utilisateur

Nous allons créer l’utilisateur et son dossier home dans lequel nous allons mettre toutes fichiers du serveur.

useradd ts3
mkdir /home/ts3
chown -R ts3: /home/ts3

Devenir l’utilisateur ts3

Maintenant que le dossier et l’utilisateur sont créé, il faut utiliser les commandes suivantes pour s’identifier en tant qu’utilisateur ts3 et se rendre dans le dossier /home/ts3.

su ts3
cd /home/ts3

Télécharger Teamspeak 3 Serveur

Maintenant, rendez-vous sur le site officiel de teamspeak section téléchargement pour télécharger la version serveur de l’application. Choisissez en fonction de l’architecture de votre serveur jusqu’à avoir le chemin de l’archive tar.gz. Pour télécharger sur votre serveur le programme, utilisez la commande wget.

wget http://ftp.4players.de/pub/hosted/ts3/releases/3.0.7/teamspeak3-server_linux-amd64-3.0.7.tar.gz

Décompresser l’archive

La décompression de l’archive se fait à l’aide de la commande ci-dessous qui va vous créer un dossier teamspeak3-server_linux-amd64.

tar -zxvf teamspeak3-server_linux-amd64-3.0.7.tar.gz

Premier démarrage

Lors du premier démarrage du serveur vous allez avoir un mot de passe qui va être généré. Pensez à noter ce mot de passe car sinon vous ne pourrez plus administré votre serveur.

cd teamspeak3-server_linux-amd64
sh ts3server_startscript.sh start
------------------------------------------------------------------
                      I M P O R T A N T                           
------------------------------------------------------------------
               Server Query Admin Account created                 
         loginname= "serveradmin", password= "xxxxxxxx"
------------------------------------------------------------------

------------------------------------------------------------------
                      I M P O R T A N T                           
------------------------------------------------------------------
      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=kicpXS5VGJe9xwgd4vZJHfCAV73dO3R5aqGoUlK1
------------------------------------------------------------------

Maintenant que vous avez démarré le serveur, vous pouvez utiliser le token qui est affiché pour devenir administrateur du serveur créé par défaut.

Lancer le serveur Teamspeak au démarrage du serveur

Le problème lorsque vous redémarrez votre serveur c’est qu’il faut que vous retapiez les commandes afin de relancer le serveur teamspeak. Nous allons donc voir comment rendre le lancement automatique et pour commencer, il faut être en utilisateur root.

sudo su

Création du script de démarrage

Maintenant on va créer un fichier dans lequel on va mettre un script.

nano /etc/init.d/teamspeak

Copiez-collez le texte ci-dessous dans le fichier. Pour coller du texte dans un terminal il faut faire CTRL + SHIFT + V ou faire un clique droit dans le terminal puis « coller ».

#! /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 Server"
NAME=ts3
USER=ts3
DIR=/home/ts3/teamspeak3-server_linux-amd64
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 ts3 ./ts3server_startscript.sh $1

Pour finir, nous allons changer les droits d’exécution du fichier et rendre le script actif au reboot du serveur.

chmod 755 /etc/init.d/teamspeak
update-rc.d teamspeak defaults

Comment démarrer/arrêter le daemon Teamspeak

Comme nous avons installé un script nous allons pouvoir l’utiliser lorsque vous souhaitez démarrer ou arrêter le daemon. Pour démarrer c’est la commande ci-dessous (en root).

/etc/init.d/teamspeak start

Et pour arrêter c’est la commande ci-dessous.

/etc/init.d/teamspeak stop

C’est fini pour aujourd’hui ! Nous verrons dans un prochain billet comment augmenter la capacité des slots de votre serveur et comment administrer via telnet votre serveur.

29 commentaires sur “Installer un serveur Teamspeak 3 sous Linux”

  1. Arf, il n’y a pas de version native de Teamspeak server pour les architectures arm, ou en tout cas je n’ai pas trouvé. Dommage pour ceux qui utilisent des Raspberry, Odroid etc.

  2. Vraiment pas mal, j ai eu quelque erreur mais bon un peut de logique et je les ai résolu. Courage pour debian SUDO ne fonctionne pas donc vaut mieu le remplacer par SU. Et Aller sur le site officiel pour telecharger TS3 server si vous avez des probleme d’extraction.

  3. Bonjour le tuto est très bien mais seulement il y a plusieurs chose que l’on peux modifier :

    – Pour devenir root il n’est pas nécessaire de faire sudo su mais sudo -i ou su –
    (il est important de ne pas oublier le signe – après le su)

    – Pour créer un compte il n’est pas nécessaire de faire useradd ts3 puis mkdir /home/ts3
    il suffit d’utiliser les options fourni avec useradd ce qui permet de tous faire en une seul fois. La commande devient donc :
    useradd ts3 -c « compte ts3 » -d /home/ts3 -m -s /bin/bash

    * L’option -c est un commentaire qui permet d’identifier le compte sur la fenêtre d’ouverture de session.

    * L’option -d permet de créer le répertoire home avec tous les sous répertoires et de mettre les droits.

    * L’option -m force la création du répertoire. Le répertoire est créer lors de l’exécution de la commande au lieux de le créer à la 1 ére connexion.

    * L’option -s permet d’affecter un shell au compte.

    – Pour la décompression de fichier avec la commande tar il n’est pas obligatoire de préciser le format de l’archive et on peux décompresser toute les archives avec la commande
    tar -xvf ou tar -xf si l’on ne souhaite pas voir la liste des fichiers.

  4. Bonjour, lors du démarrage du serveur, ce dernier ne démarre pas avec le message:
    root@raspberrypi://home/ts3/teamspeak3-server_linux-x86# ./ts3server_startscript.sh start
    Starting the TeamSpeak 3 server
    ./ts3server_linux_x86: 1: ./ts3server_linux_x86: Syntax error: word unexpected (expecting « ) »)
    TeamSpeak 3 server could not start

    Quelqu’un aurait-il une idée?
    Merci d’avance

  5. Ping : Linux | Pearltrees

  6. Salut a vous !
    j’ai completement oublié de noter le mot de passe generer au lancement du serveur …
    peut-on le recuperer ou recommencer ?
    merci 🙂

  7. salut a vous ! j’ai fail, je n’ai pas noté me mot de passe generer pour l’administartion …comment faire ? merci

  8. Ping : Linux | Pearltrees

  9. Ping : Linux | Pearltrees

  10. Bonjour,

    L’ensemble du tutoriel c’est bien passé pour moi mais j’ai un soucis, lorsque je tente de me connecter pour la première fois au serveur j’ai le message « Failed to connect to server ».
    J’ai reverifier quel était le port d’écoute avec la commande : netstat -paunt
    j’ai retiré toutes les règles avec : iptables -F
    Et rien à faire je n’arrive pas a me loguer.
    Quelqu’un aurait il une idée?

  11. Bonjour a tous, merci pour ce tuto! étant débutant sur linux je constat un petit problème, je résume :
    tout va bien jusqu’à :
    sh ts3server_startscript.sh start une fois cette commande rentrer j’ai plusieurs ligne qui s’affiche.

    ./ts3server_linux_amd64: 2: ./ts3server_linux_amd64: G▒: not found
    ./ts3server_linux_amd64: 3: ./ts3server_linux_amd64: G: not found
    ./ts3server_linux_amd64: 4: ./ts3server_linux_amd64: G▒: not found
    ./ts3server_linux_amd64: 5: ./ts3server_linux_amd64: ▒▒: not found
    ./ts3server_linux_amd64: 6: ./ts3server_linux_amd64: cannot open G▒: No such file
    ./ts3server_linux_amd64: 6: ./ts3server_linux_amd64: ▒▒5: not found
    ./ts3server_linux_amd64: 7: ./ts3server_linux_amd64: ▒*▒▒B▒▒▒]▒: not found
    ./ts3server_linux_amd64: 8: ./ts3server_linux_amd64: Syntax error: « ) » unexpected

    Que faire pour que le démarrage fonctionne ?
    Et encore désoler je débute sous linux 🙁

  12. Bonjour, j’ai suivis votre tuto à la lettre mais j’ai un problème avec cette commande:

    update-rc.d teamspeak defaults

    Message d’erreur:

    update-rc.d: warning: default stop runlevel arguments (0 1 6) do not match teamspeak Default-Stop values (S 0 1 6)

    Je ne comprends pas d’où vient le problème et comment y remédier. Du coup le script de démarrage ne fonctionne pas.

    Merci beaucoup.

  13. Bonjour, au moment de démarrer le deamon avec la commande : /etc/init.d/teamspeak start
    cette erreur s’affiche :
    (voir la dernière ligne).
    Pouvez vous m’aider ? Merci!

    root@vps71200:/home/ts3/teamspeak3-server_linux-amd64# cd /
    root@vps71200:/# chmod 755 /etc/init.d/teamspeak
    root@vps71200:/# update-rc.d teamspeak defaults
    update-rc.d: using dependency based boot sequencing
    update-rc.d: warning: default stop runlevel arguments (0 1 6) do not match teamspeak Default-Stop values (S 0 1 6)
    insserv: warning: current stop runlevel(s) (0 1 6) of script `teamspeak’ overrides LSB defaults (0 1 6 S).
    root@vps71200:/# /etc/init.d/teamspeak start
    /etc/init.d/teamspeak: 27: /etc/init.d/teamspeak: sudo: not found

  14. Le post est vieux, mais je mets une réponse pour d’autres qui viendront.
    Pour une MAJ de votre serveur TS3, vous devez dans un premier faire une sauvegarde du fichier ts3server.sqlitedb, c’est la base de données de votre serveur, ensuite, télécharger la dernière version serveur pour votre machine sur le site teamspeak,décompressez vers votre dossier du serveur TS, écrasez tout, à la fin, remplacez la base de données ts3server.sqlitedb par la votre, c’est à dire la sauvegarde du début.
    Votre serveur est à jour.

    Ensuite, pour supprimer votre serveur, le plus simple est d’effacer le dossier complet, par exemple, ouvrez un terminal et tapez la commande:

    mv NOM_DU_DOSSIER /dev/NULL

    Exemple, si votre serveur est installé dans /home/linux/teamspeak vous taperez « mv /home/linux/teamspeak /dev/NULL » qui supprimera le dossier « teamspeak ».

    Voilà tout.

  15. Bonsoir, au moment de la création du script de démarrage, après avoir installé nano, je fais la commande : nano /etc/init.d/teamspeak
    et ça bug :s Possibilité de vous contacter ?

    Cordialement,
    xilones

  16. Bonjour,

    Pour mettre à jour le serveur, tu dois juste copier les fichiers et la base de donnée du dossier de l’ancienne version vers la nouvelle.
    Et pour ta seconde question, tu n’as pas à lancer plusieurs instances de teamspeak à la manière de mumble. Le daemon teamspeak que tu lance sait gérer des serveurs virtuels que tu peux configurer via le port telnet du serveur. Sachant que la licence gratuite te donne 500 slots max et 10 serveurs max de mémoire.

    Bon courage 😉

  17. Très bon tuto, fonctionne très bien même avec les dernières versions TS3 et aussi la version x86.
    Par contre quelques questions :
    – Je n’ai pas très bien compris comment tu le mettais à jour ?
    – Penses-tu possible d’installer plusieurs server TS3 sur une même machine ? Si oui, comment ? Je suppose en jouant avec les ports mais je ne vois pas à quel moment le faire… Ou peut-être qu’une seule instance TS3 lancée permet de lancer plusieurs servers TS3… Bref, quelques questions qui m’intéressent.

    En tout cas merci 🙂

  18. Bonjour,

    nano est un éditeur de fichier en ligne de commande. Il vous suffit de faire apt-get install nano ou utiliser un autre éditeur comme « vi ».

    Bon courage 😉

  19. Jarrive pas a crée le script quand je tape sa :
    nano /etc/init.d/teamspeak

    il me dise : bash: nano: command not found

    HELP PLZ :DD

  20. Bonjour,

    Juste pour signaler qu’il faut modifier la ligne sudo du script, remplacer teamspeak par le user créé au debut,si on suit le tuto ts3, un pti coup de VI ou de nano et le tour est joué, sinon on a un message indiquant que le user « teamspeak » nexiste pas….

  21. Bonjour,

    Personnellement pour mettre à jour moi je télécharge la nouvelle archive, je stop le teamspeak et j’écrase les fichiers existant. C’est pas forcément la bonne solution mais jusqu’à maintenant ça fonctionne.
    Pour faire plus propre, il doit y avoir quelques fichiers et un dossier à copier dans le dossier de la nouvelle version je pense.

    N’hésitez pas à venir nous donner votre solution 😉

  22. Suggestion:

    Je suis un débutant dans ce domaine et comme je l ai précisé dans mon commentaire précédent, ce tuto est parfait mais par contre moi non. Effectivement je n ai pas sauvegardé mon mot de passe serveradmin et de ce fait je ne peux pas créer de server virtuel. De ce que j ai pu lire sur les forums, il est impossible de récuperer ce mot de passe. La seule solution semble etre la réinstalation de TS3.

    Ma question est la suivante: comment fait on pour désinstaller TS3 ?

    Merci par avance.

    JP

  23. Merci pour ton tuto. Ca a fonctionner sans problème. Vivement la suite 😉

  24. Bonjour,

    Superbe Tuto. je l ai installé en 3 minutes et sans aucun soucis alors que je n ai qu une faible connaissance de Linux.

    Un GRAND merci pour ce Tuto

    Bien @ Toi

    JP 😛

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.