rfc5766-turn-server の後継であるcoturnを導入してstunサーバーを立てる
https://github.com/coturn/coturn
yum install gcc libevent-devel openssl-devel git clone https://github.com/coturn/coturn.git cd coturn ./configure make make install
/usr/local/etc/turnserver.conf.default をコピーして/usr/local/etc/turnserver.confとし、編集してからturnserverを起動する。
例えば生かす設定は以下の通り。
listening-port=3478 tls-listening-port=5349 listening-ip=0.0.0.0 fingerprint no-auth server-name=yourdomain.com realm=yourdomain.com cert=/etc/letsencrypt/live/yourdomain.com/fullchain.pem pkey=/etc/letsencrypt/live/yourdomain.com/privkey.pem stun-only
firewallの設定で3478と5349のportを解放してからcoturnを起動する。
turnserver
起動したか確認する。
netstat -lnp
https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/
あるいはここをブラウザで起動し、「STUN or TURN URI」にstun:yourdomain.comを設定し、add serverを押してからGather candidatesを押す。
Component Typeに1 srflxと出れば成功。
あるいは直接https://yourdomain.comを開いてみる。
サービスとして登録する
/etc/systemd/system/turnserver.service
に以下の内容を記述。
[Unit] Description=turnserver Service After=network.target [Service] Type=simple User=root ExecStart=/usr/local/bin/turnserver -c /usr/local/etc/turnserver.conf Restart=on-abort [Install] WantedBy=multi-user.target
自動起動を設定して起動する。
systemctl enable turnserver systemctl start turnserver
参考
http://blog.techlab-xe.net/archives/5160
chrome://webrtc-internals/
https://support.ladesk.com/536840-STUNTURN-servers