Cabeçalhos de segurança explicados: o que fazem e como os acrescentar no .htaccess

A resposta curta: os cabeçalhos de segurança são pequenas instruções que o seu site envia ao navegador com cada página («não deixes pôr-me dentro de outro site», «não adivinhes o tipo deste ficheiro»). Custam três linhas no .htaccess, não mudam o aspeto do site e fecham tipos de ataque conhecidos. Há três que quase qualquer site pode ligar sem risco, e outros que exigem cuidado.

Os cabeçalhos, um a um

Cabeçalho O que faz Risco de o ligar
X-Content-Type-Options: nosniff Impede o navegador de «adivinhar» o tipo de um ficheiro e executar como programa um que se apresentou como imagem. Quase nenhum.
X-Frame-Options: SAMEORIGIN Impede que outros sites mostrem o seu dentro de uma moldura (técnica de enganar cliques). Parte incorporações do seu próprio site noutro domínio seu, se existirem.
Referrer-Policy Controla que parte do endereço de origem é enviada aos sites para onde o visitante vai. Baixo. Algumas ferramentas de estatísticas podem ver menos.
Permissions-Policy Diz que funcionalidades do navegador (câmara, microfone, localização) a página pode usar. Baixo, se não as usar.
Strict-Transport-Security (HSTS) Obriga o navegador a usar sempre https. Alto se ligado cedo. Tem artigo próprio: HSTS explicado.
Content-Security-Policy Lista de onde a página pode carregar scripts, imagens e estilos. É a mais forte contra scripts injetados. Alto. Uma regra demasiado apertada parte o site: formulários, mapas, estatísticas, vídeos.

Como acrescentar os três seguros

1 Abra o .htaccess da raiz do site, no Gestor de Ficheiros do cPanel (com os ficheiros ocultos visíveis). Faça uma cópia do ficheiro antes de o alterar.
2 Acrescente, no fim do ficheiro, estas linhas: <IfModule mod_headers.c>
Header always set X-Content-Type-Options "nosniff"
Header always set X-Frame-Options "SAMEORIGIN"
Header always set Referrer-Policy "strict-origin-when-cross-origin"
</IfModule>
3 Guarde e verifique. Abra o site e carregue em F12, separador «Rede» (Network), clique no pedido da página e leia os «cabeçalhos de resposta»: os novos devem aparecer. Há também serviços públicos que leem os cabeçalhos de um endereço e dão uma nota.
4 Navegue o site e confirme que formulários, vídeos e mapas ainda funcionam. Se algo partiu, retire a linha mais recente e teste outra vez.
Content-Security-Policy: comece em modo de relatório. Em vez de a impor, use o cabeçalho Content-Security-Policy-Report-Only. Ele não bloqueia nada; limita-se a registar, na consola do navegador, o que bloquearia. Só passe à versão que impõe quando a lista estiver limpa. Um WordPress com muitos plugins tem tantas origens de scripts que uma regra justa dá trabalho.
Se o site passa pelo Cloudflare, parte destes cabeçalhos também se pode definir lá. Escolha um sítio só, para não ter duas regras a discordar. E se o seu WordPress já tem um plugin de segurança que os acrescenta, confirme antes de duplicar.

Acrescentou uma linha e o site deixou de abrir? Diga-nos o domínio e a linha: ajudamos a desfazer.

Abrir pedido de suporte

VEJA TAMBÉM

HSTS explicado

Como redirecionar de HTTP para HTTPS com o .htaccess

.htaccess em projetos PHP: URLs amigáveis e redirecionamentos

As opções do Cloudflare que valem a pena e as que dão problemas

PRODUTO RECOMENDADO

Alojamento de sites com cPanel

Domínio e SSL incluídos, cópias diárias e o painel que já conhece. desde R$ 36,30/mês (plano de 3 anos, com cupom)

Ver planos
  • 0 Usuários acharam útil
Esta resposta lhe foi útil?