> ## Content Index
> Fetch the complete content index at: https://nerdweek.com.br/llms.txt
> Use this file to discover other available public pages before exploring further.

# Configurando o Jitsi em servidor privado para uso pessoal ou Foundry VTT
- URL: https://nerdweek.com.br/configurando-o-jitsi-em-servidor-privado-para-uso-pessoal-ou-foundry-vtt/
- Published: 2021-04-19T19:58:28.000Z
- Updated: 2021-04-19T19:59:27.000Z
- Description: Nesta era digital de mestres e aventureiros nossos meios de comunicação ficaram cada vez mais dependentes. O problema é que cada plataforma possuí seus pros e contras hoje vamos falar de uma alternativa diferente o Jitsi.
- Author: Hugo Prudente
- Tags: Foundry VTT, Tutorial, Jitsi, Meeting, conferência, 2021

Nesta era digital de mestres e aventureiros nossos meios de comunicação ficaram cada vez mais dependentes. O problema é que cada plataforma possuí seus pros e contras hoje vamos falar de uma alternativa diferente o Jitsi. 

Em minha campanha pessoal alguns jogadores estavam tendo problemas com o Discord (audio/video) devido ao consumo excessivo de recursos, fazendo-os ter uma péssima experiencia de jogo, que é o que não queremos. 

Com isso decidimos testar o Jitsi e a integração com o Foundry VTT e por sinal conseguimos resolver quase todos nossos problemas de performance, agora vamos ao que interessa!

Caso você queria utilizar o servidor publico direto no Foundry VTT cliquei [**aqui**](#configurando-no-foundry-vtt)**!**

Para continuar com a instalação do seu proprio servidor Jitsi continue lendo!

---

Neste tutorial eu estou utilizando os seguintes programas como base:

- [Windows SubSystem for Linux (WSL2)](https://docs.microsoft.com/en-us/windows/wsl/install-win10?ref=nerdweek.com.br)
- [Windows Terminal](https://github.com/microsoft/terminal?ref=nerdweek.com.br)

Este tutorial funciona para qualquer **Ubuntu** ou **Debian** seja Cloud, VPS ou Servidor Físico Privado.

> Para editar as configurações eu utilizo o VIM e Tmux. Para utilizar minhas configurações você pode utilizar meu [Ansible Playbook ](https://github.com/hugoprudente/box-dev-playbook/issues?ref=nerdweek.com.br)e meu [Dotfiles](https://github.com/hugoprudente/dotfiles?ref=nerdweek.com.br)

## Requisitos

- Um domínio registrado e configurado.
- Um servidor Ubuntu ou Debian
- Docker & docker-compose

### Instalando Docker & docker-compose

Nosso Setup completo sera baseado em Docker que e um sistema de contêineres.

**O que e docker?**

> De forma bem resumida, podemos dizer que o Docker é uma plataforma aberta, criada com o objetivo de facilitar o desenvolvimento, a implantação e a execução de aplicações em ambientes isolados. Foi desenhada especialmente para disponibilizar uma aplicação da forma mais rápida possível.[(Gomes R., *Docker Para Desenvolvedores*)](https://leanpub.com/dockerparadesenvolvedores?ref=nerdweek.com.br)

Instalar o Docker no seu servidor e super simples basta seguir os passos da documentação oficial, eu não irei cobrir isso aqui pois ha centenas de tutoriais sobre isso na internet. Eu particularmente recomendo os da **[LinuxTips](http://linuxtips.com.br/?ref=nerdweek.com.br)**.

Documentação oficial

- [https://docs.docker.com/engine/install/debian/](https://docs.docker.com/engine/install/debian/?ref=nerdweek.com.br)
- [https://docs.docker.com/engine/install/ubuntu/](https://docs.docker.com/engine/install/ubuntu/?ref=nerdweek.com.br)

Tambem vamos precisar do Docker Compose que precisa de somente 2 comandos para instalar, conforme a [documentação oficial.](https://docs.docker.com/compose/install/?ref=nerdweek.com.br) 

```bash
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

```

![](https://cdn.nerdweek.com.br/uploads/2021/04/instalando-docker.png)

## Instalando e Configurando o Docker Jitsi Meet

Instalar o Docker Jitsi Meeting e bem simples voce pode fazer isso de duas maneiras:

O repositório oficial: [https://github.com/jitsi/docker-jitsi-meet](https://github.com/jitsi/docker-jitsi-meet?ref=nerdweek.com.br)

**Utilizando o git**

Se voce esta familiarizado com o a ferramenta de controle de Versionamento Git basta voce executar o seguinte passo

```
 git clone https://github.com/jitsi/docker-jitsi-meet && cd docker-jitsi-meet
 git checkout tags/stable-5765 -b stable-5765
```

**Utilizando arquivo compactado tar.gz**

```bash
# Faca download da ultima versao do docker-gitsi
curl -o docker-jitsi-meet.tar.gz https://codeload.github.com/jitsi/docker-jitsi-meet/tar.gz/refs/tags/stable-5765
# Descomprima o arquivo para a pasta docker-jitsi-meet
tar -xvzpf docker-jitsi-meet.tar.gz ; mv docker-jitsi-meet-stable-5765/ docker-jitsi-meet
```

Agora que temos o Jitsi repositório disponível podemos começar as configurações. 

Primeiro precisamos criar o arquivo de configuracao do Jitsi copiando do exemplo com o seguinte comando.

![](https://cdn.nerdweek.com.br/uploads/2021/04/jitsi_baixado.png)

```bash
cp env.example .env
```

> Um arquivo oculto no **GNU/Linux** é identificado por um "." no inicio do nome (por exemplo, `.bashrc`). Arquivos ocultos não aparecem em listagens normais de diretórios, deve ser usado o comando `ls -a` para também listar arquivos ocultos. [(Maziolli G, Guia Foca Linux) ](https://www.guiafoca.org/guiaonline/iniciante/ch02s02.html?ref=nerdweek.com.br)

Agora precisamos criar todos os diretórios que o Jitsi precisa com o comando

```bash
mkdir -p ~/.jitsi-meet-cfg/{web/letsencrypt,transcripts,prosody/config,prosody/prosody-plugins-custom,jicofo,jvb,jigasi,jibri}

```

Agora podemos editar o arquivo de configuração (**.env**) e adicionar as informações necessárias para nossa configuração de um servidor seguro.

 A principal configuração e com seu editor favorito (VIM) e procure as linhas abaixo e edite as. 

```bash
# Exposed HTTP port
HTTP_PORT=80 #tutorial
--
# Exposed HTTPS port
HTTPS_PORT=443 #tutorial
--
# Public URL for the web service (required)
PUBLIC_URL=https://meet.nerdweek.com.br:8443 #tutorial linha 45
--
# Enable Let's Encrypt certificate generation
ENABLE_LETSENCRYPT=1 #tutorial linha 75
--
# Domain for which to generate the certificate
LETSENCRYPT_DOMAIN=meet.nerdweek.com.br #tutorial linha 78
--
# E-Mail for receiving important account notifications (mandatory)
LETSENCRYPT_EMAIL=email@nerdweek.com.br #tutorial linha 81
--
# Enable authentication
ENABLE_AUTH=1 #tutorial linha 134
--
# Enable guest access
ENABLE_GUESTS=1 #tutorial linha 137
--
# Select authentication type: internal, jwt or ldap
AUTH_TYPE=internal #tutorial linha 140

```

As configurações acima fazem o seguinte:

- HTTP\_PORT, HTTPS\_PORT portas utilizadas precisam ser alteradas pois sao necessárias para o LetsEncrypt (Para deixar as portas padrões você precisa utilizar o Reverse Proxy.)
- PUBLIC\_URL - A URL onde o seu servidor sera acessível. (Nao irei cobrir configuração de domínio, pois varia de provedor pra provedor.)
- LETSENCRYPT - Cria um certificado SSL para a utilização do HTTPS seguro no seu Jitsi server a integração e feita internamente, e possível utilizar Proxy Reverso também e desabilitar essa configuração (Proxy Reverso não sera parte deste tutorial)
- ENABLE\_AUTH, ENABLE\_GUEST, AUTH\_TYPE - Isso habilita a necessidade de usuário autenticado para criar Meeting, e permite pessoas se juntarem a uma Meeting que foi criada por um usuário autenticado.

Agora precisamos gerar as chaves internas do Jitsi com o seguinte comando 

```bash
./gen-passwords.sh

```

Estamos na reta final, agora vamos iniciar os servicos do Jitsi utilizando o docker-compose 

```bash
docker-compose up -d
```

![](https://cdn.nerdweek.com.br/uploads/2021/04/jitsi_rodando.png)

Agora vamos adicionar nosso usuário padrão 

```bash
 docker exec -it docker-jitsi-meet_prosody_1 /bin/bash
 prosodyctl --config /config/prosody.cfg.lua register hugo.prudente meet.jitsi My$3cr37P4$$
```

## Testando o Jitsi

Para testar o Jitsi e muito simples abra a URL definida no passo anterior seu navegador favorito.

- Crie uma sala com um nome
- Utilize seu usuário e senha definido no passo anterior

Eureka!!!!

![](https://cdn.nerdweek.com.br/uploads/2021/04/jitsi_test_01.png)

![](https://cdn.nerdweek.com.br/uploads/2021/04/jitsi_test_02.png)

![](https://cdn.nerdweek.com.br/uploads/2021/04/jitsi_test_03.png)

Captura de tela com o Jitsi Disponível

Você pode também utilizar do seu celular com o aplicativo oficial, na GooglePlay ou no AppleStore

Se você não utiliza o Foundry VTT e só queria ter acesso ha um servidor privado de vídeo conferencia para falar com seus amigos e família você pode parar de ler por aqui :)

## Configurando no Foundry VTT

Na tela de configuração dos módulos procure por **JitsiWebRTC** e instale.

![](https://cdn.nerdweek.com.br/uploads/2021/04/jitsi_module_install.png)

fonte: nerdweek.com.br

Com seu mundo aberto vá na aba de Gerenciamento de Módulos (Manage Modules) e ative o Jitsi WebRTC client.

![](https://cdn.nerdweek.com.br/uploads/2021/04/jitsi_module_activation.png)

fonte: nerdweek.com.br

Agora em Configurações de Sistema (**Configure Settings**) na aba **Core Settings**, clique em **Configure Audio/Video** e mude de *Disabled* para **Audio/Video Enabled.**

> Para isso é necessário que voce possua o Certificado SSL (HTTPS) no seu Foundry VTT, esse passo não será apresentado neste tutorial.

![](https://cdn.nerdweek.com.br/uploads/2021/04/enabling_audio_to_yourgame.png)

fonte: nerdweek.com.br

O sistema ira recarregar e você terá acesso ao video e o audio, utilizando **o Jitsi Community Server!**

![](https://cdn.nerdweek.com.br/uploads/2021/04/audio_and_video.png)

fonte: Nerdweek.comb.r

Agora vamos a etapa de trocar para o nosso servidor :)

Novamente em Configurações de Sistema (**Configure Settings**) na aba **Core Settings**, clique em **Configure Audio/Video** e mude para aba server troque de *meet.jitsi* para **Custom Server.**

Agora vamos preencher com os dados que criamos anteriormente, usuario e senha no commando do **prosody** e o endereço do servidor da **PUBLIC\_URL.**

![](https://cdn.nerdweek.com.br/uploads/2021/04/changing_the_jitsi_server.png)

fonte: nerdweek.com.br

Clique em **save changes** e a tela ira recarregar e pronto você esta usando o novo server :)

![](https://cdn.nerdweek.com.br/uploads/2021/04/using_custom_jitsi_server.png)

fonte: nerdweek.com.br

Outros problemas podem ocorrer como toda e qualquer instalação, para suporte vocês podem me contactar no ****[Discord*](https://discord.gg/nSfUdJD?ref=nerdweek.com.br) *do Nerdweek*** ou no [**Discord**](https://discord.gg/XNC86FBnQ2?ref=nerdweek.com.br) **do Foundry VTT Brasil** *(Não Oficial)* **.**

---

> **Se você gostou deste conteúdo, por favor considere suportar o Nerdweek contribuindo para nosso [Patreon](https://www.patreon.com/nerdweekoficial?ref=nerdweek.com.br), [Apoia.se](https://apoia.se/nerdweek?ref=nerdweek.com.br) ou se inscrevendo no [Youtube](https://www.youtube.com/channel/UCmHJxYCTALCiklml%5F4RXxEw?ref=nerdweek.com.br) através do Premium ou na [Twitch.tv ](https://www.twitch.tv/nerdweek?ref=nerdweek.com.br)através do Prime. Nós também gostaríamos de convida-los para nos seguir no [Twitter](https://twitter.com/nerdweekblog?ref=nerdweek.com.br), [Instagram](https://www.instagram.com/nerdweekblog?ref=nerdweek.com.br) e [Facebook](https://www.facebook.com/nerdweek) compartilhar com seus amigos que amam RPG e juntar-se a nós na nossa comunidade no [Discord](https://discord.gg/nSfUdJD?ref=nerdweek.com.br), onde podemos discutir sobre este e muitos outros assuntos. Muito obrigado por ler!*