Quando o Nextcloud reporta “O cabeçalho HTTP Strict-Transport-Security não está configurado”, a correção deve ser feita na camada de serviço de resposta HTTPS: Apache, Nginx ou o proxy reverso público que encerra o TLS. O manual de administração atual do Nextcloud identifica a ausência do cabeçalho ou um tempo de resposta max-ageinferior a alguns 15552000segundos como um aviso de segurança. Assim que o cabeçalho estiver presente no endpoint HTTPS público, os navegadores podem lembrar que o host deve usar HTTPS pelo período declarado.
A alteração básica é pequena, mas seu alcance é importante. Aplique o HSTS somente a um endpoint HTTPS funcional com um certificado válido. Comece apenas com o host; adicione includeSubDomainso HSTS preloadsomente quando todos os nomes de host afetados estiverem prontos para HTTPS. Este guia reflete a documentação de administração do Nextcloud disponível em outubro de 2026, incluindo suas orientações sobre avisos de segurança e reforço da segurança do servidor .
O que significa o aviso
O HTTP Strict Transport Security (HSTS) é um cabeçalho de resposta que instrui o navegador a usar HTTPS para solicitações futuras a um nome de host. Ele ajuda a evitar que o navegador recorra ao HTTP sem formatação após receber a política por meio de uma conexão HTTPS válida. O Nextcloud verifica a resposta pública e emite um aviso quando não encontra uma política com o tempo de vida mínimo recomendado.
HSTS não substitui a ativação do TLS nem o redirecionamento de HTTP para HTTPS. O navegador só aceita uma política HSTS entregue via HTTPS. Em uma primeira visita, antes que o navegador aprenda a política, a solicitação inicial ainda pode ser vulnerável, a menos que o nome do host esteja coberto por uma lista de pré-carregamento do navegador. Um redirecionamento normal de HTTP para HTTPS continua sendo útil, mas não substitui o cabeçalho.
Descubra qual servidor deve enviar o cabeçalho.
Antes de alterar a configuração, rastreie a requisição pública. Se os usuários se conectarem diretamente ao Apache ou Nginx via HTTPS, configure o host virtual TLS desse servidor web. Se um balanceador de carga, ingress, CDN ou proxy reverso encerrar o TLS público, configure a camada que envia a resposta para o navegador. Adicionar o cabeçalho apenas a uma conexão HTTP interna pode não afetar a resposta pública.
O Nextcloud documenta proxies reversos como um padrão de implantação suportado e exige que os administradores definam proxies confiáveis quando aplicável. A responsabilidade do proxy pelo HSTS é separada do tratamento de URLs e IPs do cliente pelo Nextcloud. Em particular, overwriteprotocolisso ajuda o Nextcloud a reconhecer o esquema externo em alguns layouts de proxy; configurá-lo não adiciona o cabeçalho de resposta HSTS por si só. Consulte o guia oficial de configuração de proxy reverso do Nextcloud se o aplicativo gerar links HTTP ou relatar outros avisos relacionados a proxy.
Antes de alterar a política
- Confirme se
https://cloud.example.como carregamento ocorreu sem erros de certificado e se a cadeia de certificados utilizada é a correta. - Verifique se as solicitações HTTP são redirecionadas para o mesmo nome de host em HTTPS.
- Identifique outros serviços e subdomínios sob o mesmo domínio principal antes de considerar o uso de outros serviços
includeSubDomains. - Mantenha uma rota administrativa ou console de servidor disponível. Um navegador que tenha o HSTS em cache impedirá que um usuário ignore erros de certificado durante o período da política.
Substitua cloud.example.comnos exemplos pelo nome de host real do seu Nextcloud. Não copie nomes de host de exemplo para a configuração de produção.
Configure o HSTS no Apache.
No host virtual Apache TLS que serve o Nextcloud, habilite o módulo de cabeçalhos e adicione a política. O guia de segurança do Nextcloud indica um valor de seis meses e utiliza includeSubDomains; a seguinte versão somente para host é um ponto de partida cauteloso:
<VirtualHost *:443>
ServerName cloud.example.com
<IfModule mod_headers.c>
Header always set Strict-Transport-Security "max-age=15552000"
</IfModule>
# Existing Nextcloud and TLS directives
</VirtualHost>
Certifique-se mod_headersde que o Apache esteja habilitado na configuração da sua distribuição. Adicione a diretiva ao host virtual HTTPS, não ao host virtual da porta 80. Valide a configuração usando o comando apropriado para a distribuição instalada e, em seguida, recarregue o Apache usando o gerenciador de serviços. Por exemplo, muitas distribuições baseadas em systemd suportam o comando `systemctl restart apache` sudo apachectl configtestseguido por `systemctl restart apache` sudo systemctl reload apache2; em algumas distribuições, o serviço é nomeado ` apache` httpd. Use o comando que corresponde aos nomes do seu pacote e serviço.
Configure o HSTS no Nginx
No serverbloco Nginx que escuta conexões HTTPS e serve o nome de host público do Nextcloud, adicione:
server {
listen 443 ssl;
server_name cloud.example.com;
add_header Strict-Transport-Security "max-age=15552000" always;
# Existing certificate and Nextcloud configuration
}
O alwaysparâmetro faz com que o Nginx adicione o cabeçalho independentemente do status da resposta. O Nginx documenta uma regra de herança que pode surpreender os operadores: add_headerdiretivas em um nível de configuração inferior alteram o comportamento normal de herança. Se um locationbloco aninhado definir suas próprias add_headerdiretivas, o cabeçalho HSTS de nível de servidor pode não ser mais herdado ali. Verifique a configuração ativa e teste URLs representativas, incluindo a página de login e um recurso estático. Consulte a documentação oficial do módulo de cabeçalhos do Nginx .
Antes de aplicar as alterações, execute o comando sudo nginx -t. Se a validação for bem-sucedida, recarregue o Nginx usando o comando de serviço do seu sistema, geralmente `nginx reload` sudo systemctl reload nginx. Um teste de sintaxe com falha deve ser corrigido antes da recarga.
Configure um proxy reverso ou um terminador TLS.
Se o HTTPS público terminar em um proxy reverso, inclua o cabeçalho HSTS na resposta HTTPS desse proxy. Por exemplo, um proxy pode enviá-lo mesmo quando sua conexão com o backend do Nextcloud usa HTTP. Não envie o HSTS apenas na resposta não criptografada do backend e assuma que o navegador o verá.
Verifique se o proxy e o servidor já adicionam o mesmo cabeçalho. Campos HSTS duplicados podem dificultar o diagnóstico, e um proxy pode sobrescrever ou ocultar um cabeçalho do servidor. Escolha uma camada pública para definir a política ou configure as camadas para que o navegador receba um único valor claro. Após alterar o proxy, confirme se ele encaminha o host e o esquema esperados para o Nextcloud e se os links HTTPS ainda funcionam.
Verificar a resposta do público
Utilize uma solicitação para o nome de host HTTPS público, e não apenas para localhost ou um endereço de servidor:
curl -sSI https://cloud.example.com
curl -sSIL http://cloud.example.com
Na primeira resposta, procure exatamente um cabeçalho semelhante a:
Strict-Transport-Security: max-age=15552000
O segundo comando segue os redirecionamentos. Confirme se a URL HTTP alcança o hostname HTTPS pretendido e, em seguida, inspecione a resposta HTTPS em busca de HSTS. Os navegadores ignoram o HSTS recebido via HTTP simples, portanto, o cabeçalho não precisa aparecer no redirecionamento inicial da porta 80. Você também pode usar as ferramentas de desenvolvedor do navegador: abra o painel Rede, recarregue a página HTTPS, selecione a resposta do documento e inspecione os cabeçalhos da resposta.
Verifique mais de um caminho de resposta se sua configuração tiver locais aninhados, várias camadas de proxy ou tratamento separado de ativos estáticos. Em seguida, acesse novamente as configurações de administração do Nextcloud e atualize a visão geral de segurança. Um aviso pode demorar para atualizar ou pode refletir a URL pública exata que o Nextcloud está sondando; portanto, compare essa URL com a que você testou.
Escolha cuidadosamente o escopo e a duração.
Um período max-agede 15552000tempo de espera de seis meses corresponde ao limite de aviso documentado pelo Nextcloud. A política é renovada quando um navegador recebe um novo cabeçalho HSTS válido. Para encurtá-la ou removê-la posteriormente, é necessário enviar a max-age=0política via HTTPS para cada nome de host afetado; navegadores que não acessarem o site durante a alteração manterão sua política em cache até que seu tempo de vida atual expire.
includeSubDomainsAplica a política a todos os subdomínios abaixo do nome do host. Use-a somente se todos os subdomínios atuais e planejados suportarem HTTPS com certificados válidos. Um serviço separado, como o `hostname` mail.example.comou o ` legacy.example.comhostname`, pode ficar inacessível aos navegadores se não estiver pronto.
O preloadtoken é uma decisão separada e de alto impacto. As diretrizes de segurança do Nextcloud descrevem como adicionar um nome de host às listas de pré-carregamento do navegador e alertam que a remoção pode levar meses para ser implementada em todos os navegadores instalados. Não o adicione como uma maneira rápida de eliminar uma detecção de scanner. Confirme todas as condições de pré-carregamento necessárias e o impacto em cada subdomínio primeiro; siga as diretrizes oficiais do serviço de pré-carregamento HSTS se você pretende solicitar a inclusão.
Se o aviso permanecer
- O cabeçalho está ausente no curl: você pode ter editado o host virtual, proxy ou localização do Nginx incorretamente. Inspecione o destino DNS público e a configuração do servidor ativo.
- O cabeçalho aparece apenas em algumas páginas: verifique as diretivas Nginx aninhadas
add_header, o tratamento de erros, os caminhos de recursos estáticos e as regras de proxy. - A resposta possui múltiplas políticas: identificar quais camadas adicionam o campo e consolidá-las em um único valor consistente.
- O cabeçalho está presente, mas o aviso persiste: verifique se a URL configurada externamente no Nextcloud resolve para o mesmo endpoint HTTPS, verifique o tratamento do esquema de proxy e, em seguida, recarregue a visão geral do administrador.
- O HTTPS ou o certificado não está pronto: primeiro, corrija o TLS e o roteamento HTTP para HTTPS. O HSTS não pode reparar um certificado inválido nem habilitar o HTTPS por conta própria.
A correção estará completa quando a resposta HTTPS pública contiver consistentemente o valor HSTS pretendido, o Nextcloud conseguir acessar seu URL HTTPS público corretamente e o navegador puder carregar a instância sem erros de certificado ou redirecionamento. O HSTS aprimora a aplicação da política de transporte para navegadores que retornam; ele não substitui a manutenção de certificados, a configuração segura de proxy ou um caminho de recuperação testado.