[Auto-Sync] Atualização das configurações em srvproxy001.itguys.com.br - 2025-09-21 02:34:22

This commit is contained in:
srvproxy001.itguys.com.br 2025-09-21 02:34:22 -03:00
parent 37bd04a164
commit 3af24e0486
1 changed files with 84 additions and 0 deletions

View File

@ -0,0 +1,84 @@
# ARQUIVO: /etc/nginx/sites-available/dns-primario.itguys.com.br.conf
# OBJETIVO: Proxy reverso seguro e otimizado para a interface web do servidor
# DNS Technitium, com suporte total a WebSockets.
#
# -------------------------------------------------------------------------------------
# EXPLICAÇÕES E MELHORIAS (VERSÃO FINAL - TECHNITIUM)
# -------------------------------------------------------------------------------------
#
# 1. SUPORTE ESPECÍFICO AO TECHNITIUM DNS:
# - A interface do Technitium requer uma conexão WebSocket no caminho `/api/socket/`
# para funcionar corretamente (logs, estatísticas, etc.).
# - Foi criado um bloco `location /api/socket/` dedicado para manipular essas
# conexões, utilizando seu snippet `websocket_params.conf`.
#
# 2. REMOÇÃO DO CACHE DE PROXY:
# - A interface do Technitium é altamente dinâmica e em tempo real. Armazenar
# seu conteúdo em cache (proxy_cache) é contraproducente e pode causar
# problemas, mostrando dados desatualizados ou quebrando a funcionalidade.
# - Todas as diretivas de `proxy_cache` foram removidas, pois para uma interface
# administrativa como esta, a consistência dos dados é muito mais importante
# do que o cache a nível de servidor.
#
# 3. ARQUITETURA MODULAR CORRETA:
# - A configuração utiliza exclusivamente seus snippets (`ssl_params.conf`,
# `proxy_params.conf`, `websocket_params.conf`), garantindo consistência,
# segurança e fácil manutenção. Não há mais diretivas manuais duplicadas.
#
# -------------------------------------------------------------------------------------
# --- Bloco 1: Redirecionamento HTTP para HTTPS ---
server {
listen 80;
listen [::]:80;
server_name dns-primario.itguys.com.br;
return 301 https://$host$request_uri;
}
# --- Bloco 2: Servidor Principal HTTPS para o Technitium DNS ---
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name dns-primario.itguys.com.br;
# --- Configurações de SSL e Segurança ---
# ssl_certificate /etc/letsencrypt/live/dns-primario.itguys.com.br/fullchain.pem;
# ssl_certificate_key /etc/letsencrypt/live/dns-primario.itguys.com.br/privkey.pem;
include /etc/nginx/snippets/ssl_params.conf;
# --- Configurações de Log ---
access_log /var/log/nginx/access.log detailed_proxy;
error_log /var/log/nginx/error.log warn;
# --- Inclusão de Snippets Globais ---
include /etc/nginx/snippets/custom_errors.conf;
include /etc/nginx/snippets/global_robots.conf;
include /etc/nginx/snippets/internal_networks.conf;
# --- Localização Específica para WebSockets do Technitium ---
# Este bloco é processado primeiro e garante que a interface funcione em tempo real.
location /api/socket/ {
# Inclui os cabeçalhos de proxy padrão.
include /etc/nginx/snippets/proxy_params.conf;
# Inclui as configurações OTIMIZADAS para WebSocket.
include /etc/nginx/snippets/websocket_params.conf;
# Aponta para o backend.
proxy_pass https://172.16.254.252:53443;
}
# --- Localização Principal para o resto da Interface Web ---
# Captura todas as outras requisições da interface.
location / {
# Inclui os cabeçalhos de proxy padrão.
include /etc/nginx/snippets/proxy_params.conf;
# [CRÍTICO] Se o seu Technitium usa um certificado autoassinado,
# descomente e ajuste a linha abaixo para evitar erros 502.
# proxy_ssl_trusted_certificate /etc/nginx/certs/technitium.pem;
proxy_ssl_server_name on;
# Aponta para o backend.
proxy_pass https://172.16.254.252:53443;
}
}