Skip to content

Get Started English

Entwicklung edited this page Apr 16, 2023 · 20 revisions

Recomondations:

  • Keycloak SSO Server (If you don`t know what a keycloak is, I would recomend you to install the docker version Docker Installation )
    • Realm, URL, Client ID, Client Secret
  • MYSQL Database
  • Ubuntu 22 OS

1. Download or Git Clone

Go into /var/www/html

cd /var
mkdir wwww
cd www

Download the documents as a .ZIP archive to your local PC or directly to the server via SSH using Git Clone to clone the repo. sudo wget https://github.com/H2-invent/jitsi-admin/archive/refs/heads/master.zip unzip jitsi-admin-master.zip mv jitsi-admin-master jitsi-admin

Unzip the ZIP archive to the desired location and continue the installation via the server (SSH) console.

All SRC and template files are included in this archive. The database must be created and set up separately later.

2. create database ore use sqlite

The default database is a sqlite Create an empty mySQL database. The mySQL user must have all rights for this database.

    sudo apt install mysql-server
    sudo systemctl start mysql.service
    mysql
    CREATE DATABASE jitsi_admin;
    CREATE USER 'jitsiadmin'@'localhost' IDENTIFIED  BY 'add_strong_password';
    GRANT ALL PRIVILEGES ON jitsi_admin.* TO 'jitsiadmin'@'localhost';
    FLUSH PRIVILEGES;
    exit;

3. start setup pipeline

After the setup is complete, run the pipeline to create missing folders and adjust permissions. It is important that the cache and log folders have the correct permissions of the Apache user, because Symfony has to write to these folders.

sudo bash install.sh

At least PHP 8.1 is needed

3.1 Config Websocket secrets

replace

4. NGINX CONFIGURATION

For the nginx server a VirtualHost Config is still needed.

Nginx VirtualHost Config

nano /etc/nginx/sites-enabled/jitsi-admin.conf
....
server_name <mydomain.com>; #replace <mydomain.com> with your domain
.....

6. server hardening

It is up to the operator's discretion to protect the server against hacking.

Use server to run in a private cloud and keep the attack vectors as low as possible. Deploy server firewall and nginx load ballancer for better availability. Install auditd on the servers to keep track of possible configuration changes. Use Fail2Ban for more controlled SSH access on the servers Configure ssh key based SSH access.

7. Create Cron jobs

some tasks have to done in regular intervalls. To enable the cronjob add thi command to you ctrontab: * * * * * /var/www/jitsi-admin/bin/console cron:run 1>> /dev/null 2>&1 After this add the following cronjobs to the application by change to the app directory (/var/www/jitsi-admin) and enter the following command:

8. Setup your first jitsi meeting

Visit this page