Установка TeapSpeak 3 server на VDS — различия между версиями
Admin (обсуждение | вклад) (Новая страница: «= Установка TeamSpeak 3 server = == 1. Подготовка системы == * Войдите в систему под учетной записью…») |
Admin (обсуждение | вклад) |
||
Строка 11: | Строка 11: | ||
1. Создайте пользователя для TeamSpeak: | 1. Создайте пользователя для TeamSpeak: | ||
− | <code> | + | <code>sudo useradd -m -s /bin/bash teamspeak</code> |
− | sudo useradd -m -s /bin/bash teamspeak | ||
− | </code> | ||
2. Установите пароль для пользователя: | 2. Установите пароль для пользователя: | ||
− | <code> | + | <code>sudo passwd teamspeak</code> |
− | sudo passwd teamspeak | ||
− | </code> | ||
3. Переключитесь на пользователя teamspeak: | 3. Переключитесь на пользователя teamspeak: | ||
− | <code> | + | <code>sudo su - teamspeak</code> |
− | sudo su - teamspeak | ||
− | </code> | ||
== 3. Установка TeamSpeak 3 Server === | == 3. Установка TeamSpeak 3 Server === | ||
Строка 30: | Строка 24: | ||
1. Создайте директорию для TeamSpeak: | 1. Создайте директорию для TeamSpeak: | ||
− | <code> | + | <code>mkdir -p ~/teamspeak</code> |
− | mkdir -p ~/teamspeak | + | <code>cd ~/teamspeak</code> |
− | cd ~/teamspeak | ||
− | </code> | ||
2. Скачайте последнюю версию TeamSpeak 3 Server: | 2. Скачайте последнюю версию TeamSpeak 3 Server: | ||
− | <code> | + | <code>wget https://files.teamspeak-services.com/releases/server/3.13.7/teamspeak3-server_linux_amd64-3.13.7.tar.bz2</code> |
− | wget https://files.teamspeak-services.com/releases/server/3.13.7/teamspeak3-server_linux_amd64-3.13.7.tar.bz2 | ||
− | </code> | ||
3. Распакуйте архив: | 3. Распакуйте архив: | ||
− | <code> | + | <code>tar -xjf teamspeak3-server_linux_amd64-3.13.7.tar.bz2</code> |
− | tar -xjf teamspeak3-server_linux_amd64-3.13.7.tar.bz2 | ||
− | </code> | ||
4. Переименуйте директорию: | 4. Переименуйте директорию: | ||
− | <code> | + | <code>mv teamspeak3-server_linux_amd64 teamspeak3-server</code> |
− | mv teamspeak3-server_linux_amd64 teamspeak3-server | + | <code>cd teamspeak3-server</code> |
− | cd teamspeak3-server | ||
− | </code> | ||
=== Настройка прав доступа === | === Настройка прав доступа === | ||
1. Установите правильные права: | 1. Установите правильные права: | ||
− | <code> | + | <code>chmod +x ts3server_startscript.sh</code> |
− | chmod +x ts3server_startscript.sh | + | <code>chmod +x ts3server</code> |
− | chmod +x ts3server | ||
− | </code> | ||
2. Создайте директорию для логов: | 2. Создайте директорию для логов: | ||
− | <code> | + | <code>mkdir -p logs</code> |
− | mkdir -p logs | ||
− | </code> | ||
== 4. Первый запуск TeamSpeak === | == 4. Первый запуск TeamSpeak === | ||
Строка 69: | Строка 51: | ||
1. Запустите TeamSpeak сервер: | 1. Запустите TeamSpeak сервер: | ||
− | <code> | + | <code>./ts3server_startscript.sh start</code> |
− | ./ts3server_startscript.sh start | ||
− | </code> | ||
2. При первом запуске вы получите: | 2. При первом запуске вы получите: | ||
Строка 78: | Строка 58: | ||
3. Остановите сервер: | 3. Остановите сервер: | ||
− | <code> | + | <code>./ts3server_startscript.sh stop</code> |
− | ./ts3server_startscript.sh stop | ||
− | </code> | ||
=== Настройка автозапуска === | === Настройка автозапуска === | ||
1. Создайте systemd сервис: | 1. Создайте systemd сервис: | ||
− | <code> | + | <code>sudo nano /etc/systemd/system/teamspeak.service</code> |
− | sudo nano /etc/systemd/system/teamspeak.service | ||
− | </code> | ||
2. Добавьте конфигурацию: | 2. Добавьте конфигурацию: | ||
− | <code> | + | <code>[Unit]</code> |
− | [Unit] | + | <code>Description=TeamSpeak 3 Server</code> |
− | Description=TeamSpeak 3 Server | + | <code>After=network.target</code> |
− | After=network.target | + | <code>[Service]</code> |
− | + | <code>Type=forking</code> | |
− | [Service] | + | <code>User=teamspeak</code> |
− | Type=forking | + | <code>Group=teamspeak</code> |
− | User=teamspeak | + | <code>WorkingDirectory=/home/teamspeak/teamspeak/teamspeak3-server</code> |
− | Group=teamspeak | + | <code>ExecStart=/home/teamspeak/teamspeak/teamspeak3-server/ts3server_startscript.sh start</code> |
− | WorkingDirectory=/home/teamspeak/teamspeak/teamspeak3-server | + | <code>ExecStop=/home/teamspeak/teamspeak/teamspeak3-server/ts3server_startscript.sh stop</code> |
− | ExecStart=/home/teamspeak/teamspeak/teamspeak3-server/ts3server_startscript.sh start | + | <code>ExecReload=/home/teamspeak/teamspeak/teamspeak3-server/ts3server_startscript.sh restart</code> |
− | ExecStop=/home/teamspeak/teamspeak/teamspeak3-server/ts3server_startscript.sh stop | + | <code>PIDFile=/home/teamspeak/teamspeak/teamspeak3-server/ts3server.pid</code> |
− | ExecReload=/home/teamspeak/teamspeak/teamspeak3-server/ts3server_startscript.sh restart | + | <code>Restart=on-failure</code> |
− | PIDFile=/home/teamspeak/teamspeak/teamspeak3-server/ts3server.pid | + | <code>RestartSec=5</code> |
− | Restart=on-failure | + | <code>[Install]</code> |
− | RestartSec=5 | + | <code>WantedBy=multi-user.target</code> |
− | |||
− | [Install] | ||
− | WantedBy=multi-user.target | ||
− | </code> | ||
3. Перезагрузите systemd и включите автозапуск: | 3. Перезагрузите systemd и включите автозапуск: | ||
− | <code> | + | <code>sudo systemctl daemon-reload</code> |
− | sudo systemctl daemon-reload | + | <code>sudo systemctl enable teamspeak</code> |
− | sudo systemctl enable teamspeak | + | <code>sudo systemctl start teamspeak</code> |
− | sudo systemctl start teamspeak | ||
− | </code> | ||
== 5. Настройка файрвола === | == 5. Настройка файрвола === | ||
Строка 123: | Строка 93: | ||
1. Разрешите порты TeamSpeak: | 1. Разрешите порты TeamSpeak: | ||
− | <code> | + | <code>sudo ufw allow 9987/udp</code> |
− | sudo ufw allow 9987/udp | + | <code>sudo ufw allow 10011/tcp</code> |
− | sudo ufw allow 10011/tcp | + | <code>sudo ufw allow 30033/tcp</code> |
− | sudo ufw allow 30033/tcp | ||
− | </code> | ||
2. Проверьте статус: | 2. Проверьте статус: | ||
− | <code> | + | <code>sudo ufw status</code> |
− | sudo ufw status | ||
− | </code> | ||
=== Настройка iptables === | === Настройка iptables === | ||
1. Разрешите порты через iptables: | 1. Разрешите порты через iptables: | ||
− | <code> | + | <code>sudo iptables -A INPUT -p udp --dport 9987 -j ACCEPT</code> |
− | sudo iptables -A INPUT -p udp --dport 9987 -j ACCEPT | + | <code>sudo iptables -A INPUT -p tcp --dport 10011 -j ACCEPT</code> |
− | sudo iptables -A INPUT -p tcp --dport 10011 -j ACCEPT | + | <code>sudo iptables -A INPUT -p tcp --dport 30033 -j ACCEPT</code> |
− | sudo iptables -A INPUT -p tcp --dport 30033 -j ACCEPT | ||
− | </code> | ||
2. Сохраните правила: | 2. Сохраните правила: | ||
− | <code> | + | <code>sudo iptables-save > /etc/iptables/rules.v4</code> |
− | sudo iptables-save > /etc/iptables/rules.v4 | ||
− | </code> | ||
== 6. Настройка TeamSpeak === | == 6. Настройка TeamSpeak === | ||
Строка 153: | Строка 115: | ||
1. Отредактируйте файл конфигурации: | 1. Отредактируйте файл конфигурации: | ||
− | <code> | + | <code>nano ~/teamspeak/teamspeak3-server/ts3server.ini</code> |
− | nano ~/teamspeak/teamspeak3-server/ts3server.ini | ||
− | </code> | ||
2. Настройте основные параметры: | 2. Настройте основные параметры: | ||
− | <code> | + | <code>server_name=My TeamSpeak Server</code> |
− | + | <code>server_password=</code> | |
− | server_name=My TeamSpeak Server | + | <code>server_admin_password=your_admin_password</code> |
− | server_password= | + | <code>server_query_password=your_query_password</code> |
− | server_admin_password=your_admin_password | + | <code>voice_ip=0.0.0.0</code> |
− | server_query_password=your_query_password | + | <code>voice_port=9987</code> |
− | + | <code>query_ip=0.0.0.0</code> | |
− | + | <code>query_port=10011</code> | |
− | voice_ip=0.0.0.0 | + | <code>filetransfer_ip=0.0.0.0</code> |
− | voice_port=9987 | + | <code>filetransfer_port=30033</code> |
− | query_ip=0.0.0.0 | + | <code>log_level=3</code> |
− | query_port=10011 | + | <code>log_commands=1</code> |
− | filetransfer_ip=0.0.0.0 | + | <code>log_query_commands=1</code> |
− | filetransfer_port=30033 | ||
− | |||
− | |||
− | log_level=3 | ||
− | log_commands=1 | ||
− | log_query_commands=1 | ||
− | </code> | ||
=== Настройка виртуальных серверов === | === Настройка виртуальных серверов === | ||
1. Создайте дополнительный виртуальный сервер: | 1. Создайте дополнительный виртуальный сервер: | ||
− | <code> | + | <code>virtualserver_port=9988</code> |
− | + | <code>virtualserver_name=My Second Server</code> | |
− | virtualserver_port=9988 | ||
− | virtualserver_name=My Second Server | ||
− | </code> | ||
2. Перезапустите сервер: | 2. Перезапустите сервер: | ||
− | <code> | + | <code>sudo systemctl restart teamspeak</code> |
− | sudo systemctl restart teamspeak | ||
− | </code> | ||
== 7. Управление TeamSpeak === | == 7. Управление TeamSpeak === | ||
Строка 198: | Строка 146: | ||
* '''Запуск сервера''': | * '''Запуск сервера''': | ||
− | <code> | + | <code>sudo systemctl start teamspeak</code> |
− | sudo systemctl start teamspeak | ||
− | </code> | ||
* '''Остановка сервера''': | * '''Остановка сервера''': | ||
− | <code> | + | <code>sudo systemctl stop teamspeak</code> |
− | sudo systemctl stop teamspeak | ||
− | </code> | ||
* '''Перезапуск сервера''': | * '''Перезапуск сервера''': | ||
− | <code> | + | <code>sudo systemctl restart teamspeak</code> |
− | sudo systemctl restart teamspeak | ||
− | </code> | ||
* '''Проверка статуса''': | * '''Проверка статуса''': | ||
− | <code> | + | <code>sudo systemctl status teamspeak</code> |
− | sudo systemctl status teamspeak | ||
− | </code> | ||
* '''Просмотр логов''': | * '''Просмотр логов''': | ||
− | <code> | + | <code>sudo journalctl -u teamspeak -f</code> |
− | sudo journalctl -u teamspeak -f | ||
− | </code> | ||
=== Управление через TeamSpeak Query === | === Управление через TeamSpeak Query === | ||
1. Подключитесь к серверу: | 1. Подключитесь к серверу: | ||
− | <code> | + | <code>telnet localhost 10011</code> |
− | telnet localhost 10011 | ||
− | </code> | ||
2. Авторизуйтесь: | 2. Авторизуйтесь: | ||
− | <code> | + | <code>login serveradmin your_query_password</code> |
− | login serveradmin your_query_password | ||
− | </code> | ||
3. Основные команды: | 3. Основные команды: | ||
− | <code> | + | <code>serverinfo</code> |
− | + | <code>servercreate virtualserver_name=My Server virtualserver_port=9988</code> | |
− | serverinfo | + | <code>serverstop sid=1</code> |
− | + | <code>serverstart sid=1</code> | |
− | |||
− | servercreate virtualserver_name=My Server virtualserver_port=9988 | ||
− | |||
− | |||
− | serverstop sid=1 | ||
− | |||
− | |||
− | serverstart sid=1 | ||
− | </code> | ||
== 8. Настройка резервного копирования === | == 8. Настройка резервного копирования === | ||
Строка 254: | Строка 179: | ||
1. Создайте скрипт бэкапа: | 1. Создайте скрипт бэкапа: | ||
− | <code> | + | <code>nano /usr/local/bin/teamspeak-backup.sh</code> |
− | nano /usr/local/bin/teamspeak-backup.sh | ||
− | </code> | ||
2. Добавьте содержимое: | 2. Добавьте содержимое: | ||
− | <code> | + | <code>BACKUP_DIR="/backup/teamspeak"</code> |
− | + | <code>TEAMSPEAK_DIR="/home/teamspeak/teamspeak/teamspeak3-server"</code> | |
− | + | <code>DATE=$(date +%Y%m%d_%H%M%S)</code> | |
− | BACKUP_DIR="/backup/teamspeak" | + | <code>mkdir -p $BACKUP_DIR</code> |
− | TEAMSPEAK_DIR="/home/teamspeak/teamspeak/teamspeak3-server" | + | <code>sudo systemctl stop teamspeak</code> |
− | DATE=$(date +%Y%m%d_%H%M%S) | + | <code>tar -czf $BACKUP_DIR/teamspeak_backup_$DATE.tar.gz -C $TEAMSPEAK_DIR .</code> |
− | + | <code>sudo systemctl start teamspeak</code> | |
− | + | <code>find $BACKUP_DIR -name "teamspeak_backup_*.tar.gz" -mtime +7 -delete</code> | |
− | mkdir -p $BACKUP_DIR | + | <code>echo "Backup completed: teamspeak_backup_$DATE.tar.gz"</code> |
− | |||
− | |||
− | sudo systemctl stop teamspeak | ||
− | |||
− | |||
− | tar -czf $BACKUP_DIR/teamspeak_backup_$DATE.tar.gz -C $TEAMSPEAK_DIR . | ||
− | |||
− | |||
− | sudo systemctl start teamspeak | ||
− | |||
− | |||
− | find $BACKUP_DIR -name "teamspeak_backup_*.tar.gz" -mtime +7 -delete | ||
− | |||
− | echo "Backup completed: teamspeak_backup_$DATE.tar.gz" | ||
− | </code> | ||
3. Сделайте скрипт исполняемым: | 3. Сделайте скрипт исполняемым: | ||
− | <code> | + | <code>sudo chmod +x /usr/local/bin/teamspeak-backup.sh</code> |
− | sudo chmod +x /usr/local/bin/teamspeak-backup.sh | ||
− | </code> | ||
=== Настройка автоматического бэкапа === | === Настройка автоматического бэкапа === | ||
1. Добавьте задачу в crontab: | 1. Добавьте задачу в crontab: | ||
− | <code> | + | <code>sudo crontab -e</code> |
− | sudo crontab -e | ||
− | </code> | ||
2. Добавьте строку для ежедневного бэкапа: | 2. Добавьте строку для ежедневного бэкапа: | ||
− | <code> | + | <code>0 3 * * * /usr/local/bin/teamspeak-backup.sh</code> |
− | |||
− | 0 3 * * * /usr/local/bin/teamspeak-backup.sh | ||
− | </code> | ||
== 9. Мониторинг TeamSpeak === | == 9. Мониторинг TeamSpeak === | ||
Строка 307: | Строка 208: | ||
1. Создайте скрипт мониторинга: | 1. Создайте скрипт мониторинга: | ||
− | <code> | + | <code>nano /usr/local/bin/teamspeak-monitor.sh</code> |
− | nano /usr/local/bin/teamspeak-monitor.sh | ||
− | </code> | ||
2. Добавьте содержимое: | 2. Добавьте содержимое: | ||
− | <code> | + | <code>if systemctl is-active --quiet teamspeak; then</code> |
− | + | <code>echo "TeamSpeak server is running"</code> | |
− | + | <code>CONNECTIONS=$(netstat -an | grep :9987 | wc -l)</code> | |
− | + | <code>echo "Active connections: $CONNECTIONS"</code> | |
− | if systemctl is-active --quiet teamspeak; then | + | <code>MEMORY=$(ps aux | grep ts3server | grep -v grep | awk '{print $6}')</code> |
− | + | <code>echo "Memory usage: $MEMORY KB"</code> | |
− | + | <code>else</code> | |
− | + | <code>echo "TeamSpeak server is not running"</code> | |
− | + | <code>echo "TeamSpeak server is down" | mail -s "TeamSpeak Alert" admin@example.com</code> | |
− | + | <code>fi</code> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | else | ||
− | |||
− | |||
− | |||
− | fi | ||
− | </code> | ||
3. Сделайте скрипт исполняемым: | 3. Сделайте скрипт исполняемым: | ||
− | <code> | + | <code>sudo chmod +x /usr/local/bin/teamspeak-monitor.sh</code> |
− | sudo chmod +x /usr/local/bin/teamspeak-monitor.sh | ||
− | </code> | ||
=== Настройка мониторинга === | === Настройка мониторинга === | ||
1. Добавьте задачу мониторинга в crontab: | 1. Добавьте задачу мониторинга в crontab: | ||
− | <code> | + | <code>*/5 * * * * /usr/local/bin/teamspeak-monitor.sh</code> |
− | |||
− | */5 * * * * /usr/local/bin/teamspeak-monitor.sh | ||
− | </code> | ||
== 10. Настройка SSL/TLS === | == 10. Настройка SSL/TLS === | ||
Строка 352: | Строка 235: | ||
1. Создайте приватный ключ: | 1. Создайте приватный ключ: | ||
− | <code> | + | <code>openssl genrsa -out teamspeak.key 2048</code> |
− | openssl genrsa -out teamspeak.key 2048 | ||
− | </code> | ||
2. Создайте запрос на сертификат: | 2. Создайте запрос на сертификат: | ||
− | <code> | + | <code>openssl req -new -key teamspeak.key -out teamspeak.csr</code> |
− | openssl req -new -key teamspeak.key -out teamspeak.csr | ||
− | </code> | ||
3. Создайте самоподписанный сертификат: | 3. Создайте самоподписанный сертификат: | ||
− | <code> | + | <code>openssl x509 -req -days 365 -in teamspeak.csr -signkey teamspeak.key -out teamspeak.crt</code> |
− | openssl x509 -req -days 365 -in teamspeak.csr -signkey teamspeak.key -out teamspeak.crt | ||
− | </code> | ||
4. Скопируйте сертификаты в директорию TeamSpeak: | 4. Скопируйте сертификаты в директорию TeamSpeak: | ||
− | <code> | + | <code>cp teamspeak.crt ~/teamspeak/teamspeak3-server/</code> |
− | cp teamspeak.crt ~/teamspeak/teamspeak3-server/ | + | <code>cp teamspeak.key ~/teamspeak/teamspeak3-server/</code> |
− | cp teamspeak.key ~/teamspeak/teamspeak3-server/ | ||
− | </code> | ||
=== Настройка SSL в TeamSpeak === | === Настройка SSL в TeamSpeak === | ||
1. Отредактируйте конфигурацию: | 1. Отредактируйте конфигурацию: | ||
− | <code> | + | <code>nano ~/teamspeak/teamspeak3-server/ts3server.ini</code> |
− | nano ~/teamspeak/teamspeak3-server/ts3server.ini | ||
− | </code> | ||
2. Добавьте настройки SSL: | 2. Добавьте настройки SSL: | ||
− | <code> | + | <code>certificate_file=teamspeak.crt</code> |
− | + | <code>private_key_file=teamspeak.key</code> | |
− | certificate_file=teamspeak.crt | ||
− | private_key_file=teamspeak.key | ||
− | </code> | ||
3. Перезапустите сервер: | 3. Перезапустите сервер: | ||
− | <code> | + | <code>sudo systemctl restart teamspeak</code> |
− | sudo systemctl restart teamspeak | ||
− | </code> | ||
== 11. Устранение неполадок === | == 11. Устранение неполадок === | ||
Строка 413: | Строка 281: | ||
1. Проверьте статус сервера: | 1. Проверьте статус сервера: | ||
− | <code> | + | <code>sudo systemctl status teamspeak</code> |
− | sudo systemctl status teamspeak | ||
− | </code> | ||
2. Проверьте логи: | 2. Проверьте логи: | ||
− | <code> | + | <code>sudo journalctl -u teamspeak --since "1 hour ago"</code> |
− | sudo journalctl -u teamspeak --since "1 hour ago" | ||
− | </code> | ||
3. Проверьте подключения: | 3. Проверьте подключения: | ||
− | <code> | + | <code>netstat -an | grep :9987</code> |
− | netstat -an | grep :9987 | ||
− | </code> | ||
== 12. Оптимизация производительности === | == 12. Оптимизация производительности === | ||
Строка 432: | Строка 294: | ||
1. Отредактируйте конфигурацию: | 1. Отредактируйте конфигурацию: | ||
− | <code> | + | <code>nano ~/teamspeak/teamspeak3-server/ts3server.ini</code> |
− | nano ~/teamspeak/teamspeak3-server/ts3server.ini | ||
− | </code> | ||
2. Добавьте настройки производительности: | 2. Добавьте настройки производительности: | ||
− | <code> | + | <code>server_max_clients=1000</code> |
− | + | <code>server_max_connections_per_ip=10</code> | |
− | server_max_clients=1000 | + | <code>server_bandwidth_limit=0</code> |
− | server_max_connections_per_ip=10 | + | <code>server_bandwidth_limit_per_user=0</code> |
− | server_bandwidth_limit=0 | + | <code>server_cache_size=100</code> |
− | server_bandwidth_limit_per_user=0 | + | <code>server_cache_time=300</code> |
− | |||
− | |||
− | server_cache_size=100 | ||
− | server_cache_time=300 | ||
− | </code> | ||
=== Мониторинг производительности === | === Мониторинг производительности === | ||
1. Создайте скрипт мониторинга: | 1. Создайте скрипт мониторинга: | ||
− | <code> | + | <code>nano /usr/local/bin/teamspeak-stats.sh</code> |
− | nano /usr/local/bin/teamspeak-stats.sh | ||
− | </code> | ||
2. Добавьте содержимое: | 2. Добавьте содержимое: | ||
− | <code> | + | <code>echo "=== TeamSpeak Server Statistics ==="</code> |
− | + | <code>echo "Server Status: $(systemctl is-active teamspeak)"</code> | |
− | + | <code>echo "Uptime: $(systemctl show teamspeak --property=ActiveEnterTimestamp --value)"</code> | |
− | echo "=== TeamSpeak Server Statistics ===" | + | <code>echo "Memory Usage: $(ps aux | grep ts3server | grep -v grep | awk '{print $4"%"}')"</code> |
− | echo "Server Status: $(systemctl is-active teamspeak)" | + | <code>echo "CPU Usage: $(ps aux | grep ts3server | grep -v grep | awk '{print $3"%"}')"</code> |
− | echo "Uptime: $(systemctl show teamspeak --property=ActiveEnterTimestamp --value)" | + | <code>echo "Active Connections: $(netstat -an | grep :9987 | wc -l)"</code> |
− | echo "Memory Usage: $(ps aux | grep ts3server | grep -v grep | awk '{print $4"%"}')" | ||
− | echo "CPU Usage: $(ps aux | grep ts3server | grep -v grep | awk '{print $3"%"}')" | ||
− | echo "Active Connections: $(netstat -an | grep :9987 | wc -l)" | ||
− | </code> | ||
3. Сделайте скрипт исполняемым: | 3. Сделайте скрипт исполняемым: | ||
− | <code> | + | <code>sudo chmod +x /usr/local/bin/teamspeak-stats.sh</code> |
− | sudo chmod +x /usr/local/bin/teamspeak-stats.sh | ||
− | </code> | ||
== Заключение == | == Заключение == |
Версия 20:03, 14 октября 2025
Содержание
- 1 Установка TeamSpeak 3 server
- 1.1 1. Подготовка системы
- 1.2 2. Создание пользователя для TeamSpeak
- 1.3 3. Установка TeamSpeak 3 Server =
- 1.4 4. Первый запуск TeamSpeak =
- 1.5 5. Настройка файрвола =
- 1.6 6. Настройка TeamSpeak =
- 1.7 7. Управление TeamSpeak =
- 1.8 8. Настройка резервного копирования =
- 1.9 9. Мониторинг TeamSpeak =
- 1.10 10. Настройка SSL/TLS =
- 1.11 11. Устранение неполадок =
- 1.12 12. Оптимизация производительности =
- 1.13 Заключение
Установка TeamSpeak 3 server
1. Подготовка системы
- Войдите в систему под учетной записью с правами root или пользователя с правами sudo.
- Убедитесь, что у вас есть доступ к серверу через SSH или консоль.
2. Создание пользователя для TeamSpeak
Создание пользователя
1. Создайте пользователя для TeamSpeak:
sudo useradd -m -s /bin/bash teamspeak
2. Установите пароль для пользователя:
sudo passwd teamspeak
3. Переключитесь на пользователя teamspeak:
sudo su - teamspeak
3. Установка TeamSpeak 3 Server =
Скачивание TeamSpeak
1. Создайте директорию для TeamSpeak:
mkdir -p ~/teamspeak
cd ~/teamspeak
2. Скачайте последнюю версию TeamSpeak 3 Server:
wget https://files.teamspeak-services.com/releases/server/3.13.7/teamspeak3-server_linux_amd64-3.13.7.tar.bz2
3. Распакуйте архив:
tar -xjf teamspeak3-server_linux_amd64-3.13.7.tar.bz2
4. Переименуйте директорию:
mv teamspeak3-server_linux_amd64 teamspeak3-server
cd teamspeak3-server
Настройка прав доступа
1. Установите правильные права:
chmod +x ts3server_startscript.sh
chmod +x ts3server
2. Создайте директорию для логов:
mkdir -p logs
4. Первый запуск TeamSpeak =
Запуск сервера
1. Запустите TeamSpeak сервер:
./ts3server_startscript.sh start
2. При первом запуске вы получите:
- ServerAdmin privilege key - сохраните его!
- ServerQuery Admin login - логин и пароль для администрирования
3. Остановите сервер:
./ts3server_startscript.sh stop
Настройка автозапуска
1. Создайте systemd сервис:
sudo nano /etc/systemd/system/teamspeak.service
2. Добавьте конфигурацию:
[Unit]
Description=TeamSpeak 3 Server
After=network.target
[Service]
Type=forking
User=teamspeak
Group=teamspeak
WorkingDirectory=/home/teamspeak/teamspeak/teamspeak3-server
ExecStart=/home/teamspeak/teamspeak/teamspeak3-server/ts3server_startscript.sh start
ExecStop=/home/teamspeak/teamspeak/teamspeak3-server/ts3server_startscript.sh stop
ExecReload=/home/teamspeak/teamspeak/teamspeak3-server/ts3server_startscript.sh restart
PIDFile=/home/teamspeak/teamspeak/teamspeak3-server/ts3server.pid
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
3. Перезагрузите systemd и включите автозапуск:
sudo systemctl daemon-reload
sudo systemctl enable teamspeak
sudo systemctl start teamspeak
5. Настройка файрвола =
Настройка UFW
1. Разрешите порты TeamSpeak:
sudo ufw allow 9987/udp
sudo ufw allow 10011/tcp
sudo ufw allow 30033/tcp
2. Проверьте статус:
sudo ufw status
Настройка iptables
1. Разрешите порты через iptables:
sudo iptables -A INPUT -p udp --dport 9987 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 10011 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 30033 -j ACCEPT
2. Сохраните правила:
sudo iptables-save > /etc/iptables/rules.v4
6. Настройка TeamSpeak =
Основные настройки
1. Отредактируйте файл конфигурации:
nano ~/teamspeak/teamspeak3-server/ts3server.ini
2. Настройте основные параметры:
server_name=My TeamSpeak Server
server_password=
server_admin_password=your_admin_password
server_query_password=your_query_password
voice_ip=0.0.0.0
voice_port=9987
query_ip=0.0.0.0
query_port=10011
filetransfer_ip=0.0.0.0
filetransfer_port=30033
log_level=3
log_commands=1
log_query_commands=1
Настройка виртуальных серверов
1. Создайте дополнительный виртуальный сервер:
virtualserver_port=9988
virtualserver_name=My Second Server
2. Перезапустите сервер:
sudo systemctl restart teamspeak
7. Управление TeamSpeak =
Основные команды управления
- Запуск сервера:
sudo systemctl start teamspeak
- Остановка сервера:
sudo systemctl stop teamspeak
- Перезапуск сервера:
sudo systemctl restart teamspeak
- Проверка статуса:
sudo systemctl status teamspeak
- Просмотр логов:
sudo journalctl -u teamspeak -f
Управление через TeamSpeak Query
1. Подключитесь к серверу:
telnet localhost 10011
2. Авторизуйтесь:
login serveradmin your_query_password
3. Основные команды:
serverinfo
servercreate virtualserver_name=My Server virtualserver_port=9988
serverstop sid=1
serverstart sid=1
8. Настройка резервного копирования =
Создание скрипта резервного копирования
1. Создайте скрипт бэкапа:
nano /usr/local/bin/teamspeak-backup.sh
2. Добавьте содержимое:
BACKUP_DIR="/backup/teamspeak"
TEAMSPEAK_DIR="/home/teamspeak/teamspeak/teamspeak3-server"
DATE=$(date +%Y%m%d_%H%M%S)
mkdir -p $BACKUP_DIR
sudo systemctl stop teamspeak
tar -czf $BACKUP_DIR/teamspeak_backup_$DATE.tar.gz -C $TEAMSPEAK_DIR .
sudo systemctl start teamspeak
find $BACKUP_DIR -name "teamspeak_backup_*.tar.gz" -mtime +7 -delete
echo "Backup completed: teamspeak_backup_$DATE.tar.gz"
3. Сделайте скрипт исполняемым:
sudo chmod +x /usr/local/bin/teamspeak-backup.sh
Настройка автоматического бэкапа
1. Добавьте задачу в crontab:
sudo crontab -e
2. Добавьте строку для ежедневного бэкапа:
0 3 * * * /usr/local/bin/teamspeak-backup.sh
9. Мониторинг TeamSpeak =
Создание скрипта мониторинга
1. Создайте скрипт мониторинга:
nano /usr/local/bin/teamspeak-monitor.sh
2. Добавьте содержимое:
if systemctl is-active --quiet teamspeak; then
echo "TeamSpeak server is running"
CONNECTIONS=$(netstat -an | grep :9987 | wc -l)
echo "Active connections: $CONNECTIONS"
MEMORY=$(ps aux | grep ts3server | grep -v grep | awk '{print $6}')
echo "Memory usage: $MEMORY KB"
else
echo "TeamSpeak server is not running"
echo "TeamSpeak server is down" | mail -s "TeamSpeak Alert" admin@example.com
fi
3. Сделайте скрипт исполняемым:
sudo chmod +x /usr/local/bin/teamspeak-monitor.sh
Настройка мониторинга
1. Добавьте задачу мониторинга в crontab:
*/5 * * * * /usr/local/bin/teamspeak-monitor.sh
10. Настройка SSL/TLS =
Генерация SSL сертификата
1. Создайте приватный ключ:
openssl genrsa -out teamspeak.key 2048
2. Создайте запрос на сертификат:
openssl req -new -key teamspeak.key -out teamspeak.csr
3. Создайте самоподписанный сертификат:
openssl x509 -req -days 365 -in teamspeak.csr -signkey teamspeak.key -out teamspeak.crt
4. Скопируйте сертификаты в директорию TeamSpeak:
cp teamspeak.crt ~/teamspeak/teamspeak3-server/
cp teamspeak.key ~/teamspeak/teamspeak3-server/
Настройка SSL в TeamSpeak
1. Отредактируйте конфигурацию:
nano ~/teamspeak/teamspeak3-server/ts3server.ini
2. Добавьте настройки SSL:
certificate_file=teamspeak.crt
private_key_file=teamspeak.key
3. Перезапустите сервер:
sudo systemctl restart teamspeak
11. Устранение неполадок =
Частые проблемы
1. Сервер не запускается:
- Проверьте логи:
sudo journalctl -u teamspeak -f
- Проверьте права доступа:
ls -la ~/teamspeak/teamspeak3-server/
- Проверьте порты:
netstat -tlnp | grep 9987
2. Клиенты не могут подключиться:
- Проверьте файрвол:
sudo ufw status
- Проверьте порты:
sudo netstat -tlnp | grep 9987
- Проверьте настройки сети
3. Высокое использование CPU/памяти:
- Проверьте количество подключений
- Оптимизируйте настройки сервера
- Рассмотрите возможность масштабирования
Диагностика
1. Проверьте статус сервера:
sudo systemctl status teamspeak
2. Проверьте логи:
sudo journalctl -u teamspeak --since "1 hour ago"
3. Проверьте подключения:
netstat -an | grep :9987
12. Оптимизация производительности =
Настройки производительности
1. Отредактируйте конфигурацию:
nano ~/teamspeak/teamspeak3-server/ts3server.ini
2. Добавьте настройки производительности:
server_max_clients=1000
server_max_connections_per_ip=10
server_bandwidth_limit=0
server_bandwidth_limit_per_user=0
server_cache_size=100
server_cache_time=300
Мониторинг производительности
1. Создайте скрипт мониторинга:
nano /usr/local/bin/teamspeak-stats.sh
2. Добавьте содержимое:
echo "=== TeamSpeak Server Statistics ==="
echo "Server Status: $(systemctl is-active teamspeak)"
echo "Uptime: $(systemctl show teamspeak --property=ActiveEnterTimestamp --value)"
echo "Memory Usage: $(ps aux | grep ts3server | grep -v grep | awk '{print $4"%"}')"
echo "CPU Usage: $(ps aux | grep ts3server | grep -v grep | awk '{print $3"%"}')"
echo "Active Connections: $(netstat -an | grep :9987 | wc -l)"
3. Сделайте скрипт исполняемым:
sudo chmod +x /usr/local/bin/teamspeak-stats.sh
Заключение
TeamSpeak 3 сервер успешно установлен и настроен! Теперь вы можете создавать голосовые серверы для команд.
Для размещения ваших TeamSpeak серверов на надежном хостинге рекомендуем воспользоваться услугами [ARK-HOSTER.RU](https://ark-hoster.ru):
- [Выделенные серверы](https://ark-hoster.ru/dedicated/) - для высоконагруженных TeamSpeak серверов
- [VPS/VDS серверы](https://ark-hoster.ru/vpsgame/) - для небольших и средних команд
Наши специалисты помогут с настройкой TeamSpeak и оптимизацией производительности вашего сервера!