TeamSpeak est un logiciel de chat vocal multiplateforme utilisé par les joueurs, les équipes et les écoles. Il est léger et rapide et vous offre plus de contrôle puisque vous pouvez l'héberger sur votre serveur. Il offre un moyen sûr et facile de se connecter avec des personnes à travers le monde. Il dispose d'une interface utilisateur entièrement personnalisable, prend en charge la messagerie directe, le transfert de fichiers illimité et permet une utilisation anonyme.
Ce didacticiel vous apprendra comment installer le serveur TeamSpeak sur un serveur basé sur Debian 11 et vous y connecter à l'aide d'un client Windows.
Prérequis
-
Un serveur basé sur Debian 11.
-
Un utilisateur non root avec des privilèges sudo.
-
Sudo le paquet est installé.
-
Tout est mis à jour.
$ sudo apt update && sudo apt upgrade
-
Peu de packages dont votre système a besoin.
$ sudo apt install nano ufw software-properties-common dirmngr apt-transport-https gnupg2 ca-certificates lsb-release debian-archive-keyring wget -y
Certains de ces packages sont peut-être déjà installés sur votre système.
Étape 1 - Configurer le pare-feu
La première étape consiste à configurer le pare-feu. Debian est livré avec ufw (pare-feu non compliqué).
Vérifiez si le pare-feu est en cours d'exécution.
$ sudo ufw status
Vous devriez obtenir le résultat suivant.
Status: inactive
Autorisez le port SSH afin que le pare-feu n'interrompe pas la connexion actuelle en l'activant.
$ sudo ufw allow OpenSSH
Ouvrez les ports suivants requis par TeamSpeak.
- 9987/udp pour la voix.
- 30033/tcp pour le transfert de fichiers.
- 10011/tcp pour Serverquery (brut).
- 10022/tcp pour Serverquery (SSH).
- 10080/tcp pour les requêtes Web (HTTP).
$ sudo ufw allow 9987/udp $ sudo ufw allow 30033/tcp $ sudo ufw allow 10011/tcp $ sudo ufw allow 10022/tcp $ sudo ufw allow 10080/tcp
Activer le pare-feu
$ sudo ufw enable Command may disrupt existing ssh connections. Proceed with operation (y|n)? y Firewall is active and enabled on system startup
Vérifiez à nouveau l'état du pare-feu.
$ sudo ufw status
Vous devriez voir une sortie similaire.
Status: active To Action From -- ------ ---- OpenSSH ALLOW Anywhere 9987/udp ALLOW Anywhere 30033/tcp ALLOW Anywhere 10011/tcp ALLOW Anywhere 10080/tcp ALLOW Anywhere 10022/tcp ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6) 9987/udp (v6) ALLOW Anywhere (v6) 30033/tcp (v6) ALLOW Anywhere (v6) 10011/tcp (v6) ALLOW Anywhere (v6) 10080/tcp (v6) ALLOW Anywhere (v6) 10022/tcp (v6) ALLOW Anywhere (v6)
Étape 2 - Télécharger TeamSpeak
Visitez la page de téléchargement de TeamSpeak et notez le dernier numéro de version. Au moment de ce tutoriel, la v3.13.6 est la dernière version du serveur TeamSpeak disponible.
Utilisez la commande suivante pour télécharger le serveur TeamSpeak.
$ TVERSION=3.13.6 $ wget https://files.teamspeak-services.com/releases/server/${TVERSION}/teamspeak3-server_linux_amd64-${TVERSION}.tar.bz2
Extrayez l'archive téléchargée.
$ tar -xf ./teamspeak3-server_linux_amd64-${TVERSION}.tar.bz2
Étape 3 - Créer un utilisateur et un répertoire TeamSpeak
La première étape de l'installation de TeamSpeak consiste à créer un utilisateur pour le serveur. L'utilisateur aura son répertoire personnel à /opt/teamspeak
et n'aura pas de mot de passe.
$ sudo adduser ts3 --home /opt/teamspeak --shell /bin/bash --disabled-password
Nous pouvons maintenant déplacer le répertoire extrait vers /opt/teamspeak
répertoire.
$ sudo mv teamspeak3-server_linux_amd64/* /opt/teamspeak/
Accordez les autorisations correctes au répertoire.
$ sudo chown -R ts3:ts3 /opt/teamspeak
Étape 4 - Exécuter le serveur TeamSpeak
L'étape suivante consiste à exécuter le serveur TeamSpeak pour créer une clé de privilège pour la première fois. Cette clé vous aidera à accéder au serveur en tant qu'administrateur.
Avant de démarrer le serveur, vous devez vous connecter en tant qu'utilisateur TeamSpeak. Exécutez la commande suivante pour vous connecter à votre shell en tant qu'utilisateur TeamSpeak.
$ sudo -u -i ts3
Pour cela, nous allons créer un fichier appelé .ts3server_license_accepted
dans le répertoire de travail de TeamSpeak.
$ touch .ts3server_license_accepted
Exécutez la commande suivante pour démarrer le serveur.
$ ./ts3server_startscript.sh start ------------------------------------------------------------------ I M P O R T A N T ------------------------------------------------------------------ Server Query Admin Account created loginname= "serveradmin", password= "BtXdJaCb" apikey= "BAD8rYVPM61p_-TdrsBqEL_8ZxKzEHIKOkUk6_e" ------------------------------------------------------------------ ------------------------------------------------------------------ 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=WIRagRYXkCnWqM5g7gBoSgcHHpfgLG9w17pcLORy ------------------------------------------------------------------
La première exécution du serveur créera un compte d'administrateur de requêtes de serveur. Notez son nom d'utilisateur et son mot de passe. Notez également la clé API et le jeton de privilège générés. Vous en aurez besoin dans les prochaines étapes.
Pour arrêter le serveur, appuyez sur Ctrl + C sur votre clavier.
Déconnectez-vous en tant qu'utilisateur TeamSpeak.
$ exit
Étape 5 - Création du démon de service TeamSpeak
Créez le fichier /lib/systemd/system/ts3server.service
et ouvrez-le pour le modifier.
$ sudo nano /lib/systemd/system/ts3server.service
Collez-y le code suivant.
[Unit] Description=TeamSpeak3 Server Wants=network-online.target After=syslog.target network.target local-fs.target [Service] WorkingDirectory=/opt/teamspeak User=ts3 Group=ts3 Type=forking ExecStart=/opt/teamspeak/ts3server_startscript.sh start license_accepted=1 ExecStop=/opt/teamspeak/ts3server_startscript.sh stop ExecReload=/opt/teamspeak/ts3server_startscript.sh restart Restart=always RestartSec=15 [Install] WantedBy=multi-user.target
Fermez le fichier en appuyant sur Ctrl + X et en saisissant Y lorsque vous y êtes invité.
Rechargez le démon de service.
$ sudo systemctl daemon-reload
Activez et démarrez le service TeamSpeak.
$ sudo systemctl enable ts3server --now
Vérifiez l'état du service.
$ sudo systemctl enable ts3server ? ts3server.service - TeamSpeak3 Server Loaded: loaded (/lib/systemd/system/ts3server.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2022-03-29 08:18:17 UTC; 2s ago Process: 23120 ExecStart=/opt/teamspeak/ts3server_startscript.sh start license_accepted=1 (code=exited, status=0/SUCCESS) Main PID: 23127 (ts3server) Tasks: 21 (limit: 2341) Memory: 17.3M CPU: 1.953s CGroup: /system.slice/ts3server.service ??23127 ./ts3server license_accepted=1 daemon=1 pid_file=ts3server.pid Mar 29 08:18:17 teamspeak systemd[1]: Starting TeamSpeak3 Server... Mar 29 08:18:17 teamspeak ts3server_startscript.sh[23120]: Starting the TeamSpeak 3 server Mar 29 08:18:17 teamspeak ts3server_startscript.sh[23120]: TeamSpeak 3 server started, for details please view the log file Mar 29 08:18:17 teamspeak systemd[1]: Started TeamSpeak3 Server.
Étape 6 - Se connecter à l'aide du client TeamSpeak
Téléchargez et installez le client Windows TeamSpeak 3 à partir du site officiel. Vous pouvez également télécharger la dernière version bêta (v5) du client, mais pour notre tutoriel, nous utiliserons l'ancienne et stable v3.
Lancez le client sur votre bureau et vous obtiendrez l'écran suivant après avoir parcouru l'invite de licence.
Cliquez sur Connexions et sélectionnez Se connecter option pour commencer. Entrez l'adresse IP de votre serveur, le mot de passe généré à l'étape 4 et un surnom pour vous-même.
Cliquez sur Se connecter bouton pour continuer. Il vous sera demandé d'entrer la clé de privilège dans l'invite suivante. Entrez le jeton de privilège de l'étape 4 et cliquez sur OK pour continuer.
Vous êtes maintenant connecté à votre serveur TeamSpeak et pouvez commencer à utiliser le client pour la communication.
Étape 7 - Modification du mot de passe d'accès
Vous pouvez remplacer le mot de passe de l'administrateur du serveur par un mot de passe plus fort de votre choix. Pour ce faire, arrêtez le service TeamSpeak.
$ sudo systemctl stop ts3server
Passez à l'utilisateur TeamSpeak.
$ sudo -i -u ts3
Démarrez le serveur TeamSpeak et ajoutez le serveradmin_password
paramètre dans votre commande.
$ ./ts3server_startscript.sh start serveradmin_password=password Starting the TeamSpeak 3 server TeamSpeak 3 server started, for details please view the log file
Remplacer password
avec un mot de passe fort de votre choix.
Arrêtez à nouveau le serveur.
$ ./ts3server_startscript.sh stop Stopping the TeamSpeak 3 server . done
Revenez à votre compte utilisateur.
$ exit
Redémarrez le service TeamSpeak.
$ sudo systemctl start ts3server
Étape 8 - Installer et configurer MySQL
TeamSpeak, par défaut, utilise la base de données SQLite pour stocker toutes les données de communication et d'utilisateur. Bien que cela convienne à une petite communauté, cela peut devenir un problème si vous utilisez TeamSpeak pour héberger plus d'utilisateurs. Heureusement, TeamSpeak peut être configuré pour utiliser une base de données MySQL ou PostgreSQL.
Nous allons le configurer pour l'utiliser avec le serveur MySQL.
Installez le serveur MariaDB, qui remplace MySQL puisque Debian n'est pas livré avec MySQL 8 par défaut.
$ sudo apt install mariadb-server -y
Le programme d'installation démarrera et activera le service Mariadb pour vous. Vous pouvez vérifier l'état du service.
$ sudo systemctl status mariadb
Exécutez le script de sécurité pour MariaDB. Utilisez les options ci-dessous.
$ sudo mysql_secure_installation Enter current password for root (enter for none): (Press Enter) Switch to unix_socket authentication [Y/n] Y Change the root password? [Y/n] n Remove anonymous users? [Y/n] Y Disallow root login remotely? [Y/n] Y Remove test database and access to it? [Y/n] Y Reload privilege tables now? [Y/n] Y
Connectez-vous au shell MySQL.
$ sudo mysql
Créer ts3user
utilisateur. Remplacez your_password
avec un mot de passe fort de votre choix.
mysql> CREATE USER 'ts3user'@'localhost' IDENTIFIED BY 'your_password';
Créer teamspeak3
base de données.
mysql> CREATE DATABASE teamspeak3;
Accordez les privilèges d'utilisateur sur le teamspeak3
base de données.
mysql> GRANT ALL PRIVILEGES ON teamspeak3.* TO 'ts3user'@'localhost';
Quittez le Shell.
mysql> exit
Passez à l'utilisateur TeamSpeak.
$ sudo -i -u ts3
La première étape pour configurer MariaDB pour qu'elle fonctionne avec TeamSpeak consiste à ajouter la bibliothèque MariaDB. Vous pouvez le trouver dans le /opt/teamspeak/redist
dossier.
Créez un lien symbolique pour la bibliothèque à partir du redist
dossier dans le répertoire de travail principal.
$ ln -s /opt/teamspeak-server/redist/libmariadb.so.2 /opt/teamspeak-server/libmariadb.so.2
Exécutez la commande suivante pour imprimer les bibliothèques partagées requises par TeamSpeak.
$ ldd /opt/teamspeak3-server/libts3db_mariadb.so
Créez le fichier de configuration pour stocker les paramètres de la base de données et ouvrez-le pour le modifier.
$ nano ts3db_mariadb.ini
Collez-y le code suivant.
[config] host=127.0.0.1 port=3306 username=ts3user password=your_password database=teamspeak3 socket=
Utilisez les informations d'identification de la base de données créées ci-dessus. Fermez le fichier en appuyant sur Ctrl + X et en saisissant Y lorsque vous y êtes invité.
Créez un fichier de configuration pour TeamSpeak et ouvrez-le pour le modifier.
$ nano ts3server.ini
Collez-y le code suivant.
machine_id= default_voice_port=9987 voice_ip=0.0.0.0 licensepath= filetransfer_port=30033 filetransfer_ip=0.0.0.0 query_port=10011 query_ip=0.0.0.0 query_ip_whitelist=query_ip_whitelist.txt query_ip_blacklist=query_ip_blacklist.txt dbsqlpath=sql/ dbplugin=ts3db_mariadb dbsqlcreatepath=create_mariadb/ dbpluginparameter=ts3db_mariadb.ini dbconnections=10 logpath=logs logquerycommands=0 dbclientkeepdays=30 logappend=0 query_skipbruteforcecheck=0
Fermez le fichier en appuyant sur Ctrl + X et en saisissant Y lorsque vous y êtes invité. Pour connaître ces paramètres de configuration, vous pouvez vous référer au fichier server_quickstart.md
disponible dans la doc
dossier. Le fichier ci-dessus configure TeamSpeak pour utiliser MariaDB au lieu de la base de données SQLite.
Quittez le shell TeamSpeak.
$ exit
Nous devons dire au serveur TeamSpeak d'utiliser le fichier de configuration nouvellement créé. Arrêtez et désactivez le service TeamSpeak.
$ sudo systemctl stop ts3server && sudo systemctl disable ts3server
Ouvrez le fichier de service.
$ sudo nano /lib/systemd/system/ts3server.service
Trouvez la ligne ExecStart=/opt/teamspeak/ts3server_startscript.sh start license_accepted=1
et modifiez-le en ajoutant les détails du fichier de configuration comme indiqué ci-dessous.
.... Type=forking ExecStart=/opt/teamspeak/ts3server_startscript.sh start license_accepted=1 inifile=ts3server.ini ....
Fermez le fichier en appuyant sur Ctrl + X et en saisissant Y lorsque vous y êtes invité.
Rechargez le démon de service pour appliquer les modifications.
$ sudo systemctl daemon-reload
Activez et démarrez le service TeamSpeak.
$ sudo systemctl enable ts3server --now
Vérifiez l'état du serveur.
$ sudo systemctl status ts3server ? ts3server.service - TeamSpeak3 Server Loaded: loaded (/lib/systemd/system/ts3server.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2022-03-29 12:21:22 UTC; 6s ago Process: 26511 ExecStart=/opt/teamspeak/ts3server_startscript.sh start license_accepted=1 inifile=ts3server.ini (code=exited, status=0/SUCCESS) Main PID: 26518 (ts3server) Tasks: 21 (limit: 2341) Memory: 16.0M CPU: 1.818s CGroup: /system.slice/ts3server.service ??26518 ./ts3server license_accepted=1 inifile=ts3server.ini daemon=1 pid_file=ts3server.pid Mar 29 12:21:23 teamspeak ts3server_startscript.sh[26518]: apikey= "BAA_lDBRBQxy2nPJXwPQvTRk9_sX3o403Ktlbjz" Mar 29 12:21:23 teamspeak ts3server_startscript.sh[26518]: ------------------------------------------------------------------ Mar 29 12:21:24 teamspeak ts3server_startscript.sh[26518]: ------------------------------------------------------------------ Mar 29 12:21:24 teamspeak ts3server_startscript.sh[26518]: I M P O R T A N T Mar 29 12:21:24 teamspeak ts3server_startscript.sh[26518]: ------------------------------------------------------------------ Mar 29 12:21:24 teamspeak ts3server_startscript.sh[26518]: ServerAdmin privilege key created, please use it to gain Mar 29 12:21:24 teamspeak ts3server_startscript.sh[26518]: serveradmin rights for your virtualserver. please Mar 29 12:21:24 teamspeak ts3server_startscript.sh[26518]: also check the doc/privilegekey_guide.txt for details. Mar 29 12:21:24 teamspeak ts3server_startscript.sh[26518]: token=kuFsCpz8G7204KiYgQJR8X8orHR+C8OrSv21MZRw Mar 29 12:21:24 teamspeak ts3server_startscript.sh[26518]: ------------------------------------------------------------------
Cela recréera la clé de privilège. La prochaine fois que vous vous connecterez à votre serveur, il vous sera demandé. Votre mot de passe d'administration du serveur restera cependant le même.
Étape 9 - Mise à niveau de TeamSpeak
La première étape de la mise à niveau du serveur TeamSpeak consiste à arrêter le serveur.
$ sudo systemctl stop ts3server
Téléchargez la dernière version depuis le site officiel et extrayez l'archive dans /opt/teamspeak
répertoire en écrasant les fichiers d'origine en suivant les étapes 2 et 3 du didacticiel. Assurez-vous de modifier l'autorisation du dossier extrait.
Une fois que vous avez terminé, redémarrez le serveur.
$ sudo systemctl start ts3server
Conclusion
Ceci conclut notre tutoriel sur l'installation et l'utilisation de TeamSpeak Server sur un serveur basé sur Debian 11. Si vous avez des questions, postez-les dans les commentaires ci-dessous.