HowTo: Install Jitsi Server for Videoconferencing/Chat messaging

Posted on Updated on

Jitsi Meet is a free, open source, secure, simple and scalable video conferencing solution.

Which allows creating client app embedded with the custom designed web application.

Jitsi Videobridge is an XMPP server component designed to run thousands of video streams from a single server — and it’s fully open source and WebRTC compatible.

Jitsi Meet is an Open Source WebRTC JavaScript application that uses Jitsi Videobridge to provide high quality, scalable video conferences.

 

Install Apache or nginix, else Install will install jitty as a fronting server.

apt-get install apache2
Configure Repository
wget https://download.jitsi.org/jitsi-key.gpg.key
apt-key add jitsi-key.gpg.key
echo 'deb https://download.jitsi.org stable/' > /etc/apt/sources.list.d/jitsi-stable.list

Install Jitsi
apt-get update
apt-get install jitsi-meet

Install Certificate 
/usr/share/jitsi-meet/scripts/install-letsencrypt-cert.sh

Provide Email ID for during installation

Restart services

service apache2 status
service jvb status

https://vc.domain.com

Enabled Authentication, so the authentication users are allowed to create rooms
https://github.com/jitsi/jicofo#secure-domain

Update the propertiy
vi /etc/jitsi/jicofo/sip-communicator.properties
org.jitsi.jicofo.auth.URL=XMPP:vc.domain.com

cp rpf /etc/prosody/conf.avail/domain.com.cfg.lua /etc/prosody/conf.avail/vc.domain.com.cfg.lua_original
vi /etc/prosody/conf.avail/vc.domain.com.cfg.lua

#Update below settings
authentication = "internal_plain"

#Execute command to create user
prosodyctl register <Loginuser>@vc.domain.com <Password>
#Restart Service
service jvb restart
service jicofo restart
service prosody restart


#Update few headers including CORS to avoid bosh client connectivity issue. 
vi /etc/apache2/site-available.vc.domain.com
<Location /http-bind>
        Header set Access-Control-Allow-Origin "*"
        Header set Access-Control-Allow-Credentials true
        Header set Access-Control-Allow-Methods  "GET,POST,OPTIONS"
        Header set Access-Control-Allow-Headers "DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type"
        Header add Strict-Transport-Security "max-age=15768000; includeSubDomains"
        Header always set X-Frame-Options ALLOW
        Header always set X-Content-Type-Options nosniff
 </Location>

Leave a comment