O Nginx Proxy Manager é uma interface fácil de usar para gerenciar reverse proxies. Ele simplifica o processo de roteamento de tráfego para diferentes serviços, tornando-o acessível até mesmo para usuários sem conhecimento avançado em redes. Ao fornecer uma interface gráfica (GUI) sobre o Nginx, essa ferramenta permite configurar e gerenciar rapidamente proxy hosts, certificados SSL e diversas configurações avançadas, sem a necessidade de lidar com operações complexas na linha de comando.
A instalação do Nginx Proxy Manager é simples graças ao Docker. A seguir está um guia passo a passo para colocá-lo em funcionamento:
Ter o Docker e o Docker Compose instalados no seu servidor em nuvem
Ter um conhecimento básico dos comandos do Docker
Crie um diretório para o Nginx Proxy Manager e acesse-o:
mkdir nginx-proxy-manager
cd nginx-proxy-manager
Crie um arquivo docker-compose.yml com o seguinte conteúdo:
version: '3'
services:
app:
image: 'jc21/nginx-proxy-manager:latest'
restart: always
ports:
- '80:80'
- '81:81'
- '443:443'
environment:
DB_MYSQL_HOST: "db"
DB_MYSQL_PORT: 3306
DB_MYSQL_USER: "npm"
DB_MYSQL_PASSWORD: "npm"
DB_MYSQL_NAME: "npm"
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
db:
image: 'mysql:5.7'
restart: always
environment:
MYSQL_ROOT_PASSWORD: 'npm'
MYSQL_DATABASE: 'npm'
MYSQL_USER: 'npm'
MYSQL_PASSWORD: 'npm'
volumes:
- ./data/mysql:/var/lib/mysql
Inicie os contêineres:
docker-compose up -d
Acesse o Nginx Proxy Manager pelo endereço IP do seu servidor na porta 81 (por exemplo, http://localhost:81).
Após a instalação, é hora de realizar a configuração inicial:
Login:
Abra o navegador e acesse http://<ip-do-seu-servidor>:81. As credenciais padrão são:
E-mail: admin@example.com
Senha: changeme
Alterar credenciais padrão:
Atualize imediatamente o e-mail e a senha para garantir a segurança do Nginx Proxy Manager.
Visão geral do painel:
O painel fornece uma visão geral dos seus proxy hosts, certificados SSL e outras configurações. Familiarize-se com a interface.
Para expor um serviço, é necessário configurar um novo proxy host. Veja como:
Vá até a seção “Proxy Hosts”
Clique em “Add Proxy Host”
Inserir nomes de domínio:
Informe os domínios que deseja associar a este serviço. É possível adicionar vários domínios separando-os por vírgulas.
Hostname/IP e porta de destino:
Informe o endereço IP interno e a porta do serviço que será exposto.
Exemplo: se o serviço web estiver rodando na porta 8080, informe 192.168.1.100 e 8080.
Opções:
Marque “Block Common Exploits” para adicionar uma camada extra de segurança
Ative “Websockets Support” se o serviço exigir
SSL:
Você pode usar um certificado SSL existente ou solicitar um novo por meio do Let’s Encrypt.
Salvar:
Clique em “Save” para finalizar a configuração do proxy host.
Os certificados SSL são essenciais para proteger seus serviços. O Nginx Proxy Manager simplifica esse processo:
Solicitar um novo certificado SSL:
Acesse a seção “SSL Certificates”
Clique em “Add SSL Certificate”
Selecione “Let’s Encrypt” e informe os dados necessários, como e-mail e domínio
Renovação automática:
O Nginx Proxy Manager renova automaticamente os certificados do Let’s Encrypt, garantindo a segurança dos serviços sem intervenção manual.
Certificados personalizados:
Caso possua um certificado SSL próprio, você também pode enviá-lo nesta seção.
O Nginx Proxy Manager oferece várias opções avançadas para ajustar sua configuração:
Listas de acesso (Access Lists):
Restrinja o acesso aos serviços criando listas de acesso
Permita ou bloqueie tráfego com base em endereços IP
Hosts de redirecionamento (Redirection Hosts):
Configure facilmente redirecionamentos de um domínio para outro
Stream Hosts:
Utilize o recurso de stream para gerenciar tráfego TCP/UDP, como serviços SSH ou FTP
Configuração personalizada do Nginx:
Adicione diretivas personalizadas do Nginx caso o serviço exija configurações específicas
Expor um serviço usando o Nginx Proxy Manager envolve alguns passos:
Identificar o serviço:
Determine o IP interno e a porta do serviço que será exposto.
Criar um proxy host:
Siga os passos descritos na seção “Configuração de um novo proxy host”.
Habilitar SSL:
Solicite um certificado SSL para o domínio associado ao serviço.
Testar a configuração:
Acesse o serviço usando o domínio para garantir que tudo esteja funcionando corretamente.
Monitorar e ajustar:
Verifique regularmente o desempenho do serviço e ajuste as configurações conforme necessário.
O Nginx Proxy Manager inclui recursos integrados de monitoramento e registro:
Logs:
Acesse os logs pela seção “Logs”
Os logs incluem informações detalhadas sobre as requisições recebidas, como endereços IP, caminhos solicitados e status das respostas
Monitoramento:
Utilize o painel para acompanhar o status dos proxy hosts e dos certificados SSL
Certifique-se de que os certificados SSL estejam atualizados e que todos os serviços estejam funcionando corretamente
Erros de certificado SSL:
Verifique se o domínio está corretamente apontado para o IP do servidor
Confirme que as portas 80 e 443 estão abertas e acessíveis
502 Bad Gateway:
Verifique se o serviço exposto está em execução e acessível internamente
Confirme se o IP interno e a porta configurados estão corretos
Timeout de conexão:
Revise as configurações do firewall para garantir que o tráfego não esteja sendo bloqueado
Teste a conectividade entre o servidor e o serviço
O Nginx Proxy Manager simplifica significativamente o processo de exposição de serviços, sendo uma excelente ferramenta tanto para iniciantes quanto para usuários experientes. Com sua interface intuitiva e recursos poderosos, é possível configurar rapidamente reverse proxies, proteger serviços com certificados SSL e solucionar problemas de forma eficiente. Seguindo os passos deste guia, você estará apto a gerenciar e expor serviços com eficiência usando o Nginx Proxy Manager.