2017-10-12 35 views
1

我試圖在Google雲Ubuntu實例中運行Coturn。 sudo易於安裝coturn在Ubuntu的Coturn設置

我創建了私有密鑰的證書文件並更新/etc/turnserver.conf:

listening-port=3478 
tls-listening-port=5349 
listening-ip=10.128.0.2 
relay-ip=10.128.0.2 
external-ip=35.192.224.52/10.128.0.2 
lt-cred-mech 
userdb=/var/lib/turn/turndb 
user=attitudemarketing:password 
cert=cert.crt 
pkey=private.key 
no-stdout-log 

一切都顯得

在一個新的虛擬機使用安裝coturn運行,但是當我嘗試涓流冰:https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/它似乎並不奏效

這是從coturn日誌文件:

0: log file opened: /var/log/turn_1978_2017-10-12.log 
0: pid file created: /var/run/turnserver.pid 
0: IO method (main listener thread): epoll (with changelist) 
0: Wait for relay ports initialization... 
0: relay 10.128.0.2 initialization... 
0: relay 10.128.0.2 initialization done 
0: relay ::1 initialization... 
0: relay ::1 initialization done 
0: Relay ports initialization done 
0: IO method (general relay thread): epoll (with changelist) 
0: turn server id=1 created 
0: IPv4. TCP listener opened on : 127.0.0.1:3478 
0: IPv4. TCP listener opened on : 127.0.0.1:3479 
0: IPv4. TCP listener opened on : 10.128.0.2:3478 
0: IPv4. TCP listener opened on : 10.128.0.2:3479 
0: IPv6. TCP listener opened on : ::1:3478 
0: IPv6. TCP listener opened on : ::1:3479 
0: IO method (general relay thread): epoll (with changelist) 
0: turn server id=0 created 
0: IPv4. TCP listener opened on : 127.0.0.1:3478 
0: IPv4. TCP listener opened on : 127.0.0.1:3479 
0: IPv4. TCP listener opened on : 10.128.0.2:3478 
0: IPv4. TCP listener opened on : 10.128.0.2:3479 
0: IPv6. TCP listener opened on : ::1:3478 
0: IPv6. TCP listener opened on : ::1:3479 
0: IPv4. UDP listener opened on: 127.0.0.1:3478 
0: IPv4. UDP listener opened on: 127.0.0.1:3479 
0: IPv4. UDP listener opened on: 10.128.0.2:3478 
0: IPv4. UDP listener opened on: 10.128.0.2:3479 
0: IPv6. UDP listener opened on: ::1:3478 
0: IPv6. UDP listener opened on: ::1:3479 
0: Total General servers: 2 
0: IO method (auth thread): epoll (with changelist) 
0: IO method (admin thread): epoll (with changelist) 
0: IPv4. CLI listener opened on : 127.0.0.1:5766 
0: IO method (auth thread): epoll (with changelist) 
0: SQLite DB connection success: /var/lib/turn/turndb 

我不確定它是否正常工作,或者是否因Google雲虛擬機內部存在而被阻止。

+0

我想你需要打開防火牆上的端口。嘗試打開端口3478和5349 [使用以下說明](https://stackoverflow.com/questions/21065922/how-to-open-a-specific-port-such-as-9090-in-google-compute-發動機)。 – Kyle

回答

2

我最近在AWS Ubuntu EC2實例上設置了一個coturn服務器。該過程對於Google Cloud Instance應該是相同的。

首先,請確保以下入站端口被打開(TCP & UDP):

  • 3478和3479(標準監聽端口和監聽的端口)
  • 5349和5350(標準TLS-監聽端口和替代TLS-監聽端口)
  • 49152 - 65535(標準中繼端口)

爲了進行測試,直到你的服務器可達,ID廣告d以下的turnserver.conf:

no-tls 
no-dtls 
verbose 

一般情況下,你還需要添加fingerprint到你的配置。

對於這些的說明,請檢查this。現在,我還會從您的配置中刪除cert=cert.crtpkey=private.key

此時,您應該能夠從遠程計算機訪問您的服務器。測試這個最好的方法通常是去遠程機器的瀏覽器,然後轉到「your-public-ip」:3478。

如果服務器可達,你應該看到在瀏覽器中執行以下操作:

pic

如果沒有,請嘗試以下操作:

  • 刪除聽-IP,繼電器-IP ,external-ip和監聽端口,並讓coturn自行決定(這適用於AWS EC2上的我)

  • 將監聽端口設置爲80,將監聽端口設置爲443,並打開服務器上的端口。這將有助於防範非常嚴格的防火牆,但我認爲這不應該是Google VM上的問題。