TeamSpeak es un software de chat de voz multiplataforma utilizado por jugadores, equipos y escuelas. Es liviano y rápido y le ofrece más control ya que puede alojarlo en su servidor. Ofrece una manera segura y fácil de conectarse con personas de todo el mundo. Tiene una interfaz de usuario totalmente personalizable, admite mensajería directa, transferencia ilimitada de archivos y permite el uso anónimo.
Este tutorial le enseñará cómo instalar el servidor TeamSpeak en un servidor basado en Debian 11 y conectarse a él mediante un cliente de Windows.
Requisitos
-
Un servidor basado en Debian 11.
-
Un usuario no root con privilegios sudo.
-
Sudo el paquete está instalado.
-
Todo está actualizado.
$ sudo apt update && sudo apt upgrade
-
Pocos paquetes que tu sistema necesita.
$ sudo apt install nano ufw software-properties-common dirmngr apt-transport-https gnupg2 ca-certificates lsb-release debian-archive-keyring wget -y
Es posible que algunos de estos paquetes ya estén instalados en su sistema.
Paso 1:configurar el cortafuegos
El primer paso es configurar el cortafuegos. Debian viene con ufw (cortafuegos sin complicaciones).
Compruebe si el cortafuegos se está ejecutando.
$ sudo ufw status
Deberías obtener el siguiente resultado.
Status: inactive
Permita el puerto SSH para que el cortafuegos no interrumpa la conexión actual al habilitarlo.
$ sudo ufw allow OpenSSH
Abra los siguientes puertos requeridos por TeamSpeak.
- 9987/udp para Voz.
- 30033/tcp para transferencia de archivos.
- 10011/tcp para Serverquery (sin formato).
- 10022/tcp para consulta del servidor (SSH).
- 10080/tcp para consulta 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
Habilitar el cortafuegos
$ sudo ufw enable Command may disrupt existing ssh connections. Proceed with operation (y|n)? y Firewall is active and enabled on system startup
Vuelva a comprobar el estado del cortafuegos.
$ sudo ufw status
Debería ver un resultado similar.
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)
Paso 2:descarga TeamSpeak
Visite la página de descarga de TeamSpeak y observe el último número de versión. En el momento de este tutorial, v3.13.6 es la última versión disponible del servidor TeamSpeak.
Use el siguiente comando para descargar el servidor TeamSpeak.
$ TVERSION=3.13.6 $ wget https://files.teamspeak-services.com/releases/server/${TVERSION}/teamspeak3-server_linux_amd64-${TVERSION}.tar.bz2
Extraiga el archivo descargado.
$ tar -xf ./teamspeak3-server_linux_amd64-${TVERSION}.tar.bz2
Paso 3:crear usuario y directorio de TeamSpeak
El primer paso para instalar TeamSpeak es crear un usuario para el servidor. El usuario tendrá su directorio de inicio en /opt/teamspeak
y no tendrá una contraseña.
$ sudo adduser ts3 --home /opt/teamspeak --shell /bin/bash --disabled-password
Ahora podemos mover el directorio extraído a /opt/teamspeak
directorio.
$ sudo mv teamspeak3-server_linux_amd64/* /opt/teamspeak/
Otorgue los permisos correctos al directorio.
$ sudo chown -R ts3:ts3 /opt/teamspeak
Paso 4:ejecutar el servidor TeamSpeak
El siguiente paso es ejecutar el servidor TeamSpeak para crear una clave de privilegio por primera vez. Esta clave lo ayudará a obtener acceso al servidor como administrador.
Antes de iniciar el servidor, debe iniciar sesión como usuario de TeamSpeak. Ejecute el siguiente comando para iniciar sesión en su shell como usuario de TeamSpeak.
$ sudo -u -i ts3
Para ello crearemos un archivo llamado .ts3server_license_accepted
en el directorio de trabajo de TeamSpeak.
$ touch .ts3server_license_accepted
Ejecute el siguiente comando para iniciar el servidor.
$ ./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 ------------------------------------------------------------------
Al ejecutar el servidor por primera vez, se creará una cuenta de administrador de consultas del servidor. Anote su nombre de usuario y la contraseña. Además, anote la clave API y el token de privilegio generado. Lo necesitará en los próximos pasos.
Para detener el servidor, presione Ctrl + C en tu teclado.
Cierre la sesión como usuario de TeamSpeak.
$ exit
Paso 5:creación del demonio del servicio TeamSpeak
Cree el archivo /lib/systemd/system/ts3server.service
y ábralo para editarlo.
$ sudo nano /lib/systemd/system/ts3server.service
Pegue el siguiente código en él.
[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
Cierra el archivo presionando Ctrl + X e ingresando Y cuando se le solicite.
Vuelva a cargar el demonio de servicio.
$ sudo systemctl daemon-reload
Habilite e inicie el servicio TeamSpeak.
$ sudo systemctl enable ts3server --now
Consulta el estado del servicio.
$ 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.
Paso 6:Conéctese usando TeamSpeak Client
Descargue e instale el cliente de Windows TeamSpeak 3 desde el sitio web oficial. También puede descargar la última versión beta (v5) del cliente, pero para nuestro tutorial, usaremos la v3 más antigua y estable.
Inicie el cliente en su escritorio y obtendrá la siguiente pantalla después de pasar por el indicador de licencia.
Haga clic en Conexiones y selecciona Conectar opción para empezar. Ingrese la dirección IP de su servidor, la contraseña generada en el paso 4 y un apodo para usted.
Haz clic en Conectar botón para proceder. Se le pedirá que ingrese la clave de privilegio en el siguiente mensaje. Ingrese el token de privilegio del paso 4 y haga clic en Aceptar para proceder.
Ahora está conectado a su servidor TeamSpeak y puede comenzar a usar el cliente para la comunicación.
Paso 7 - Cambio de contraseña de acceso
Puede cambiar la contraseña de Server Administrator a una más fuerte de su elección. Para hacerlo, detenga el servicio TeamSpeak.
$ sudo systemctl stop ts3server
Cambia al usuario de TeamSpeak.
$ sudo -i -u ts3
Inicie el servidor TeamSpeak y agregue el serveradmin_password
parámetro en su comando.
$ ./ts3server_startscript.sh start serveradmin_password=password Starting the TeamSpeak 3 server TeamSpeak 3 server started, for details please view the log file
Reemplazar password
con una contraseña segura de su elección.
Vuelva a detener el servidor.
$ ./ts3server_startscript.sh stop Stopping the TeamSpeak 3 server . done
Vuelve a tu cuenta de usuario.
$ exit
Vuelva a iniciar el servicio TeamSpeak.
$ sudo systemctl start ts3server
Paso 8:instalación y configuración de MySQL
TeamSpeak, de forma predeterminada, utiliza la base de datos SQLite para almacenar todos los datos de comunicación y de usuario. Si bien esto está bien para una comunidad pequeña, puede convertirse en un problema si está utilizando TeamSpeak para alojar a más usuarios. Afortunadamente, TeamSpeak se puede configurar para usar una base de datos MySQL o PostgreSQL.
Lo configuraremos para usarlo con el servidor MySQL.
Instale el servidor MariaDB, que es un reemplazo directo de MySQL, ya que Debian no viene con MySQL 8 de manera predeterminada.
$ sudo apt install mariadb-server -y
El instalador se iniciará y habilitará el servicio Mariadb por usted. Puede consultar el estado del servicio.
$ sudo systemctl status mariadb
Ejecute el script de seguridad para MariaDB. Utilice las opciones que se indican a continuación.
$ 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
Inicie sesión en el shell de MySQL.
$ sudo mysql
Crear ts3user
usuario. Reemplace your_password
con una contraseña segura de su elección.
mysql> CREATE USER 'ts3user'@'localhost' IDENTIFIED BY 'your_password';
Crear teamspeak3
base de datos.
mysql> CREATE DATABASE teamspeak3;
Otorgue privilegios de usuario en el teamspeak3
base de datos.
mysql> GRANT ALL PRIVILEGES ON teamspeak3.* TO 'ts3user'@'localhost';
Salga del caparazón.
mysql> exit
Cambia al usuario de TeamSpeak.
$ sudo -i -u ts3
El primer paso para configurar MariaDB para trabajar con TeamSpeak es agregar la biblioteca MariaDB. Puede encontrarlo en /opt/teamspeak/redist
carpeta.
Cree un enlace simbólico para la biblioteca desde redist
carpeta al directorio de trabajo principal.
$ ln -s /opt/teamspeak-server/redist/libmariadb.so.2 /opt/teamspeak-server/libmariadb.so.2
Ejecute el siguiente comando para imprimir las bibliotecas compartidas requeridas por TeamSpeak.
$ ldd /opt/teamspeak3-server/libts3db_mariadb.so
Cree el archivo de configuración para almacenar los parámetros de la base de datos y ábralo para editarlo.
$ nano ts3db_mariadb.ini
Pegue el siguiente código en él.
[config] host=127.0.0.1 port=3306 username=ts3user password=your_password database=teamspeak3 socket=
Utilice las credenciales de la base de datos creadas anteriormente. Cierra el archivo presionando Ctrl + X e ingresando Y cuando se le solicite.
Cree un archivo de configuración para TeamSpeak y ábralo para editarlo.
$ nano ts3server.ini
Pegue el siguiente código en él.
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
Cierra el archivo presionando Ctrl + X e ingresando Y Cuando se le solicite. Para conocer estos ajustes de configuración, puede consultar el archivo server_quickstart.md
disponible en el doc
carpeta. El archivo anterior configura TeamSpeak para usar MariaDB en lugar de la base de datos SQLite.
Salga del shell de TeamSpeak.
$ exit
Necesitamos decirle al servidor TeamSpeak que use el archivo de configuración recién creado. Detenga y deshabilite el servicio TeamSpeak.
$ sudo systemctl stop ts3server && sudo systemctl disable ts3server
Abra el archivo de servicio.
$ sudo nano /lib/systemd/system/ts3server.service
Busque la línea ExecStart=/opt/teamspeak/ts3server_startscript.sh start license_accepted=1
y cámbielo agregando los detalles del archivo de configuración como se muestra a continuación.
.... Type=forking ExecStart=/opt/teamspeak/ts3server_startscript.sh start license_accepted=1 inifile=ts3server.ini ....
Cierra el archivo presionando Ctrl + X e ingresando Y cuando se le solicite.
Vuelva a cargar el demonio de servicio para aplicar los cambios.
$ sudo systemctl daemon-reload
Habilite e inicie el servicio TeamSpeak.
$ sudo systemctl enable ts3server --now
Comprueba el estado del servidor.
$ 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]: ------------------------------------------------------------------
Al hacerlo, se volverá a crear la clave de privilegio. La próxima vez que inicie sesión en su servidor, se le solicitará. Sin embargo, la contraseña de administración de su servidor seguirá siendo la misma.
Paso 9:Actualización de TeamSpeak
El primer paso para actualizar el servidor TeamSpeak es detener el servidor.
$ sudo systemctl stop ts3server
Descargue la última versión del sitio web oficial y extraiga el archivo a /opt/teamspeak
directorio sobrescribiendo los archivos originales siguiendo los pasos 2 y 3 del tutorial. Asegúrese de cambiar el permiso de la carpeta extraída.
Una vez que haya terminado, inicie el servidor de nuevo.
$ sudo systemctl start ts3server
Conclusión
Esto concluye nuestro tutorial sobre la instalación y el uso de TeamSpeak Server en un servidor basado en Debian 11. Si tiene alguna pregunta, publíquela en los comentarios a continuación.