Secure Domain setup
Replace jitsi-meet.example.com with your hostname.
-
Prosody configuration : Enable anonymous login for guests
Open file,
/etc/prosody/conf.avail/[your-hostname].cfg.lua
Add this block after the
VirtualHost "[your-hostname]"
blockVirtualHost "guest.jitsi-meet.example.com" authentication = "anonymous" c2s_require_encryption = false
-
Jitsi Meet configuration
Addanonymousdomain
option in below file,
/etc/jitsi/meet/[your-hostname]-config.js
var config = { hosts: { domain: 'jitsi-meet.example.com', anonymousdomain: 'guest.jitsi-meet.example.com', ... }, ... }
-
Jicofo configuration
Open file,
/etc/jitsi/jicofo/jicofo.conf
Add authentication section,
jicofo { authentication: { enabled: true type: XMPP login-url: jitsi-meet.example.com } ...
-
Create users in Prosody
sudo prosodyctl register <username> jitsi-meet.example.com <password>
LDAP authentication
-
install the following packages
apt install sasl2-bin libsasl2-modules-ldap lua-cyrussasl
-
Prosody config
Open file,
/etc/prosody/conf.avail/[your-hostname].cfg.lua
Inside
VirtualHost "jitsi-meet.example.com"
make below changes- Change the authentication to cyrus
authentication = "cyrus"
- Add the
"auth_cyrus"
to modules_enabled - Add below lines also
cyrus_application_name = "xmpp"
allow_unencrypted_plain_auth = true
- Change the authentication to cyrus
- Configure saslauthd
-
Create the file
/etc/sasl/xmpp.conf
.If the folder sasl does not exist, create it and add below lines.
pwcheck_method: saslauthd
mech_list: PLAIN
- Create
/etc/saslauthd.conf
and add the following
ldap_servers: ldap://10.0.0.1 ldap_bind_dn: cn=Administrator,cn=Users,dc=foo,dc=bar ldap_bind_pw: PassW0rd ldap_search_base: dc=my,dc=search,dc=base ldap_filter: (sAMAccountName=%u) ldap_version: 3 ldap_auth_method: bind
Replace the IP with yours, as well as the search base and the Bind user/password - The example above has NO TLS enabled. If you want TLS enabled, add the following in addition
ldap_tls_key: /config/certs/meet.jit.si.key ldap_tls_cert: /config/certs/meet.jit.si.crt ldap_tls_check_peer: yes ldap_tls_cacert_file: /etc/ssl/certs/ca-certificates.crt ldap_tls_cacert_dir: /etc/ssl/certs
-
Adapt to your needs. Also, change the URL scheme from
ldap://
toldaps://
. Maybe you have to addldap_tls_ciphers:
,ldap_port:
as well. - Use another attribute than sAMAccountNam. A few filter examples:
- ldap_filter: (sAMAccountName=%u) searches inside the username field
- ldap_filter: (mail=%u) would allow you to eneter a email.
- Use ldap_filter: (mail=%u*) instead (note the * direct after the %u!), and tell your users to enter the portion before the @ sign of their mail address.
- ldap_filter: (sAMAccountName=%u) searches inside the username field
-
Open file,
/etc/default/saslauthd
Make below changes
Change START to yes Change MECHANISMS to ldap Change MECH_OPTIONS to /etc/saslauthd.conf
-
Restart services
sudo systemctl restart saslauthd
sudo systemctl restart prosody
- Run below command
chmod 777 /var/run/saslauthd/
usermod -aG sasl prosody
-
- Log file for debugging
tail -f /var/log/auth.log
Next :
Setup JWT authentication for Jitsi meet
How encryption works on Jitsi meet
Leave a Comment