diyhosting/jitsi.html

127 lines
5.3 KiB
HTML
Raw Normal View History

2021-08-01 02:00:20 +00:00
<!-- <!DOCTYPE html> -->
<html lang="en">
<head>
2021-10-10 21:31:21 +00:00
<title>Jitsi Video Chat &ndash; diyhosting.bhh.sh</title>
2021-10-10 21:55:08 +00:00
<!--# include file=".nav.html" -->
2021-08-01 02:00:20 +00:00
</head>
<body>
2021-08-03 17:00:43 +00:00
<header><h1>Jitsi Video Chat</h1></header>
2021-08-01 02:00:20 +00:00
<nav></nav>
<main>
2021-08-03 17:00:43 +00:00
<img src="pix/jitsi.svg" alt="Jitsi" class=titleimg>
2021-08-01 02:00:20 +00:00
<p>
2021-08-03 17:00:43 +00:00
<dfn>Jitsi</dfn> is a set of open-source projects that allows you to easily build and deploy secure video conferencing solutions.
2021-08-01 02:00:20 +00:00
</p>
<p>
2021-08-03 17:00:43 +00:00
Is really easy to install, and also a really good private, federated and libre alternative to Zoom or other video conferencing software.
2021-08-01 02:00:20 +00:00
You can create calls just by typing the URL, and loging-in is not necessary.
</p>
2021-08-03 17:00:43 +00:00
<h2>Dependencies and Installation</h2>
2021-08-01 02:00:20 +00:00
2021-08-03 17:00:43 +00:00
<p>First, install some dependencies:</p>
2021-08-01 02:00:20 +00:00
2021-09-14 18:09:06 +00:00
<pre><code>apt install gpg apt-transport-https nginx python3-certbot-nginx</code></pre>
2021-08-01 02:00:20 +00:00
<p>Jitsi has its own package repository, so let's add it.</p>
2021-08-03 17:00:43 +00:00
<pre class=wide><code>curl https://download.jitsi.org/jitsi-key.gpg.key | gpg --dearmor &#62; /usr/share/keyrings/jitsi-keyring.gpg
echo 'deb [signed-by=/usr/share/keyrings/jitsi-keyring.gpg] https://download.jitsi.org stable/' > /etc/apt/sources.list.d/jitsi-stable.list
apt update -y</code></pre>
2021-08-01 02:00:20 +00:00
<p>
2021-09-06 20:59:26 +00:00
Ok. So now we can install Jitsi, but before we do that, let's setup the firewall <code>ufw</code>, in case you
2021-08-01 02:00:20 +00:00
have it enabled, and the SSL certificate.
</p>
2021-08-03 17:00:43 +00:00
<h2>Enable Required Ports</h2>
2021-08-01 02:00:20 +00:00
2021-08-03 17:00:43 +00:00
<p>If you are using <a href="ufw.html">ufw</a> or another firewall, there are several ports we need to ensure are open:</p>
<pre><code>ufw allow 80/tcp
ufw allow 443/tcp
ufw allow 10000/udp
ufw allow 3478/udp
ufw allow 5349/tcp
ufw enable</code></pre>
<p>For your information, these allow the following:</p>
2021-08-01 02:00:20 +00:00
<ul>
2021-08-03 17:00:43 +00:00
<li>80 TCP &ndash; Certbot.</li>
<li>443 TCP &ndash; General access to Jitsi Meet.</li>
<li>10000 UDP &ndash; General network video/audio communications.</li>
<li>3478 UDP &ndash; Quering the stun server (coturn, optional, needs config.js change to enable it).</li>
2021-08-01 02:00:20 +00:00
<li>
2021-08-03 17:00:43 +00:00
5349 TCP &ndash; Fallback network video/audio communications over TCP (when UDP is blocked for example), served by coturn.
2021-08-01 02:00:20 +00:00
</li>
</ul>
<h2>SSL certificate</h2>
<p>
I'll be using <a href="./certbot.html" target="blank">certbot</a> and
2021-08-03 17:00:43 +00:00
<a href="./nginx.html" target="blank">Nginx</a> to generate a certificate
for the Jitsi subdomain to allow encrypted connections.
2021-08-01 02:00:20 +00:00
</p>
2021-08-03 17:00:43 +00:00
<pre><code>certbot --nginx certonly -d <strong>meet.example.org</strong></code></pre>
2021-08-01 02:00:20 +00:00
<p>
2021-08-03 17:00:43 +00:00
We will not create an Nginx config file for Jitsi because the Jitsi package we will be installing will do that automatically.
2021-08-01 02:00:20 +00:00
</p>
<h2>Installation</h2>
2021-08-03 17:00:43 +00:00
<p>To begin the installation process, just run:</p>
2021-08-01 02:00:20 +00:00
<pre><code>apt install jitsi-meet</code></pre>
<p>
It will ask you for your <code><strong>hostname</strong></code
>; there you'll need to input the subdomain you have just added to Nginx, like
2021-08-03 17:00:43 +00:00
<code><strong>meet.example.org</strong></code>.
2021-08-01 02:00:20 +00:00
</p>
<p>For the SSL certificate, choose <code>I want to use my own certificate</code>.</p>
<p>
When it ask you for the certification key and cert files, input
2021-08-03 17:00:43 +00:00
<code>/etc/letsencrypt/live/<strong>meet.example.org</strong>/privkey.pem</code> and
<code>/etc/letsencrypt/live/<strong>meet.example.org</strong>/fullchain.pem</code> respectively.
2021-08-01 02:00:20 +00:00
</p>
2021-08-03 17:00:43 +00:00
<h2>Using Jitsi</h2>
2021-08-01 02:00:20 +00:00
2021-08-03 17:00:43 +00:00
<img src="pix/jitsi-01.webp" alt="Jitsi once installed">
2021-08-01 02:00:20 +00:00
2021-08-03 17:00:43 +00:00
<p>Jitsi can be used in a browser by then just going to <code>meet.example.org</code>.</p>
2021-08-01 02:00:20 +00:00
2021-08-03 17:00:43 +00:00
<p>Note that there are also Jitsi clients for all major platforms:</p>
<ul>
<li><a href="https://desktop.jitsi.org/Main/Download.html">Desktop</a> (Windows, MacOS, GNU/Linux)</li>
<li>Android (<a href="https://f-droid.org/en/packages/org.jitsi.meet/">F-Droid</a> and <a href="https://play.google.com/store/apps/details?id=org.jitsi.meet">Google Play</a>)</li>
<li><a href="https://apps.apple.com/us/app/jitsi-meet/id1165103905">iPhone/iOS</a></li>
</ul>
2021-08-01 02:00:20 +00:00
<p>
2021-09-06 20:59:26 +00:00
<strong>When using a Jitsi app for the first time, remember to go to the "Settings" menu and change your server name to the Jitsi site you just created.</strong>
2021-08-01 02:00:20 +00:00
</p>
2021-08-03 17:00:43 +00:00
<p>When you create a video chatroom, its address will appear as <code><strong>meet.example.org/yourvideochatname</strong></code> and can be shared as such.</p>
<h2>More info</h2>
2021-08-01 02:00:20 +00:00
<p>
2021-08-03 17:00:43 +00:00
This article is based on <a href="https://jitsi.github.io/handbook/docs/devops-guide/devops-guide-quickstart" target="blank">the original documentation</a>. There you can find more details and configurations.
2021-08-01 02:00:20 +00:00
</p>
2021-08-03 17:00:43 +00:00
<ul>
<li>Written by <a href="https://josefabio.com" target="blank">Jose Fabio.</a> Donate Monero: <code class="crypto">484RLdsXQCDGSthNatGApRPTyqcCbM3PkM97axXezEuPZppimXmwWegiF3Et4BHBgjWR7sVXuEUoAeVNpBiVznhoDLqLV7j</code> <a href="https://josefabio.com/figures/monero.jpg" class="crypto" target="blank">[QR]</a></li>
<li>Edited and revised by <a href="https://lukesmith.xyz">Luke</a>.</li>
</ul>
2021-08-01 02:00:20 +00:00
</main>
2021-10-10 21:31:21 +00:00
<!--# include file=".footer.html" -->
2021-08-01 02:00:20 +00:00
</body>
</html>