Dependências
Primeiro devemos certificar que temos o programa openssl
dpkg -l |grep openssldeve aparecer algo como isto
ii libgnutls-openssl27:amd64   2.12.23-12ubuntu2.4   amd64   GNU TLS library - OpenSSL wrapper
 
ii openssl   1.0.1f-1ubuntu2.16   amd64   Secure Sockets Layer toolkit - cryptographic utilitysenão tiver o openssl instalado, instale com o comando:
(debian based)
apt-get install opensslGerar Chaves
Para gerar a chave privada e o certificado rode o comando:
openssl req -x509 -newkey rsa:2048 -keyout keytmp.pem -out cert.pem -days 365Depois gere a chave descriptografada:
openssl rsa -in keytmp.pem -out key.pemja pode excluir o arquivo keytmp.pem, ele não será mais necessário.
Usar Oak com a chave e o certificado
Para usar Oak com HTTPS devemos passar os atributos secure, certFile e keyFile.
como o exemplo a seguir:
await App.listen({
  port: 8000,
  secure: true,
  certFile: './cert.pem',
  keyFile: './key.pem',
})Referências
Article Create an HTTPS Server on Localhost using Express: https://medium.com/@nitinpatel_20236/how-to-create-an-https-server-on-localhost-using-express-366435d61f28 [archive]
oak docs: https://github.com/oakserver/oak [archive]
OpenSSL Tutorial: How Do SSL Certificates, Private Keys, & CSRs Work?: https://phoenixnap.com/kb/openssl-tutorial-ssl-certificates-private-keys-csrs [archive]
 
 




