O
HTTP Strict Transport Security (HSTS) é uma política de segurança web que irá forçar os pedidos feitos a um site/servidor a serem feitos extritamente através de ligação segura HTTPS, sendo essa informação transmitida ao browsers para que a ligação não seja feita por HTTP, evitando assim ataques
man-in-the-middle.
A sintaxe do cabeçalho HSTS é a seguinte:
Strict-Transport-Security: max-age=<expire-time>
Strict-Transport-Security: max-age=<expire-time>; includeSubDomains
Strict-Transport-Security: max-age=<expire-time>; preload
Este cabeçalho tem algumas configurações possíveis:
- max-age - Define o período, em segundos, durante o qual o browser deverá lembrar-se da informação de que o site apenas deve ser acedido por HTTPS
- includeSubDomains (opcional) - Define que os parâmetros definidos são aplicáveis também a todos os sub-domínios do site
- preload (opcional) - Fornece informação aos browsers de que a informação do HSTS deve ser incluída nas listas de pré-carregamento dos respectivos browsers
A configuração recomendada pelo site
https://hstspreload.org/ para o cabeçalho HSTS é a seguinte:
Strict-Transport-Security: max-age=63072000; includeSubDomains; preload
Como configurar o header HSTS - HTTP Strict Transport Security
Este header pode ser definido directamente no seu site através do ficheiro .htaccess, bastando para tal que efetue os seguintes passos:
- Aceda ao painel de controlo cPanel da sua conta de Alojamento Web
- Abra o "Administrador de Ficheiros" na secção "Ficheiros":
- Dentro do Administrador de Ficheiros, aceda à pasta public_html/ ou à pasta raíz do site para o qual pretenda definir a configuração HSTS e clique no botão "Definições" no canto superior direito:
- Seleccione a opção "Show Hidden Files (dotfiles)" e clique no botão "Save":
- Deverá conseguir agora visualizar o ficheiro .htaccess. Caso este não exista, clique no botão "+ File" e crie um ficheiro com o nome ".htaccess":
- Faça clique direito no ficheiro e selecione a opção "Edit" para editar o ficheiro.
- No topo do ficheiro defina o cabeçalho HSTS, conforme o exemplo abaixo:
<IfModule mod_headers.c>
Header set Strict-Transport-Security "max-age=63072000; includeSubDomains; preload"
</IfModule>
- Grave agora o ficheiro e o seu site estará agora configurado como header HSTS, podendo se pretender, submeter o mesmo para a lista de pré-carregamento do Google Chrome através do sitehttps://hstspreload.org