5.4 KiB
Configuração para Rede Local
Este guia explica como configurar o Gatoflix Media Center para uso em rede doméstica SEM exposição à internet.
Por que Let's Encrypt não funciona?
Let's Encrypt NÃO funciona em redes locais porque:
- Let's Encrypt precisa validar que você controla o domínio
- Servidores do Let's Encrypt acessam seu servidor via internet (porta 80 ou 443)
- Em rede local doméstica sem IP público acessível, isso é impossível
Opções para Rede Local
Opção 1: HTTPS com Certificados Auto-Assinados (Configuração Atual)
O Caddyfile está configurado para usar tls internal, que gera certificados auto-assinados automaticamente.
Vantagens:
- Conexão criptografada (HTTPS)
- Zero configuração adicional
- Funciona offline
Desvantagens:
- Navegador mostrará aviso de certificado não confiável
- Precisa aceitar o certificado manualmente em cada dispositivo
Como usar:
- Configure o
.envcomDOMAIN=media.local - Adicione entradas ao
/etc/hosts:
sudo nano /etc/hosts
# Adicione estas linhas:
127.0.0.1 plex.media.local
127.0.0.1 transmission.media.local
127.0.0.1 jackett.media.local
127.0.0.1 sonarr.media.local
127.0.0.1 radarr.media.local
127.0.0.1 bazarr.media.local
- Inicie os containers:
docker-compose up -d
-
Acesse via HTTPS:
https://plex.media.localhttps://sonarr.media.local- etc.
-
Aceite o aviso de segurança:
- Chrome/Edge: Clique em "Avançado" → "Continuar para media.local"
- Firefox: Clique em "Avançado" → "Aceitar o risco e continuar"
Opção 2: HTTP sem SSL (Mais Simples)
Se preferir evitar avisos de certificado, use HTTP puro (sem criptografia).
Vantagens:
- Sem avisos de certificado
- Acesso direto sem aceitar nada
Desvantagens:
- Conexão não criptografada
- Senhas trafegam em texto claro na rede
Como usar:
- Edite o
Caddyfilee comente todos os blocos HTTPS:
# plex.{$DOMAIN} {
# tls internal
# reverse_proxy plex:32400
# }
- Descomente os blocos HTTP no final do arquivo:
http://plex.{$DOMAIN} {
reverse_proxy plex:32400
}
http://transmission.{$DOMAIN} {
reverse_proxy transmission:9091
}
# ... etc
- Reinicie o Caddy:
docker-compose restart caddy
- Acesse via HTTP:
http://plex.media.localhttp://sonarr.media.local- etc.
Opção 3: Sem Caddy - Portas Diretas
Se não quiser usar proxy reverso, pode acessar diretamente pelas portas.
Como usar:
- Edite
docker-compose.ymle exponha as portas:
services:
sonarr:
ports:
- 8989:8989
radarr:
ports:
- 7878:7878
bazarr:
ports:
- 6767:6767
jackett:
ports:
- 9117:9117
- Remova ou pare o container do Caddy:
docker-compose stop caddy
- Acesse diretamente pelo IP:
http://localhost:8989(Sonarr)http://localhost:7878(Radarr)http://localhost:32400/web(Plex)- etc.
Acesso de outros dispositivos na rede
Configurar /etc/hosts em outros dispositivos
Linux/macOS:
sudo nano /etc/hosts
# Substitua 192.168.1.100 pelo IP do seu servidor
192.168.1.100 plex.media.local
192.168.1.100 sonarr.media.local
192.168.1.100 radarr.media.local
192.168.1.100 transmission.media.local
192.168.1.100 jackett.media.local
192.168.1.100 bazarr.media.local
Windows:
- Abra o Bloco de Notas como Administrador
- Abra:
C:\Windows\System32\drivers\etc\hosts - Adicione as mesmas linhas acima
Android:
- Requer root ou app como "Hosts Editor"
iOS:
- Requer jailbreak ou usar DNS local
Opção Melhor: DNS Local
Configure um servidor DNS local (Pi-hole, AdGuard Home, ou router DNS):
- Adicione registros A apontando para o IP do servidor:
plex.media.local → 192.168.1.100
sonarr.media.local → 192.168.1.100
radarr.media.local → 192.168.1.100
transmission.media.local → 192.168.1.100
jackett.media.local → 192.168.1.100
bazarr.media.local → 192.168.1.100
-
Configure DHCP do roteador para usar o DNS local
-
Todos os dispositivos da rede resolverão automaticamente!
mDNS/Avahi (Alternativa Avançada)
Para usar .local sem editar hosts:
- Instale Avahi no servidor:
sudo apt install avahi-daemon
-
Configure para responder por múltiplos nomes
-
Dispositivos Apple (macOS, iOS) resolverão automaticamente
-
Linux com avahi também resolve
-
Windows precisa de Bonjour Print Services
Resumo - Recomendação
Para uso doméstico simples:
- Use Opção 2 (HTTP sem SSL)
- Configure
/etc/hostsem cada dispositivo - OU configure DNS local no roteador
Para segurança adicional:
- Use Opção 1 (HTTPS com certificados auto-assinados)
- Aceite os certificados uma vez em cada navegador/dispositivo
- Conexão criptografada mesmo em rede local
Para máxima simplicidade:
- Use Opção 3 (sem Caddy)
- Acesse direto pelo IP:porta
- Sem subdomínios, sem proxy
Migração para Internet (Futuro)
Se futuramente quiser expor na internet com Let's Encrypt:
- Registre um domínio real
- Configure DNS A/AAAA para seu IP público
- Abra portas 80 e 443 no roteador
- Edite
Caddyfile:- Remova
tls internalde todos os serviços - Adicione email no global options:
- Remova
{
email seu@email.com
}
- Reinicie:
docker-compose restart caddy - Caddy obterá certificados Let's Encrypt automaticamente!