Skip to content

Latest commit

 

History

History
66 lines (34 loc) · 2.35 KB

LOGBOOK11.md

File metadata and controls

66 lines (34 loc) · 2.35 KB

Public-Key Infrastructure

Setup

Começamos por adicionar novas entradas nos hosts conhecidos pela VM usando e iniciamos os containers do lab.

Task 1

Uma certificate authority (CA) é uma entidade de confiança que emite certificados digitais. Neste lab não vamos usar nenhuma CA comercial, então vamos fazer a nossa própria.

Copiamos o ficheiro openssl.cnf para a pasta de trabalho local para podermos fazer alterações. Depois descomentamos a linha unique_subject. Criamos os ficheiros e diretórios necessários e fizemos serup da CA:

Podemos ver que se trata de uma CA por:

Podemos ver que é self-signed pois issuer e subject são iguais:

Task 2

Nesta task geramos um certificate request para o servidor. Executamos o comando facultado:

Task 3

Agora vamos tornar o request num certificado. Executamos o comando ´´´$ openssl ca -config openssl.cnf -policy policy_anything -md sha256 -days 3650 -in server.csr -out server.crt -batch -cert ca.crt -keyfile ca.key´´´. Editamos o ficheiro openssl descomentando copy_extensions.

Executamos o comando ´´´openssl x509 -in server.crt -text -noout´´´ e verificamos que os nomes alternativos estão abrangidos.

Task 4

Copiamos "server.ctf" e "server.key" para o diretorio /volumes e mudamos os nomes para bank32. Modificamos o ficheiro "etc/apache2/sites-available/bank32_apache_ssl.conf" dentro do container, para que o certificado e chave usados sejam os desejados

para iniciar o servidoor Apache abrimos uma shell no container e inserimos ´´´service apache2 start´´´

Acedendo a https://bank32.com vimos que a ligaçao não era segura. Para corrigir isto, importamos o certificado CA que geramos.

Task 5

Mudou-se a configuração do servidor para termos o site ww.example.com:

Alteramos tambem /etc/hosts ligando www.example.com a 10.9.0.80

Ao tentaracederao site example.com, vemmos que o browser alerta para um risco, devido ao nome do domínio não corresponder ao que estã presente no certificado do servidor