Coturn[edit]

Install[edit]

dnf -y install coturn  coturn-utils

MariaDB の設定[edit]

coturn 用のDBを作る.[edit]
# mariadb -u root -p
MariaDB [(none)]> create database coturn_db default character set utf8mb4;
MariaDB [(none)]> grant all on coturn_db.* to coturn_user identified by 'coturn_pass';
MariaDB [(none)]> flush privileges;
Table を作る[edit]
# mariadb coturn_db -u root -p < /usr/share/coturn/schema.sql
User アカウントを作る[edit]
# turnadmin -k -u webrtc_user -r janus.jogrid.net -p webrtc_pass
0xc8cb60c783b7c68533b9e15f1983f341

# mariadb -u root -p
MariaDB [coturn_db]> INSERT INTO turnusers_lt ( realm, name,hmackey) VALUES ('janus.jogrid.net', 'webrtc_use', '0xc8cb60c783b7c68533b9e15f1983f341');
Query OK, 1 row affected (0.000 sec)
MariaDB [coturn_db]> select *  from turnusers_lt;
+------------------+---------------+------------------------------------+
| realm            | name          | hmackey                            |
+------------------+---------------+------------------------------------+
| janus.jogrid.net | webrtc_user   | 0xc8cb60c783b7c68533b9e15f1983f341 |
+------------------+---------------+------------------------------------+
# 既存を削除
turnadmin -d -u webrtc_user -r janus.jogrid.net -M "host=localhost dbname=coturn_db user=coturn_USER password=coturn_PASS"

# 正しく追加(hmackey を自動生成して DB 登録)
turnadmin -a -u webrtc_user -p webrtc_pass -r janus.jogrid.net -M "host=localhost dbname=coturn_db user=coturn_USER password=coturn_PASS"

# 登録確認
turnadmin -l -u webrtc_user -r janus.jogrid.net -M "host=localhost dbname=coturn_db user=coturn_USER password=coturn_PASS"
DB 確認[edit]
# turnadmin -l -u webrtc_user -r janus.jogrid.net -p webrtc_pass -M "host=localhost dbname=coturn_db user=coturn_USER password=coturn_PASS"

設定ファイル[edit]

# 通信ポート
listening-port=3478
tls-listening-port=5349
fingerprint

# 認証方式(Long-term credentials)
lt-cred-mech
realm=janus.jogrid.net

# MariaDB 接続設定
#   host     : データベースサーバ(同一サーバなら localhost)
#   dbname   : GRANT 文で指定したデータベース名(coturn_db)
#   user     : GRANT 文で指定したユーザー(coturn_USER)
#   password : GRANT 文で指定したパスワード(coturn_PASS)
userdb="mysql"
mysql-userdb="host=localhost dbname=coturn_db user=coturn_USER password=coturn_PASS"
#userdb="mysql:host=localhost dbname=coturn_db user=coturn_USER password=coturn_PASS" # 間違い!

# NAT 環境の場合は外部IPと内部IPを指定
# external-ip=203.0.113.10/192.168.0.10

# TLS 証明書(Let's Encrypt の場合)
cert=/etc/letsencrypt/live/janus.jogrid.net/fullchain.pem
pkey=/etc/letsencrypt/live/janus.jogrid.net/privkey.pem

# セキュリティ
no-sslv3
cipher-list="ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:RSA+AESGCM:RSA+AES:!aNULL:!MD5:!DSS"
#cipher-list="TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256"

#
cli-password=qwerty

#
min-port=50000
max-port=50999

起動[edit]

systemctl start coturn

Fire Wall[edit]

動作確認[edit]

STUN 動作(UDP 3478)[edit]

# turnutils_stunclient -p 3478 janus.jogrid.net
0: (71074): INFO: IPv4. UDP reflexive addr: 202.26.150.72:35841

TURN 動作(UDP/TCP 3478, TLS 5349)[edit]

peer[edit]
turnutils_peer -L 0.0.0.0 -p 5000
TURN(UDP 3478)[edit]
TURN/TLS(5349)[edit]
 
 

トップ   新規 ページ一覧 検索 最終更新   ヘルプ   最終更新のRSS