準(zhǔn)備工作
一個(gè)域名;
一個(gè)有公網(wǎng)的服務(wù)器或者云服務(wù)器;
擁有root或者sudo權(quán)限。
安裝實(shí)操
本次實(shí)例的環(huán)境
goddady的域名,AWS的免費(fèi)服務(wù)器(Ubuntu20)
安裝操作
安裝AWS服務(wù)器,本次安裝的操作系統(tǒng)是Ubuntu20,對(duì)于ssh怎么登陸自行解決。
把goddady的域名和ASW的公網(wǎng)IP綁定,公網(wǎng)IP就是ssh登陸的ip地址。
- 系統(tǒng)環(huán)境準(zhǔn)備
sudo apt update
sudo apt full-upgrade
- jitsi需要的環(huán)境準(zhǔn)備
sudo apt install gnupg2 nginx-full openjdk-8-jdk
sudo apt install apt-transport-https
- 源準(zhǔn)備
sudo apt-add-repository universe
sudo apt update
- jitsi源下載準(zhǔn)備
curl https://download.jitsi.org/jitsi-key.gpg.key | sudo sh -c 'gpg --dearmor > /usr/share/keyrings/jitsi-keyring.gpg'
echo 'deb [signed-by=/usr/share/keyrings/jitsi-keyring.gpg] https://download.jitsi.org stable/' | sudo tee /etc/apt/sources.list.d/jitsi-stable.list > /dev/null
# update all package sources
sudo apt update
- jitsi-meet安裝
sudo apt install jitsi-meet
這中間需要填寫(xiě)域名,比如godaddy注冊(cè)的域名為meet.block.xyz,這里就填寫(xiě)這個(gè)。
另外一個(gè)需要選擇的是https的證書(shū),默認(rèn)選擇就可以,后面再重新生成,命令為
sudo /usr/share/jitsi-meet/scripts/install-letsencrypt-cert.sh
這里需要填寫(xiě)郵件,用來(lái)接收相關(guān)資訊,主要是這個(gè)證書(shū)免費(fèi),有過(guò)期時(shí)間提醒,需要手動(dòng)續(xù)簽。
- 配置安全組
80 TCP - for SSL certificate verification / renewal with Let's Encrypt
443 TCP - for general access to Jitsi Meet
10000 UDP - for general network video/audio communications
22 TCP - if you access you server using SSH (change the port accordingly if it's not 22)
3478 UDP - for quering the stun server (coturn, optional, needs config.js change to enable it)
5349 TCP - for fallback network video/audio communications over TCP (when UDP is blocked for example), served by coturn
- 程序重啟
sudo service jicofo restart
sudo service jitsi-videobridge2 restart
sudo service prosody restart
sudo service nginx restart
- jitsi-meet卸載
sudo apt purge jigasi jitsi-meet jitsi-meet-web-config jitsi-meet-prosody jitsi-meet-turnserver jitsi-meet-web jicofo jitsi-videobridge2
這樣就完全安裝完成。
問(wèn)題
問(wèn)題1:用公網(wǎng)的虛擬云服務(wù)器進(jìn)行安裝完成后,可能會(huì)出現(xiàn)chrome打開(kāi)meet.block.xyz沒(méi)有反應(yīng)?
原因:meet.block.xyz域名需要把主機(jī)的hostname和dnsdomainname修改為對(duì)于網(wǎng)址。如果貿(mào)然修改/etc/hostname可能會(huì)無(wú)效,因?yàn)閷?duì)于多數(shù)的虛擬云主機(jī)是不支持修改hostname,需要修改/etc/cloud/cloud.cfg中的preserve_hostname: true
執(zhí)行dnsdomainname和hostnamectl查看,sudo hostnamectl set-hostname meet.block.xyz設(shè)置
/etc/hosts中要有127.0.0.1 meet.block.xyz meet
其他:
sudo hostnamectl set-hostname "Myfreax's laptop" --pretty
靜態(tài)主機(jī)名存儲(chǔ)在/etc/hostname中,pretty主機(jī)名存儲(chǔ)在/etc/machine-info文件中。
問(wèn)題2:可能在解決問(wèn)題1之后可能還是無(wú)法訪(fǎng)問(wèn)meet.block.xyz?
原因:因?yàn)槎鄶?shù)的虛擬云主機(jī)是通過(guò)vhost配置的網(wǎng)絡(luò),主機(jī)會(huì)有兩個(gè)網(wǎng)絡(luò),一個(gè)公網(wǎng),一個(gè)私網(wǎng),公網(wǎng)就是ssh登陸的網(wǎng)址,私網(wǎng)用ip a查看,局域網(wǎng)的那個(gè)ip就是的。
sudo vim /etc/jitsi/videobridge/sip-communicator.properties
最后新增兩個(gè)參數(shù):
org.ice4j.ice.harvest.NAT_HARVEST_LOCAL_ADDRESS=云私網(wǎng)
org.ice4j.ice.harvest.NAT_HARVEST_PUBLIC_ADDRESS=云公網(wǎng)
高級(jí)設(shè)置
用戶(hù)設(shè)置
啟動(dòng)Secure domain功能, 限制有賬號(hào)的人才能開(kāi)新會(huì)議室
編輯/etc/prosody/conf.avail/jitsi4james.ddns.net.cfg.lua,
將認(rèn)證方式方式由anonymous改為internal_plan
并加入:(其他人可以加入)
VirtualHost "guest.jitsi4james.ddns.net"
authentication = "anonymous"
c2s_require_encryption = false
編輯/etc/jitsi/meet/jitsi4james.ddns.net-config.js,加入
anonymousdomain: 'guest.jitsi4james.ddns.net',
systemctl status
其他
證書(shū)自動(dòng)更新
sudo apt install certbot
sudo /usr/share/jitsi-meet/scripts/install-letsencrypt-cert.sh
生成的證書(shū)位置:/etc/letsencrypt/live/example.com/
查看nginx配置文件(/etc/nginx/sites-enabled/example.com)內(nèi)的證書(shū)路徑是否正確,如果不對(duì)則手工修改為如下配置:
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
從letsencrypt申請(qǐng)的證書(shū)默認(rèn)有效期是90天,修改或新增腳本/etc/cron.weekly/letsencrypt-renew,以便自動(dòng)更新申請(qǐng)新的證書(shū),腳本內(nèi)容如下:
#!/bin/bash
/usr/local/sbin/certbot-auto renew --webroot -w /usr/share/jitsi-meet >> /var/log/le-renew.log
可以通過(guò)如下命令能否執(zhí)行成功測(cè)試證書(shū)更新功能是否生效:
certbot-auto renew --dry-run --webroot -w /usr/share/jitsi-meet
文件位置
文件:
jicofo:/etc/jitsi/jicofo
jitsi-videobridge: /etc/jitsi/videobridge
jitsi-meet: /etc/jitsi/meet
xmpp: /etc/prosody/
日志:
Jitsi-videobridge:/var/log/jitsi/jvb.log
Jicofo: /var/log/jitsi/jicofo.log
xmpp服務(wù): /var/log/prosody/prosody.err、/var/log/prosody/prosody.log
安裝noip client
cd /usr/local/src
wget http://www.no-ip.com/client/linux/noip-duc-linux.tar.gz
tar xzf noip-duc-linux.tar.gz
cd noip-2.1.9-1
make install
配置noip自動(dòng)啟動(dòng)
sudo chmod 777 /usr/local/etc/no-ip2.conf
sudo nano /etc/init.d/noip
#######################################################
#! /bin/sh
case "$1" in
start)
echo "Starting noip2"
/usr/local/bin/noip2
;;
stop)
echo -n "Shutting down noip2"
for i in `noip2 -S 2>&1 | grep Process | awk '{print $2}' | tr -d ','`
do
noip2 -K $i
done
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
esac
exit 0
#######################################################
sudo /etc/init.d/noip stop
sudo /etc/init.d/noip start
sudo nano /etc/rc.local中加上
/etc/init.d/noip start
結(jié)果
電腦和手機(jī)app均可使用,對(duì)于性能要求,目前沒(méi)有測(cè)試。
參考
1.官方快速安裝
歡迎交流,wechat:tlxbp930
https://hellolinux.xyz