安裝前準備
sudo su sudo -s apt -y install docbook2x npm apt -y update
建立 disk swap
dd if=/dev/zero of=/swap bs=1024 count=$[1024*1024*4] mkswap /swap swapon /swap swapon -s echo "/swap swap swap defaluts 0 0" >> /etc/fstab
安裝 nodejs
cd ~ && \ wget https://nodejs.org/dist/v8.15.1/node-v8.15.1-linux-x64.tar.gz && \ mkdir -p /usr/local/lib/nodejs && \ tar xf node-v8.15.1-linux-x64.tar.gz -C /usr/local/lib/nodejs && \ echo 'export PATH=/usr/local/lib/nodejs/node-v8.15.1-linux-x64/bin:$PATH' >> ~/.bashrc && \ source ~/.bashrc
下載 及 編譯 OWT source code
apt-get update && apt-get install -y git htop unzip && \ wget https://github.com/open-webrtc-toolkit/owt-server/archive/v4.3.1.zip -O owt-server-4.3.1.zip && \ unzip owt-server-4.3.1.zip cd ~/owt-server-4.3.1 && \ ./scripts/installDepsUnattended.sh && \ npm install -g node-gyp@6.1.0 graceful-fs grunt-cli && \ ./scripts/build.js -t mcu --check
編譯 owt-client-javascript
cd ~ && \ wget https://github.com/open-webrtc-toolkit/owt-client-javascript/archive/v4.3.1.zip -O owt-client-javascript-4.3.1.zip && \ unzip owt-client-javascript-4.3.1.zip && \ cd owt-client-javascript-4.3.1/scripts/ && \ npm install && \ grunt
如果缺 current_app 可以做這個動作
cd ~/owt-client-javascript-5.0/dist/samples/conference npm install npm audit fix
打包 owt-server
cd ~/owt-server-4.3.1/ && \ ./scripts/pack.js -f -s ~/owt-client-javascript-4.3.1/dist/samples/conference/
配置 owt-server
vi /root/owt-server-4.3.1/dist/webrtc_agent/agent.toml
- 編輯 webrtc_agent/agent.toml:修改 [webrtc] 部分的 network_interfaces,添加 {name = “eth2”, replaced_ip_address = “192.0.2.2”}(需要把 name 設置爲網卡實際名稱,replaced_ip_address 設置爲服務器公網 IP 地址), maxport, minport;注意配置文件裏 max 在前,min 在後
- maxport = 9999 #default: 0
minport = 6000 #default: 0
vi /root/owt-server-4.3.1/dist/portal/portal.toml
- 編輯 portal/portal.toml:修改 [portal] 部分裏的 ip_address 爲服務器公網 IP 地址,ssl 按需設置爲 true 或 false;
- Firewall 開放
TCP 3000~3004, 8080 端口,UDP minport~maxport。
運行 owt-server
cd ~/owt-server-4.3.1/dist && \ ./bin/init-all.sh
以後只需要執行
cd ~/owt-server-4.3.1/dist && \ ./bin/start-all.sh
或是
cd ~/owt-server-4.3.1/dist && \ ./bin/restart-all.sh
安裝 certbot 以及申請 SSL 憑證
apt-get -y install snapd snap install core snap refresh core snap install --classic certbot ln -s /snap/bin/certbot /usr/bin/certbot
編輯
/root/owt-server-4.3.1/dist/management_api/management_api.toml
調整 pfx 的位置
產生好的 cert 要轉成 pfx 格式
PASSWORD=password openssl pkcs12 -export -out your-domain.pfx -inkey "privkey.pem" -in "cert.pem" -certfile "fullchain.pem" -password "pass:$PASSWORD"
要修改下面四個設定檔案
management_api/management_api.toml portal/portal.toml webrtc_agent/agent.toml management_console/management_console.toml
修改後都要個別執行其中的 initcert.js
management_api/initcert.js portal/initcert.js webrtc_agent/initcert.js management_console/initcert.js
安裝 stun
apt-get -y install coturn systemctl enable coturn systemctl start coturn
編輯 /etc/default/coturn
設定 TURNSERVER_ENABLED=1