From 12dd046d2b84a7a2e66feaa00beb1d3a4ad4cfad Mon Sep 17 00:00:00 2001 From: Charbel Abi Daher Date: Tue, 3 May 2022 00:30:50 +0300 Subject: Added Security section to article --- jitsi.html | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 53 insertions(+), 3 deletions(-) diff --git a/jitsi.html b/jitsi.html index 442f6fd..ad15404 100644 --- a/jitsi.html +++ b/jitsi.html @@ -113,11 +113,61 @@ ufw enable

When you create a video chatroom, its address will appear as meet.example.org/yourvideochatname and can be shared as such.

-

Security

+

Security

+ +

+ By default, anyone who has access to meet.example.org will be able to create a chatroom. You probably don't want that, so you'll need to set up some authentication. The simplest option is to handle authentication through the local Prosody user database. +

+ +

Prosody configuration

+

+ First, we need to enable password authentication in Prosody. Edit /etc/prosody/conf.avail/meet.example.org.cfg.lua, and locate this block: +

VirtualHost "meet.example.org"
+    authentication = "anonymous"
+ And change the authentication mode from "anonymous" to "internal_hashed". +

+

+ Then, to enable guests to login and join your chatrooms, add the following block after the one you just edited: +

VirtualHost "guest.meet.example.org"
+    authentication = "anonymous"
+    c2s_require_encryption = false
+

+ +

Jitsi Meet configuration

- The default Jitsi configuration will allow anyone accessing your site to create a video chatroom. If you want to only allow certain people to create rooms, you can check out how to add authentication here in the original documentation. + Next, in /etc/jitsi/meet/meet.example.org-config.js, uncomment the following line: +

var config = {
+    hosts: {
+        // anonymousdomain: 'guest.jitsi-meet.example.com',
+    },
+}
+
+ And change 'guest.jitsi-meet.example.com' to 'guest.meet.example.org'.

- + +

Jicofo configuration

+

+ Finally, we configure Jicofo to only allow the creation of conferences when the request is coming from an authenticated user. To do so, add the following authentication section to /etc/jitsi/jicofo/jicofo.conf: +

jicofo {
+  authentication: {
+    enabled: true
+    type: XMPP
+    login-url: meet.example.org
+ }
+

+ +

Create users in Prosody and restart the services

+

+ You now need to register some users in Prosody, you can do so manually using prosodyctl: +

prosodyctl register <username> meet.example.org <password>
+

+

+ Finally, restart prosody, jicofo, and jitsi-videobridge2: +

systemctl restart prosody
+systemctl restart jicofo
+systemctl restart jitsi-videobridge2
+

+

More info

-- cgit v1.2.3