Como Configurar o NGINX como Reverse Proxy com Let’s Encrypt

Dominar o NGINX como reverse proxy pode ser o ponto de viragem que separa os amadores dos verdadeiros mestres da auto-hospedagem. Muitos desistem à primeira dificuldade, mas com este guia explosivo e otimizado para motores de busca, vais ultrapassar os bloqueios e conquistar a internet com os teus próprios servidores — tudo com segurança de nível empresarial, mesmo a partir de casa!

O Problema da IP Dinâmica e a Solução Definitiva

Durante anos, atualizar manualmente o registo DNS sempre que a IP pública muda era um pesadelo — pouco eficiente e propenso a falhas. Com a magia do NGINX e a flexibilidade de APIs como a da Cloudflare, podes automatizar esse processo e transformar o teu ambiente doméstico num centro de serviços com cara profissional.

Passo Um: Escolhe o Teu Território Digital

Precisas de um VPS fiável — Digital Ocean ou Vultr são excelentes escolhas com planos acessíveis. NGINX é leve e roda bem mesmo nos servidores mais modestos. O objectivo? Esconder a tua IP residencial atrás de um proxy sólido como uma rocha.

Instalação Rápida e Ativação de NGINX

Bash
sudo apt-get install nginx -y
sudo systemctl enable nginx

Verifica se tudo está a correr bem. Caso contrário, verifica se há conflitos com as portas 80 ou 443:

Bash
netstat -plnt | grep 80
netstat -plnt | grep 443

Criação do Proxy Reverso com Estilo Profissional

Vamos imaginar: tens um servidor “app” em casa e queres aceder a ele externamente sem expor a tua IP. Cria um ficheiro de configuração para o domínio:

sudo nano /etc/nginx/sites-available/app.seudominio.pt
Bash
server {     
  listen 80;   
  listen [::]:80;     
  server_name app.seudominio.pt;
  add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always;
  access_log /var/log/nginx/seudominio/access.log;
  error_log /var/log/nginx/seudominio/error.log;
  location / {
    proxy_pass http://<IP ou hostname>;
    proxy_next_upstream error timeout invalid_header http_500 http_502 http_503;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto https;
    proxy_redirect off;
    proxy_read_timeout 5m;
  }
  client_max_body_size 10M;
}

Ativa a Configuração e Reinicia o Servidor

Bash
sudo ln -s /etc/nginx/sites-available/app.seudominio.pt /etc/nginx/sites-enabled/
sudo systemctl restart nginx

Configura o DNS e Protege com HTTPS

Aponta o registo A do domínio para a IP do teu VPS (proxy). Depois, ativa o SSL com Certbot:

Bash
sudo apt-get install software-properties-common
sudo add-apt-repository universe
sudo add-apt-repository ppa:certbot/certbot
sudo apt-get update
sudo apt-get install certbot python3-certbot-nginx
sudo certbot --nginx -d app.seudominio.pt

Cenário 1: Abrir Portas com Controlo Total

Queres aceder ao teu servidor Jellyfin em qualquer lugar? Abre uma porta no router para a tua máquina e limita o acesso à IP do teu VPS:

  1. Redireciona a porta no router.
  2. Edita o ficheiro /etc/hosts no VPS com:
Bash
151.101.192.144 home.connection
  1. Cria uma nova configuração NGINX:
Bash
server {
  listen 80;
  listen [::]:80;
  server_name media.seudominio.pt;
  ...
  proxy_pass http://home.connection:8069;
}
  1. Ativa e reinicia:
Bash
sudo ln -s /etc/nginx/sites-available/media.seudominio.pt /etc/nginx/sites-enabled/
sudo systemctl restart nginx

Cenário 2: Ligações Virtuais com ZeroTier — A Rede Invisível

ZeroTier cria uma LAN virtual global. Ideal para conectar o proxy ao servidor doméstico com segurança e sem abrir portas!

  1. Cria conta em my.zerotier.com
  2. Instala ZeroTier:
Bash
curl -s https://install.zerotier.com | sudo bash
  1. Junta os servidores à mesma rede:
Bash
sudo zerotier-cli join <ID da rede>
  1. Usa o IP privado ZeroTier na configuração NGINX:
Bash
proxy_pass http://192.168.xx.xx;
  1. Ativa e reinicia:
Bash
sudo ln -s /etc/nginx/sites-available/zerotier.seudominio.pt /etc/nginx/sites-enabled/
sudo systemctl restart nginx

Pro Tip Final: Nunca Esqueças o SSL

Independentemente do cenário, ativa sempre SSL. Basta um comando com o Certbot e estás protegido contra espionagem digital e ataques de interceção.


Hashtags para redes sociais como Instagram e Facebook
#NGINX #ReverseProxy #LetsEncrypt #ZeroTier #ServidorDoméstico #Tecnologia #AutoHospedagem #Linux #VPS #DevOps #Cybersegurança #ServidorSeguranca #ProxyReverso

Artigos Relacionados