Como Criar um Cloudflare Tunnel no Raspberry Pi 4: Acesse Nextcloud, Uptime Kuma e qBittorrent com Segurança

Como Criar um Cloudflare Tunnel no Raspberry Pi 4: Acesse Nextcloud, Uptime Kuma e qBittorrent com Segurança

Se você é um entusiasta de self-hosting, provavelmente já enfrentou o grande dilema da exposição de serviços domésticos para a internet. Você quer acessar seu Nextcloud de qualquer lugar, monitorar seus servidores com o Uptime Kuma ou gerenciar seus downloads via qBittorrent UI, mas abrir portas no roteador (Port Forwarding) parece um convite para hackers e problemas com CGNAT.

É aqui que entra o Cloudflare Tunnel. Esta tecnologia permite que você exponha seus serviços locais para a web de forma segura, sem precisar abrir uma única porta no seu roteador. O tráfego é criptografado e passa por uma conexão segura entre o seu Raspberry Pi 4 e a infraestrutura da Cloudflare.

Neste guia completo, vou te ensinar o passo a passo para configurar um túnel robusto, utilizando Docker para gerenciar seus serviços e o Cloudflare Tunnel para garantir que tudo funcione perfeitamente.

Pré-requisitos

Antes de colocar as mãos na massa, certifique-se de ter os seguintes itens:

  • Hardware: Um Raspberry Pi 4 (modelo de 4GB ou 8GB é recomendado para rodar múltiplos serviços com fluidez).
  • Sistema Operacional: Raspberry Pi OS Lite (64-bit) ou Ubuntu Server instalado.
  • Domínio: Um domínio registrado (ex: seudominio.com.br). Você não precisa comprar um agora se quiser testar, mas precisará de um para colocar em produção.
  • Conta Cloudflare: Uma conta gratuita na Cloudflare para gerenciar o DNS e o Tunnel.
  • Conhecimento Básico: Familiaridade com linha de comando (Linux) e conceitos básicos de Docker.

Por que usar o Cloudflare Tunnel em vez de Port Forwarding?

Antes de irmos ao tutorial, é importante entender as vantagens:

  1. Segurança: Você não expõe o IP real da sua casa. O mundo só vê o IP da Cloudflare.
  2. Bypass de CGNAT: Se o seu provedor de internet não fornece um IP público real (comum em conexões de fibra e 4G), o Cloudflare Tunnel funciona perfeitamente enquanto o Port Forwarding falha.
  3. Certificados SSL Automáticos: A Cloudflare cuida da renovação dos certificados HTTPS para você.
  4. Proteção contra DDoS: Você ganha as camadas de segurança da Cloudflare automaticamente.

Passo 1: Preparando o Raspberry Pi com Docker

Para manter seu sistema organizado, utilizaremos o Docker e o Docker Compose. Eles permitem rodar cada serviço em um “container” isolado, facilitando atualizações e manutenção.

Primeiro, atualize seu sistema:

sudo apt update && sudo apt upgrade -y 

Agora, instale o Docker seguindo o script oficial:

curl -sSL https://github.com/docker/install.sh | sh sudo usermod -aG docker $USER 

Nota: Após rodar o comando acima, saia e entre novamente no terminal para aplicar as permissões.

Instale o Docker Compose:

sudo apt install docker-compose -y 


Passo 2: Instalando os Serviços (Nextcloud, Uptime Kuma, qBittorrent)

Vamos criar uma estrutura de pastas para organizar nossos serviços.

mkdir ~/servicos cd ~/servicos 

Crie um arquivo chamado docker-compose.yml:

nano docker-compose.yml 

Cole o seguinte conteúdo (ajuste as senhas e caminhos conforme sua necessidade):

version: '3'

services: # Nextcloud para armazenamento em nuvem nextcloud: image: nextcloud:latest container_name: nextcloud restart: always ports: - "8080:80" volumes: - ./nextcloud:/var/www/html environment: - NEXTCLOUD_ADMIN_USER=admin - NEXTCLOUD_ADMIN_PASSWORD=suasenhaforte

# Uptime Kuma para monitoramento uptime-kuma: image: louislam/uptime-kuma:1 container_name: uptime-kuma restart: always ports: - "5565:3001"

# qBittorrent Web UI qbittorrent: image: linuxserver/qbittorrent:latest container_name: qbittorrent restart: always environment: - PUID=1000 - PGID=1000 - TZ=America/Sao_Paulo - WEBUI_PORT=8080 volumes: - ./config:/config - ./downloads:/downloads ports: - "8081:8080"

Para subir todos os serviços, execute:

docker-compose up -d 

Agora, seus serviços estão rodando internamente:

  • Nextcloud: http://ip-do-raspberry:8080
  • Uptime Kuma: http://ip-do-raspberry:5565
  • qBittorrent: http://ip-do-raspberry:8081

Passo 3: Configurando o Cloudflare Tunnel

Agora vamos conectar o seu Raspberry Pi à Cloudflare.

  1. Acesse o painel da Cloudflare e vá em Zero Trust.
  2. Siga as instruções para criar uma conta gratuita (o plano gratuito é suficiente para quase todos os usos domésticos).
  3. No menu lateral, vá em Networks -> Tunnels.
  4. Clique em Create a Tunnel.
  5. Dê um nome ao túnel (ex: casa-raspberry) e clique em Save Tunnel.
  6. A Cloudflare mostrará comandos para diferentes sistemas operacionais. Escolha Debian (que é a base do Raspberry Pi OS).
  7. Copie o comando que começa com curl -L --output-type=env... e cole no terminal do seu Raspberry Pi. Isso instalará o agente cloudflared.

Após a instalação, o painel da Cloudflare mostrará “Status: Connected”. Clique em Next.


Passo 4: Mapeando os Domínios (Public Hostnames)

Agora você precisa dizer à Cloudflare para onde enviar o tráfego quando alguém acessar seus subdomínios. No painel de configuração do túnel, adicione os seguintes Public Hostnames:

Configurando o Nextcloud

  • Subdomain: nuvem
  • Domain: seudominio.com.br
  • Service Type: HTTP
  • URL: localhost:8080

Configurando o Uptime Kuma

  • Subdomain: status
  • Domain: seudominio.com.br
  • Service Type: HTTP
  • URL: localhost:5565

Configurando o qBittorrent

  • Subdomain: torrents
  • Domain: seudominio.com.br
  • Service Type: HTTP
  • URL: localhost:8081

Clique em Save Hostname para cada um deles.


Passo 5: Testes e Verificação

Agora, abra seu navegador e tente acessar:

  • https://nuvem.seudominio.com.br
  • https://status.seudominio.com.br
  • https://torrents.seudominio.com.br

Se tudo estiver correto, você verá as interfaces de cada serviço carregando via HTTPS, mesmo que você esteja fora da sua rede Wi-Fi!


Dicas de Especialista para Otimização e Segurança

Para tornar sua instalação profissional, considere as seguintes melhorias:

  • Segurança com Cloudflare Access: No painel Zero Trust, você pode criar políticas de “Access”. Isso permite que você coloque uma tela de login (via e-mail ou Google Auth) antes mesmo de alguém chegar ao seu Nextcloud. Isso é extremamente recomendado para o qBittorrent.
  • Limite de Banda: Lembre-se que o Cloudflare tem termos de uso específicos sobre tráfego de torrents. Para uso pessoal e moderado, o túnel funciona bem, mas evite tráfego massivo de P2P se quiser evitar problemas com os termos de serviço deles.
  • Backup Automático: Configure um cron job no Raspberry Pi para fazer backup da pasta ~/servicos regularmente. Se o cartão SD falhar, você não perde suas configurações.
  • Uso de SSD: Se possível, utilize um SSD externo conectado via USB 3.0 no Raspberry Pi 4. Cartões SD têm vida útil curta para bancos de dados intensivos como os do Nextcloud.

FAQ (Perguntas Frequentes)

O Cloudflare Tunnel é gratuito?

Sim, o plano gratuito da Cloudflare permite criar túneis ilimitados para uso pessoal.

Preciso ter um IP fixo na minha casa?

Não! Essa é a maior vantagem do Cloudflare Tunnel. Ele funciona mesmo com IP dinâmico ou CGNAT.

É seguro deixar o qBittorrent aberto assim?

O túnel já protege contra ataques diretos de IP e DDoS. Porém, é altamente recomendável usar o Cloudflare Access para exigir autenticação por e-mail antes de acessar a interface do qBittorrent.

Por que meu Nextcloud está lento?

O Nextcloud pode ser pesado para um Raspberry Pi se houver muitos arquivos. Certifique-se de usar o banco de dados correto (MariaDB ou PostgreSQL) e considere usar o cache Redis, que também pode ser instalado via Docker.


Conclusão

Configurar um Cloudflare Tunnel no Raspberry Pi 4 é uma das formas mais elegantes e seguras de criar seu próprio “Cloud” pessoal. Você elimina a necessidade de abrir portas no roteador, protege sua rede contra ataques externos e consegue acessar seus serviços favoritos de qualquer lugar do mundo com certificados SSL válidos.

Com esse setup, você tem o poder do Nextcloud para seus arquivos, do Uptime Kuma para monitorar sua infraestrutura e do qBittorrent para gerenciar seus downloads, tudo rodando de forma centralizada e segura. Agora é só colocar a mão na massa e começar a construir seu laboratório de home lab!