Traefik Manager: economize IPs públicos e gerencie SSL Termination e Passthrough com interface gráfica
Entenda o problema de rodar várias aplicações nas portas 80 e 443 na mesma VPS, veja como o Traefik resolve isso com reverse proxy, SSL Termination e SSL Passthrough, e conheça o Traefik Manager, projeto open-source da Techify para administrar as configurações por interface gráfica.
Principais conclusões
- Sem proxy reverso, várias aplicações na mesma VPS disputam as portas 80 e 443, forçando portas públicas alternativas ou múltiplos IPs.
- O Traefik permite concentrar o tráfego HTTP e HTTPS em um único IP público, roteando por domínio, path ou SNI para backends diferentes.
- SSL Termination é ideal para centralizar certificados e redirecionamentos; SSL Passthrough é útil quando o backend precisa receber TLS ponta a ponta.
- O Traefik Manager da Techify gera e organiza configurações YAML do Traefik por interface gráfica e API REST, reduzindo erros manuais.
- O projeto é indicado para ambientes de automação, VPS, Docker Swarm e self-hosting que precisam publicar muitos serviços com HTTPS de forma padronizada.
Imagine uma VPS simples, com um único IP público, hospedando um painel de automação, um n8n, uma API interna, um dashboard de métricas, um CRM, uma aplicação PHP, um serviço em Docker e talvez alguns ambientes de teste. Todas essas aplicações normalmente querem expor HTTP na porta 80 e HTTPS na porta 443. O problema é que, em um mesmo endereço IP, apenas um processo consegue escutar a porta 80 e apenas um processo consegue escutar a porta 443 ao mesmo tempo.
Sem um proxy reverso, a arquitetura começa a ficar cara e confusa: você teria que publicar cada aplicação em portas alternativas, como 8080, 8443, 3000 ou 64780, ou contratar múltiplos IPs públicos para separar serviços. Além do custo extra, isso cria URLs pouco profissionais, dificulta o uso de certificados TLS, complica automações e aumenta a superfície de exposição da VPS.
A solução é colocar um único ponto de entrada na frente das aplicações. É aí que o Traefik entra: ele fica responsável por receber as conexões nas portas 80 e 443 e encaminhar cada requisição para o backend correto com base no domínio, no subdomínio, no path ou no SNI TLS. Para quem trabalha com automação, isso significa transformar uma VPS comum em uma plataforma organizada para publicar serviços com segurança, previsibilidade e economia de IPs públicos.
O problema: várias aplicações disputando as portas 80 e 443
Em Linux, uma porta TCP em um IP só pode ser ocupada por um serviço por vez. Se um Apache já está escutando em 0.0.0.0:80, outro Nginx, container ou aplicação Node não conseguirá usar a mesma porta no mesmo IP. O mesmo vale para a porta 443. Essa limitação é simples, mas aparece rápido quando a VPS deixa de hospedar apenas um site e passa a rodar múltiplas ferramentas.
Um ambiente de automação costuma crescer por necessidade: primeiro vem uma ferramenta de workflows, depois um webhook público, depois um painel administrativo, depois uma API para integrar clientes, depois um app de homologação. Se cada aplicação for exposta diretamente, você acaba com uma lista de portas públicas difíceis de lembrar, regras de firewall mais abertas do que o necessário e certificados gerenciados individualmente em cada serviço.
Com Traefik, o desenho muda. A VPS publica apenas as portas 80 e 443. Por trás, as aplicações podem rodar em portas internas diferentes ou em redes Docker. O usuário acessa n8n.seudominio.com, api.seudominio.com, crm.seudominio.com ou app.seudominio.com, e o Traefik decide automaticamente para onde enviar o tráfego.
A economia de IPs públicos na prática
O ganho mais imediato é a consolidação. Em vez de comprar ou reservar um IP público para cada aplicação, você usa subdomínios apontando para o mesmo IP da VPS. O DNS faz todos os nomes chegarem ao mesmo servidor, e o Traefik separa o tráfego pela regra configurada.
Na prática, isso permite hospedar dezenas de aplicações no mesmo IP público, desde que a VPS tenha CPU, memória e rede suficientes. Para empresas que trabalham com automação, laboratórios, ambientes de cliente, stacks Docker e serviços internos, essa economia é relevante porque IP público dedicado está cada vez mais caro e menos abundante.
Além da economia financeira, existe economia operacional. Você passa a ter um padrão único: domínio, regra, backend, porta e tipo de TLS. Em vez de lembrar qual serviço está em qual porta pública, o time trabalha com nomes legíveis e configurações centralizadas.
Onde entram SSL Termination e SSL Passthrough
O Traefik pode atuar de duas formas principais quando falamos de HTTPS: terminando o SSL na borda ou repassando a conexão TLS até o serviço final. As duas abordagens são úteis, mas resolvem problemas diferentes.
SSL Termination
No modo SSL Termination, o Traefik recebe a conexão HTTPS, apresenta o certificado ao navegador, descriptografa a requisição e encaminha o tráfego para o backend em HTTP ou HTTPS interno. É o modelo mais comum para aplicações web, APIs, painéis e ferramentas de automação.
A vantagem é que o Traefik centraliza certificados, redirecionamento HTTP para HTTPS, renovação via Let's Encrypt e regras de roteamento por domínio ou path. Para um operador de automação, isso reduz muito o trabalho: a aplicação não precisa saber emitir certificado público nem abrir a porta 443 diretamente. Ela pode escutar em uma porta interna, enquanto o Traefik cuida da camada pública.
SSL Passthrough
No modo SSL Passthrough, o Traefik não descriptografa a conexão. Ele apenas observa o SNI, ou seja, o nome de domínio indicado no início da negociação TLS, e encaminha o fluxo TCP para o backend correto. A criptografia continua ponta a ponta entre o cliente e a aplicação final.
Esse modo é útil quando o serviço de destino precisa controlar o certificado por conta própria, quando há appliances, painéis ou sistemas que exigem TLS end-to-end, ou quando a política técnica exige que o proxy não tenha acesso ao conteúdo HTTP. A contrapartida é que recursos HTTP do Traefik, como middlewares de headers, path routing detalhado e manipulação de requisições, ficam limitados, porque o proxy não está abrindo o tráfego.
Por que quem trabalha com automação deve olhar para Traefik
Automação precisa de endpoints previsíveis. Webhooks, painéis, APIs e integrações dependem de URLs estáveis, HTTPS funcionando e roteamento confiável. O Traefik ajuda exatamente nesse ponto: ele transforma a publicação de serviços em configuração declarativa.
Em ambientes Docker e Docker Swarm, o Traefik também conversa bem com a ideia de infraestrutura dinâmica. Serviços podem entrar e sair, domínios podem ser adicionados, e as regras podem ser mantidas em arquivos YAML ou labels. Para times que criam automações para clientes, isso permite padronizar deploys e reduzir etapas manuais.
O desafio é que editar arquivos YAML de Traefik manualmente, especialmente quando há muitos domínios, pastas, tags, SSL Termination e Passthrough, pode virar uma fonte de erro. Um espaço errado, um nome de router duplicado ou uma regra mal escrita pode derrubar o acesso de uma aplicação. É justamente aqui que uma interface gráfica passa a fazer diferença.
Traefik Manager: interface gráfica open-source da Techify para gerenciar Traefik
O Traefik Manager é um projeto open-source desenvolvido pela Techify para gerenciar configurações dinâmicas do Traefik por interface web e API REST. A análise do repositório mostra uma aplicação full-stack simples de operar: backend em PHP 7.4+, frontend em React 18 com TypeScript e Vite, armazenamento baseado em arquivos YAML e metadados JSON, sem dependência de banco de dados.
A proposta é prática: criar, editar e organizar configurações de domínios que serão lidas pelo provider de arquivos do Traefik. Em vez de escrever manualmente cada router, service e middleware, você trabalha em uma interface visual que gera os YAMLs a partir de templates.
O projeto já inclui templates para SSL Termination, HTTP only, HTTPS com redirect, HTTPS com path, HTTPS com path prefix, combinações de path e prefix, além de templates para SSL Passthrough. Isso cobre cenários comuns de automação: publicar painéis internos com certificado gerenciado na borda, encaminhar APIs para portas customizadas, usar path prefix para organizar ferramentas e repassar TLS ponta a ponta quando necessário.
O que encontramos na análise do repositório
O repositório Techify-one/traefik-manager tem uma estrutura objetiva. A API fica em PHP, com endpoints para domínios, tags, logs e sessão. O frontend React entrega o dashboard, páginas de login, documentação de API, filtros, componentes de UI, gerenciamento de tags e organização por pastas.
O backend usa autenticação por sessão para a interface e Bearer Token para chamadas de API. As configurações principais ficam no arquivo config.php, derivado de config.example.php, onde são definidos usuário administrador, senha, token da API, caminho dos arquivos dinâmicos do Traefik e diretório de logs.
Outro ponto importante é o modelo de armazenamento. O Traefik Manager escreve arquivos YAML no caminho configurado, por padrão /var/www/traefik_configs. Esse mesmo diretório pode ser montado no Traefik como provider de arquivos em /etc/traefik/dynamic, com providers.file.watch=true. Assim, quando uma configuração é criada ou alterada, o Traefik consegue detectar a mudança automaticamente.
Também há um arquivo de exemplo para Traefik v3 em Docker Swarm, usando a imagem traefik:v3.3.4, entrypoints web e websecure, provider Swarm, provider file, Let's Encrypt via HTTP challenge e publicação das portas 80 e 443 em modo host. Esse exemplo deixa claro o papel do Traefik Manager: ele não substitui o Traefik; ele facilita a administração das configurações dinâmicas que o Traefik consome.
Por que recomendamos o Traefik Manager
Recomendamos o Traefik Manager para quem já usa ou pretende usar Traefik em VPS, Docker Swarm ou ambientes self-hosted e quer reduzir erro manual na criação de rotas. Ele é especialmente útil quando existe mais de uma pessoa operando o ambiente ou quando o número de domínios cresce a ponto de o YAML manual ficar difícil de revisar.
A interface gráfica ajuda a padronizar a operação: escolher o tipo de rota, informar domínio, IP ou host de backend, porta, path, prefixo, tags e pasta. A API REST permite integrar o gerenciamento ao fluxo de automação. Isso abre espaço para criar rotinas que provisionam uma aplicação e já registram a rota correspondente no Traefik Manager.
Para equipes que usam automação comercial, n8n, scripts de provisionamento, painéis internos e múltiplas aplicações em uma mesma VPS, essa combinação resolve um problema real: publicar serviços com HTTPS sem espalhar portas públicas e sem editar manualmente dezenas de arquivos de configuração.
Exemplo conceitual: uma VPS, muitos serviços
Suponha que você tenha apenas um IP público apontando para uma VPS. No DNS, você cria registros como:
n8n.seudominio.comapontando para o IP da VPS;api.seudominio.comapontando para o mesmo IP;crm.seudominio.comapontando para o mesmo IP;monitor.seudominio.comapontando para o mesmo IP.
O Traefik escuta as portas públicas 80 e 443. O n8n pode estar em 10.0.0.10:5678, a API em 10.0.0.20:3000, o CRM em 10.0.0.30:8080 e o monitoramento em 10.0.0.40:9090. Para o usuário, tudo é HTTPS limpo em subdomínios. Para a operação, tudo passa por um ponto central de roteamento.
Com SSL Termination, o Traefik pode emitir e renovar certificados para cada subdomínio e encaminhar internamente em HTTP. Com Passthrough, ele pode repassar uma conexão TLS diretamente para um backend que precisa manter o próprio certificado. O Traefik Manager ajuda a criar essas variações sem exigir que cada operador escreva a configuração inteira do zero.
Instalação do Traefik Manager
A instalação abaixo segue a estrutura do repositório e considera um servidor Linux com Apache ou Nginx, PHP e acesso ao diretório onde o Traefik lerá as configurações dinâmicas.
1. Instale dependências básicas
sudo apt update
sudo apt install -y git php php-cli php-yaml apache2 nodejs npm
O projeto requer PHP 7.4 ou superior, extensão php-yaml, servidor web Apache ou Nginx e Node.js 18+ para compilar o frontend React.
2. Clone o projeto
cd /var/www/html
sudo git clone https://github.com/Techify-one/traefik-manager.git
cd traefik-manager
3. Configure permissões e diretórios
sudo mkdir -p /var/www/traefik_configs
sudo mkdir -p logs
sudo chmod 755 /var/www/html/traefik-manager
sudo chmod 755 /var/www/traefik_configs
sudo chmod 755 logs
Ajuste o usuário e grupo conforme o servidor web da sua distribuição, por exemplo www-data em ambientes Debian/Ubuntu.
4. Crie o arquivo de configuração
cp config.example.php config.php
nano config.php
No config.php, altere pelo menos:
ADMIN_USER: usuário de acesso à interface;ADMIN_PASS: senha do administrador;API_BEARER_TOKEN: token seguro para automações e API;TRAEFIK_CONFIGS_PATH: caminho dos YAMLs dinâmicos, como/var/www/traefik_configs.
Para gerar um token forte:
openssl rand -hex 32
5. Compile o frontend
./build-frontend.sh
Ou manualmente:
cd frontend
npm install
npm run build
cd ..
Em produção, não é necessário manter o Vite rodando. O build gera arquivos estáticos em frontend/dist, servidos pelo PHP.
6. Configure o Traefik para ler os arquivos gerados
No Traefik, habilite o provider de arquivos apontando para o diretório onde o Traefik Manager gravará os YAMLs:
--providers.file.directory=/etc/traefik/dynamic
--providers.file.watch=true
Monte o diretório do host no container do Traefik, por exemplo:
- /var/www/traefik_configs:/etc/traefik/dynamic:ro
- /var/www/traefik_configs/acme.json:/etc/traefik/acme.json
O repositório inclui um exemplo de stack para Traefik v3 com Docker Swarm em traefikv3-stack-example.yaml. Antes de usar, ajuste e-mail do Let's Encrypt, rede, paths e permissões do acme.json.
7. Acesse a interface
Depois do build e da configuração do servidor web, acesse:
http://seu-servidor/traefik-manager
Se instalar em outro subdiretório, ajuste o BASE_PATH no frontend e no Vite, depois recompile o frontend.
Quando usar cada modo
Use SSL Termination como padrão para aplicações web, APIs HTTP, painéis e ferramentas de automação que não precisam controlar o certificado diretamente. É o caminho mais simples para centralizar HTTPS, redirecionar HTTP para HTTPS e operar com Let's Encrypt.
Use SSL Passthrough quando o backend precisa receber a conexão TLS original. Isso pode acontecer com serviços que já possuem certificados próprios, aplicações que exigem criptografia ponta a ponta ou integrações que não devem ser terminadas no proxy.
O ponto mais importante é não tratar os dois modos como concorrentes. Eles são ferramentas complementares. Em uma mesma VPS, você pode ter a maioria das aplicações usando SSL Termination e alguns serviços específicos usando Passthrough, todos economizando IP público e compartilhando as portas 80 e 443.
Conclusão
Traefik resolve um problema estrutural de quem publica várias aplicações: ele transforma uma VPS com um IP público e duas portas principais em uma plataforma de roteamento por domínio, path e SNI. Isso reduz custo com IPs, organiza a exposição dos serviços e facilita automações.
O Traefik Manager, desenvolvido pela Techify e disponibilizado como projeto open-source, complementa esse fluxo ao oferecer interface gráfica e API REST para administrar as configurações dinâmicas do Traefik. Para quem trabalha com automação, self-hosting e múltiplas aplicações em uma mesma infraestrutura, é uma forma prática de unir economia, padronização e velocidade operacional.
Sobre o autor
Editor — Techify
Rob é editor da Techify e escreve sobre IA aplicada, automação e engenharia de sistemas para empresas que querem escalar.
- Focado em automação com IA aplicada