Ricerca nel sito web

Come installare TeamSpeak Server su Debian 11


Su questa pagina

  1. Prerequisiti
  2. Passaggio 1: configurazione del firewall
  3. Passaggio 2 - Scarica TeamSpeak
  4. Passaggio 3 - Crea l'utente e la directory di TeamSpeak
  5. Passaggio 4 - Esegui il server TeamSpeak
  6. Passaggio 5 - Creazione del demone del servizio TeamSpeak
  7. Passaggio 6 - Connettiti utilizzando il client TeamSpeak
  8. Passaggio 7 - Modifica della password di accesso
  9. Passaggio 8 - Installazione e configurazione di MySQL
  10. Passaggio 9 - Aggiornamento di TeamSpeak
  11. Conclusione

TeamSpeak è un software di chat vocale multipiattaforma utilizzato da giocatori, team e scuole. È leggero e veloce e ti offre un maggiore controllo poiché puoi ospitarlo sul tuo server. Offre un modo semplice e sicuro per connettersi con persone in tutto il mondo. Ha un'interfaccia utente completamente personalizzabile, supporta la messaggistica diretta, il trasferimento illimitato di file e consente l'utilizzo anonimo.

Questo tutorial ti insegnerà come installare il server TeamSpeak su un server basato su Debian 11 e connettersi ad esso utilizzando un client Windows.

Prerequisiti

  • A Debian 11 based server.

  • A non-root user with sudo privileges.

  • Sudo package is installed.

  • Everything is updated.

    $ sudo apt update && sudo apt upgrade
    
  • Few packages that your system needs.

    $ sudo apt install nano ufw software-properties-common dirmngr apt-transport-https gnupg2 ca-certificates lsb-release debian-archive-keyring wget -y
    

    Some of these packages may already be installed on your system.

Passaggio 1: configurare il firewall

Il primo passo è configurare il firewall. Debian viene fornito con ufw (Uncomplicated Firewall).

Controlla se il firewall è in esecuzione.

$ sudo ufw status

Dovresti ottenere il seguente output.

Status: inactive

Consenti porta SSH in modo che il firewall non interrompa la connessione corrente attivandola.

$ sudo ufw allow OpenSSH

Apri le seguenti porte richieste da TeamSpeak.

  • 9987/udp per Voce.
  • 30033/tcp per il trasferimento di file.
  • 10011/tcp per Serverquery (non elaborato).
  • 10022/tcp per Serverquery (SSH).
  • 10080/tcp per Webquery (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

Abilita il firewall

$ sudo ufw enable
Command may disrupt existing ssh connections. Proceed with operation (y|n)? y
Firewall is active and enabled on system startup

Controlla di nuovo lo stato del firewall.

$ sudo ufw status

Dovresti vedere un output simile.

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)

Passaggio 2: scarica TeamSpeak

Visita la pagina di download di TeamSpeaks e nota il numero di versione più recente. Al momento di questo tutorial, v3.13.6 è l'ultima versione disponibile del server TeamSpeak.

Usa il seguente comando per scaricare il server TeamSpeak.

$ TVERSION=3.13.6
$ wget https://files.teamspeak-services.com/releases/server/${TVERSION}/teamspeak3-server_linux_amd64-${TVERSION}.tar.bz2

Estrarre l'archivio scaricato.

$ tar -xf ./teamspeak3-server_linux_amd64-${TVERSION}.tar.bz2

Passo 3 - Crea l'utente e la directory di TeamSpeak

Il primo passo per installare TeamSpeak è creare un utente per il server. L'utente avrà la sua home directory in /opt/teamspeak e non avrà una password.

$ sudo adduser ts3 --home /opt/teamspeak --shell /bin/bash --disabled-password

Ora possiamo spostare la directory estratta nella directory /opt/teamspeak.

$ sudo mv teamspeak3-server_linux_amd64/* /opt/teamspeak/

Concedi le autorizzazioni corrette alla directory.

$ sudo chown -R ts3:ts3 /opt/teamspeak

Passaggio 4: eseguire il server TeamSpeak

Il passaggio successivo consiste nell'eseguire il server TeamSpeak per creare una chiave di privilegio per la prima volta. Questa chiave ti aiuterà ad accedere al server come amministratore.

Prima di avviare il server, devi accedere come utente TeamSpeak. Esegui il seguente comando per accedere alla tua shell come utente TeamSpeak.

$ sudo -u -i ts3

Per questo, creeremo un file chiamato .ts3server_license_accepted nella directory di lavoro di TeamSpeaks.

$ touch .ts3server_license_accepted

Eseguire il seguente comando per avviare il server.

$ ./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
------------------------------------------------------------------

L'esecuzione del server per la prima volta creerà un account Server Query Administrator. Annotare il nome utente e la password. Inoltre, annota la chiave API e il token di privilegio generato. Ne avrai bisogno nei prossimi passaggi.

Per arrestare il server, premi Ctrl + C sulla tastiera.

Esci come utente di TeamSpeak.

$ exit

Passaggio 5: creazione del demone del servizio TeamSpeak

Crea il file /lib/systemd/system/ts3server.service e aprilo per modificarlo.

$ sudo nano /lib/systemd/system/ts3server.service

Incolla il seguente codice al suo interno.

[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

Chiudi il file premendo Ctrl + X e immettendo Y quando richiesto.

Ricarica il demone del servizio.

$ sudo systemctl daemon-reload

Abilita e avvia il servizio TeamSpeak.

$ sudo systemctl enable ts3server --now

Controlla lo stato del servizio.

$ 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.

Passaggio 6: connettiti utilizzando il client TeamSpeak

Scarica e installa il client Windows TeamSpeak 3 dal sito Web ufficiale. Puoi anche scaricare l'ultima versione beta (v5) del client, ma per il nostro tutorial utilizzeremo la versione precedente e stabile v3.

Avvia il client sul desktop e otterrai la seguente schermata dopo aver richiesto la licenza.

Fai clic su Connessioni e seleziona l'opzione Connetti per iniziare. Inserisci l'indirizzo IP del tuo server, la password generata nel passaggio 4 e un nickname per te stesso.

Fare clic sul pulsante Connetti per procedere. Ti verrà chiesto di inserire la chiave di privilegio nel prompt successivo. Immettere il token Privilege del passaggio 4 e fare clic su OK per procedere.

Ora sei connesso al tuo server TeamSpeak e puoi iniziare a utilizzare il client per la comunicazione.

Passaggio 7: modifica della password di accesso

È possibile modificare la password dell'amministratore del server con una più sicura di propria scelta. Per farlo, interrompi il servizio TeamSpeak.

$ sudo systemctl stop ts3server

Passa all'utente TeamSpeak.

$ sudo -i -u ts3

Avvia il server TeamSpeak e aggiungi il parametro serveradmin_password nel tuo comando.

$ ./ts3server_startscript.sh start serveradmin_password=password
Starting the TeamSpeak 3 server
TeamSpeak 3 server started, for details please view the log file

Sostituisci password con una password complessa a tua scelta.

Arrestare nuovamente il server.

$ ./ts3server_startscript.sh stop
Stopping the TeamSpeak 3 server .
done

Torna al tuo account utente.

$ exit

Riavvia il servizio TeamSpeak.

$ sudo systemctl start ts3server

Passaggio 8: installazione e configurazione di MySQL

TeamSpeak, per impostazione predefinita, utilizza il database SQLite per archiviare tutte le comunicazioni e i dati degli utenti. Anche se questo va bene per una piccola comunità, può diventare un problema se si utilizza TeamSpeak per ospitare più utenti. Fortunatamente, TeamSpeak può essere configurato per utilizzare un database MySQL o PostgreSQL.

Lo configureremo per l'utilizzo con il server MySQL.

Installa il server MariaDB, che è un sostituto immediato di MySQL poiché Debian non viene fornito con MySQL 8 per impostazione predefinita.

$ sudo apt install mariadb-server -y

Il programma di installazione si avvierà e abiliterà il servizio Mariadb per te. Puoi controllare lo stato del servizio.

$ sudo systemctl status mariadb

Esegui lo script di sicurezza per MariaDB. Utilizzare le opzioni fornite di seguito.

$ 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

Accedi alla shell MySQL.

$ sudo mysql

Crea un utente ts3user. Sostituisci tua_password con una password complessa a tua scelta.

mysql> CREATE USER 'ts3user'@'localhost' IDENTIFIED BY 'your_password';

Crea il database teamspeak3.

mysql> CREATE DATABASE teamspeak3;

Concedi all'utente i privilegi sul database teamspeak3.

mysql> GRANT ALL PRIVILEGES ON teamspeak3.* TO 'ts3user'@'localhost';

Esci dalla shell.

mysql> exit

Passa all'utente TeamSpeak.

$ sudo -i -u ts3

Il primo passo per configurare MariaDB per lavorare con TeamSpeak è aggiungere la libreria MariaDB. Puoi trovarlo nella cartella /opt/teamspeak/redist.

Crea un collegamento simbolico per la libreria dalla cartella redist alla directory di lavoro principale.

$ ln -s /opt/teamspeak-server/redist/libmariadb.so.2 /opt/teamspeak-server/libmariadb.so.2

Eseguire il seguente comando per stampare le librerie condivise richieste da TeamSpeak.

$ ldd /opt/teamspeak3-server/libts3db_mariadb.so

Creare il file di configurazione per memorizzare i parametri del database e aprirlo per la modifica.

$ nano ts3db_mariadb.ini

Incolla il seguente codice al suo interno.

[config]
host=127.0.0.1
port=3306
username=ts3user
password=your_password
database=teamspeak3
socket=

Usa le credenziali del database create in precedenza. Chiudi il file premendo Ctrl + X e immettendo Y quando richiesto.

Crea un file di configurazione per TeamSpeak e aprilo per modificarlo.

$ nano ts3server.ini

Incolla il seguente codice al suo interno.

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

Chiudi il file premendo Ctrl + X e immettendo Y quando richiesto. Per conoscere queste impostazioni di configurazione, puoi fare riferimento al file server_quickstart.md disponibile nella cartella doc. Il file precedente configura TeamSpeak per utilizzare MariaDB invece del database SQLite.

Esci dalla shell di TeamSpeak.

$ exit

Dobbiamo dire al server TeamSpeak di utilizzare il file di configurazione appena creato. Arresta e disabilita il servizio TeamSpeak.

$ sudo systemctl stop ts3server && sudo systemctl disable ts3server

Apri il file di servizio.

$ sudo nano /lib/systemd/system/ts3server.service

Trova la riga ExecStart=/opt/teamspeak/ts3server_startscript.sh start license_accepted=1 e modificala aggiungendo i dettagli del file di configurazione come mostrato di seguito.

....
Type=forking
ExecStart=/opt/teamspeak/ts3server_startscript.sh start license_accepted=1 inifile=ts3server.ini
....

Chiudi il file premendo Ctrl + X e immettendo Y quando richiesto.

Ricarica il demone del servizio per applicare le modifiche.

$ sudo systemctl daemon-reload

Abilita e avvia il servizio TeamSpeak.

$ sudo systemctl enable ts3server --now

Controlla lo stato del server.

$ 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]: ------------------------------------------------------------------

In questo modo verrà ricreata la chiave di privilegio. La prossima volta che accedi al tuo server, ti verrà chiesto. La tua password di amministrazione del server, tuttavia, rimarrà la stessa.

Passaggio 9: aggiornamento di TeamSpeak

Il primo passo per aggiornare il server TeamSpeak è arrestare il server.

$ sudo systemctl stop ts3server

Scarica l'ultima versione dal sito ufficiale ed estrai l'archivio nella directory /opt/teamspeak sovrascrivendo i file originali seguendo i passaggi 2 e 3 del tutorial. Assicurati di modificare l'autorizzazione della cartella estratta.

Al termine, riavviare il server.

$ sudo systemctl start ts3server

Conclusione

Questo conclude il nostro tutorial sull'installazione e l'utilizzo di TeamSpeak Server su un server basato su Debian 11. Se hai domande, pubblicale nei commenti qui sotto.