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 connetterti ad esso usando un client Windows.
Prerequisiti
-
Un server basato su Debian 11.
-
Un utente non root con privilegi sudo.
-
Sudo il pacchetto è installato.
-
Tutto è aggiornato.
$ sudo apt update && sudo apt upgrade
-
Pochi pacchetti di cui il tuo sistema ha bisogno.
$ sudo apt install nano ufw software-properties-common dirmngr apt-transport-https gnupg2 ca-certificates lsb-release debian-archive-keyring wget -y
Alcuni di questi pacchetti potrebbero essere già installati sul tuo sistema.
Passaggio 1:configurazione del 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 Trasferimento file.
- 10011/tcp per Serverquery (Raw).
- 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
Ricontrolla 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)
Fase 2:scarica TeamSpeak
Visita la pagina di download di TeamSpeak e nota il numero di versione più recente. Al momento di questo tutorial, la v3.13.6 è l'ultima versione disponibile del server TeamSpeak.
Utilizzare il comando seguente 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
Estrai l'archivio scaricato.
$ tar -xf ./teamspeak3-server_linux_amd64-${TVERSION}.tar.bz2
Passaggio 3:crea un utente e una directory TeamSpeak
Il primo passaggio nell'installazione di 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 in /opt/teamspeak
directory.
$ sudo mv teamspeak3-server_linux_amd64/* /opt/teamspeak/
Concedi le autorizzazioni corrette alla directory.
$ sudo chown -R ts3:ts3 /opt/teamspeak
Passaggio 4:esegui il server TeamSpeak
Il passaggio successivo è 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 comando seguente 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 TeamSpeak.
$ touch .ts3server_license_accepted
Esegui il comando seguente 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 di amministratore di query del server. 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 TeamSpeak.
$ exit
Passaggio 5:creazione del daemon del servizio TeamSpeak
Crea il file /lib/systemd/system/ts3server.service
e aprilo per la modifica.
$ 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 inserendo Y quando richiesto.
Ricarica il demone del servizio.
$ sudo systemctl daemon-reload
Abilita e avvia il servizio TeamSpeak.
$ sudo systemctl enable ts3server --now
Verifica 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.
Fase 6 - Connettiti utilizzando TeamSpeak Client
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 3 precedente e stabile.
Avvia il client sul desktop e otterrai la seguente schermata dopo aver eseguito la richiesta di licenza.
Fai clic su Connessioni e seleziona Connetti opzione per iniziare. Inserisci l'indirizzo IP del tuo server, la password generata nel passaggio 4 e un nickname per te stesso.
Fai clic su Connetti pulsante per procedere. Ti verrà chiesto di inserire la chiave del privilegio nel prompt successivo. Inserisci il token del privilegio dal passaggio 4 e fai clic su Ok per procedere.
Ora sei connesso al tuo server TeamSpeak e puoi iniziare a usare il client per la comunicazione.
Fase 7 - Modifica della password di accesso
Puoi cambiare la password dell'amministratore del server con una più forte a tua 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 serveradmin_password
parametro 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.
Arresta di nuovo 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
Fase 8 - Installazione e configurazione di MySQL
TeamSpeak, per impostazione predefinita, utilizza il database SQLite per archiviare tutte le comunicazioni e i dati dell'utente. Anche se questo va bene per una piccola comunità, può diventare un problema se stai usando TeamSpeak per ospitare più utenti. Fortunatamente, TeamSpeak può essere configurato per utilizzare un database MySQL o PostgreSQL.
Lo configureremo per l'uso con il server MySQL.
Installa il server MariaDB, che è un sostituto drop-in 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. Usa 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 ts3user
utente. Sostituisci your_password
con una password complessa a tua scelta.
mysql> CREATE USER 'ts3user'@'localhost' IDENTIFIED BY 'your_password';
Crea teamspeak3
banca dati.
mysql> CREATE DATABASE teamspeak3;
Concedi all'utente i privilegi su teamspeak3
banca dati.
mysql> GRANT ALL PRIVILEGES ON teamspeak3.* TO 'ts3user'@'localhost';
Esci dalla shell.
mysql> exit
Passa all'utente TeamSpeak.
$ sudo -i -u ts3
Il primo passaggio per configurare MariaDB in modo che funzioni con TeamSpeak è aggiungere la libreria MariaDB. Puoi trovarlo in /opt/teamspeak/redist
cartella.
Crea un collegamento simbolico per la libreria da redist
cartella nella directory di lavoro principale.
$ ln -s /opt/teamspeak-server/redist/libmariadb.so.2 /opt/teamspeak-server/libmariadb.so.2
Esegui il comando seguente per stampare le librerie condivise richieste da TeamSpeak.
$ ldd /opt/teamspeak3-server/libts3db_mariadb.so
Crea il file di configurazione per la memorizzazione dei parametri del database e aprilo 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=
Utilizzare le credenziali del database create sopra. Chiudi il file premendo Ctrl + X e inserendo Y quando richiesto.
Crea un file di configurazione per TeamSpeak e aprilo per la modifica.
$ 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 inserendo Y quando richiesto. Per ulteriori informazioni su queste impostazioni di configurazione, puoi fare riferimento al file server_quickstart.md
disponibile nel doc
cartella. Il file precedente configura TeamSpeak per l'utilizzo di 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 del servizio.
$ sudo nano /lib/systemd/system/ts3server.service
Trova la riga ExecStart=/opt/teamspeak/ts3server_startscript.sh start license_accepted=1
e modificarlo 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 inserendo 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 del privilegio. La prossima volta che accedi al tuo server, ti verrà chiesto. La tua password di amministrazione del server, tuttavia, rimarrà la stessa.
Fase 9 - Aggiornamento di TeamSpeak
Il primo passo per aggiornare il server TeamSpeak è fermare il server.
$ sudo systemctl stop ts3server
Scarica l'ultima versione dal sito ufficiale ed estrai l'archivio in /opt/teamspeak
sovrascrivendo i file originali seguendo i passaggi 2 e 3 del tutorial. Assicurati di modificare l'autorizzazione della cartella estratta.
Al termine, riavvia 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.