Ubuntu TURN Sunucu Kurulumu
WEBRTC IÇIN UBUNTU'YA TURN SERVER NASIL KURULUR
Ubuntu server için yazılmaktadır.
80 ve 443 portlarını açın. Firewall Ayarlarından açın eğer açılmazsa terminale yazın:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw reload
Coturn ‘ü yükleyin:
sudo apt-get -y update
sudo apt-get install openssl coturn
Kurulumdan sonra, coturn yapılandırma dosyasında TURN sunucusunu etkinleştirmeniz gerekecektir. Bunu yapmak için, /etc/default/coturn dosyasındaki TURNSERVER_ENABLED özelliğinin yorumunu kaldırın. Dosyayı terminalden düzenlemek için nano'yu kullanabilirsiniz
nano /etc/default/coturn
TLS Sertifikaları Oluşturmak;
Sertifika oluşturmadan önce Nginx'i ve Apache'yi durdurun. aşağıda bunları tekrar açacağız.
Nginx'i durdurun:
sudo systemctl stop nginx
Nginx'in durumunu tekrar kontrol edin:
sudo systemctl status nginx
Apache'i durdurun:
sudo systemctl stop apache2
Apache'in durumunu kontrol edin:
sudo systemctl status apache2
sudo apt-get -y install certbot
sudo certbot certonly --standalone
Biraz sonra e-postanızı ve sunucu alan adınızı soracaktır. bunları kendinize uygun şekilde doldurun.

Her şey yolundaysa, “/etc/letsencrypt/live/YOUR_DOMAIN” dizininde bulabileceğiniz yeni oluşturulmuş SSL/TLS sertifikalarınız.
cd /etc/letsencrypt/live/YOUR_DOMAIN/
sudo openssl dhparam -out dhparam.pem 2048
şimdi “/etc/turnserver.conf” dosyasını düzenleyeceğiz.
/etc/turnserver.conf aşağıdaki gibi olmalı. kırmızı renkli yerleri yukarıdaki SSL sertifikasında belirlediğiniz değerleri yazın.
(ben, alt alan adı kullandim. benim alan adım: coturn.deneme.com)
nano /etc/turnserver.conf
Kaydedin ve aşağıdaki komutu çalıştırın.
sudo turnadmin -a -u KULLANICIADI -r ALAN_ADINIZI_BURAYA_YAZIN -p SIFRE
Coturn Sunucusunu Durdur/Başlat
sudo systemctl status coturn
sudo systemctl start coturn
sudo systemctl stop coturn
sudo systemctl restart coturn
Coturn durumunu sorgulayın.
sudo systemctl enable coturn
Nginx ve Apache’yi tekrar açabilirsiniz.
sudo systemctl enable nginx
sudo systemctl enable apache2
Nginx ve Apache durumunu sorgulamak için;
sudo systemctl status nginx
sudo systemctl status apache2
Test Coturn Sunucusu
Coturn sunucu yapılandırmasını test etmek için TURN/STUN sunucularını test etmek için ücretsiz Trickle ICE hizmetini kullanın.
https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/
Belirtilen TURN/ICE Sunucuları ile bir bağlantı oluşturacak ve ardından tek bir ses akışıyla bir oturum için aday toplamaya başlayacaktır.
STUN veya TURN URI'nizi girin, TURN kullanıcı adı, TURN şifresi, Sunucu Ekle, ardından "Add Server" düğmesine basın.
TURN/STUN sunucunuz doğru yapılandırılmışsa, sonunda şunları görmelisiniz: BITTİ.
Örnek çıktıda gösterildiği gibi:

EK: Flutter için nasıl kullanılır:
KAYNAKLAR:
https://meetrix.io/blog/webrtc/coturn/installation.html
https://ourcodeworld.com/articles/read/1175/how-to-create-and-configure-your-own-stun-turn-server-with-coturn-in-ubuntu-18-04
https://arstech.net/how-to-install-turn-server-on-ubuntu-for-webrtc/
https://github.com/flutter-webrtc/flutter-webrtc/issues/758