Educação Aberta/Plataformas livres
Esse texto está desatualizado ou precisa de revisão em conteúdo ou forma para que possa ser utilizado. Veja as atuais discussões, sugestões e proponha melhorias na aba de discussão. |
Esse é um guia técnico voltado para instalação de serviços de comunicação livre. Sugestões de melhoria nos processos, alternativas, pegadinhas, soluções, são bem vindas. Tentamos ser detalhados para que alguém com nível técnico médio possa seguir a orientação. Sugestões para melhoria de segurança (firewall, settings, coisas a ficar atento, etc) são também muito bemvindas.
Mumble
editarFerramenta livre para comunicação priorizando áudio e texto. Pode ser usado com app em celulares e computadores. Usa salas de b
Clientes testados e funcionando
editar- Linux
- Android (Plumber)
Centos 7
editarOrientações funcionais em https://wiki.mumble.info/wiki/Install_CentOS7
Debian 9
editarSó instalar pacote mumble-server
Problemas
editarAplicativo de Android funciona muito bem mas é muito antigo
- Setup inicial (elaborar)
Configurações de Privacidade
Nas configurações habilitar:
obfuscate=true
Para que os endereços IP's fiquem "não-reconhecíveis"
Outras opções em : https://superuser.com/questions/455520/is-mumble-safe-privacy-wise
Mumble-Web
editarPermite acesso ao mumble com qualquer browser, sem uso de apps. Veja orientações gerais e download.
CentOS
editar- Usar
npm
, que instala nousr/lib/node_modules
- Baixar e instalar websockify
- Remover do
setup.py
:install_requires=['numpy']
já que CentOS roda versão mais antiga de Python que não pode ser atualizada, atrapalha yum. python setup.py install
(com root)- Criar certificados Letsencrypt (
sudo certbot certonly --apache
). Orientações sobre Certbot. - Setup Apache proxy (abaixo, modificado com base nesse post).
<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerAdmin contato@aberta.org.br
ErrorLog /etc/httpd/logs/error.log
CustomLog /etc/httpd/logs/access.log combined
DocumentRoot /usr/lib/node_modules/mumble-web/dist
ServerName XXX-XXX
SSLEngine on
Include /etc/letsencrypt/options-ssl-apache.conf
SSLCertificateFile /etc/letsencrypt/live/XXX-XXX/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/XXX-XXX/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/XXX-XXX/chain.pem
RewriteEngine On
ProxyPass /.wellknown !
#MUMBLE
RewriteCond %{HTTP:Connection} Upgrade [NC]
RewriteCond %{HTTP:Upgrade} websocket [NC]
RewriteRule / ws://localhost:64737/ [P,L]
ProxyPass /voip/ http://localhost:64737
ProxyPassReverse /voip/ http://localhost:64737
<Directory /usr/lib/node_modules/mumble-web/dist>
Require all granted
</Directory
</VirtualHost>
</IfModule>
- Dar permissões pro usuário e grupo
apache
(ou equivalente) no diretório e arquivosmurmur-web
- Editar configurações no
/etc/murmur.ini
(welcome message, por exemplo) - Ligar serviço murmur com
systemctl start murmur.service
, e depoissystemctl start murmur.service
se quiser que rode sempre que iniciar o servidor. - Ligar websockify com algo como:
websockify -v --ssl-target --cert /etc/letsencrypt/live/XXX-XXX/cert.pem --key /etc/letsencrypt/live/XXX-XXX/privkey.pem --web=/usr/lib/node_modules/mumble-web/dist/ 64737 localhost:64738
- Acessar o site.
Debian 9
editar- Instalação via
apt-get install mumble-server
e dpkg edpkg-reconfigure mumble-server
. Orientações gerais e outra útil. - Configurar arquivo mumble-server no nginx, modelo funcional abaixo, assumindo que nginx escuta SSL na porta 4444. Orientações sobre arquivos de configuração no nginx.
server {
listen 4444 ssl http2;
listen [::]:4444 ssl http2;
server_name mumble.aberta.org.br;
ssl_certificate /etc/letsencrypt/live/mumble.aberta.org.br/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/mumble.aberta.org.br/privkey.pem;
location / {
root /usr/lib/node_modules/mumble-web/dist/;
}
location /demo {
proxy_pass http://localhost:64737;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
}
}
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
server {
listen 80;
server_name mumble.aberta.org.br;
rewrite ^(.*) https://$server_name$1 permanent;
}
- Crie um serviço (algo como
mumble-web.service
dentro de/etc/systemd/system/
). Para entender serviços, veja essas orientações.
[Unit]
Description=Mumble web interface
Documentation=https://github.com/johni0702/mumble-web
Requires=network.target
After=syslog.target network.target
[Service]
Type=simple
User=root
Restart=always
RestartSec=1
ExecStart=websockify --web=/usr/lib/node_modules/mumble-web/dist/ 64737 <seu servidor>:64738 --$
[Install]
WantedBy=multi-user.target
- Rode o serviço usando
systemctl start mumble-web
, e para começar automaticamente quando rodar o servidor,systemctl enable mumble-web
.
Jitsi
editarSistema livre para comunicação priorizando video/webconferência com grupos pequenos..
Duas possíveis abordagens de instalação:
* docker
* instalado -> voltado para sistemas debian-based
Debian 9
editar- Docker c/SSL - ok
- Sem Docker - ok (somente instalar 1 pacote)
Centos 7
editar- Docker - não funciona
- Sem docker - não funciona
Jibri
editarPara gravar conferências
- Não funciona com docker. Na instalação com o debian 9 não parece tão trivial de instalar
Problemas
editar- Docker + debian 9 + jibri (streaming/recording) -> não funcionou
- Docker + debian 9 + etherpad -> não funcionou
Uso de banda e recursos
editar- 1.5 hora de conferencia ~ 8 Gb
O único uso considerável é de rede. Pra cada um usuário conectado, consome mais da banda. Ver essa referência.
editarPontos de atenção
editar- Usando docker, sempre que mudar o .env apagar a pasta de configuração
- Usando docker não regenerar a imagem várias vezes com certificado, pois existe um limite de certificados emitidos por semana pelo let's encrypt
Configurações de Privacidade
Desabilitar o uso de requisição de terceiros
disableThirdPartyRequests: true
Nextcloud talk
editarSistema de conferências em vídeo. Instala como plugin do Nextcloud
- CentOS - Atualizar até a última versão do Nextcloud e habilitar plugin. Sem maiores problemas.
OBS + Icecast
editarSistema para transmissão de vídeo steaming usando OBS e Icecast.
Debian 9
editar- apt-install icecast2, seguir instruções de configuração.
- Testado usando o vlc como player
Servidores Icecast gratuito/livre
editarOrientações
editar
Etherpad
editarConfigurações de privacidade
Desabilitar registro de IP:
"disableIPlogging": true,
Informações gerais e links
editar- Tabela comparativa de ferramentas de conferência
- https://github.com/jitsi/jitsi-meet/wiki/Jitsi-Meet-Instances
- https://ladatano.partidopirata.com.ar/jitsimeter/
- https://pads.ccc.de/jitsiliste
- https://meet.ufrj.br/