Os dois arquivos de que você precisa são um certificado SSL codificado por PEM e uma chave privada. Certos e chaves codificados por PEM são texto codificado em Base64 com delimitadores de início / fim que parecem -----BEGIN RSA PRIVATE KEY-----
ou semelhantes.
Para criar um certificado SSL, você primeiro precisa gerar uma chave privada e uma solicitação de assinatura de certificado, ou CSR (que também contém sua chave pública). Você pode fazer isso de várias maneiras, mas veja como em OpenSSL.
openssl req -newkey rsa:2048 -new -nodes -keyout key.pem -out csr.pem
Isso fará com que você entre em um prompt interativo para gerar uma chave privada RSA de 2048 bits e um CSR que contém todas as informações que você escolher inserir nos prompts. ( Observação: o nome comum é onde você deseja colocar o nome de domínio que usará para acessar seu site. ) Depois de fazer isso, você normalmente enviaria este CSR a uma autoridade de certificação confiável e depois de validada seu pedido, você receberá um certificado.
Se você não se importa se o seu certificado é confiável (geralmente o caso para fins de desenvolvimento), você pode apenas criar um certificado autoassinado. Para fazer isso, podemos usar quase a mesma linha, mas vamos passar dois parâmetros extras.
openssl req -newkey rsa:2048 -new -nodes -x509 -days 3650 -keyout key.pem -out cert.pem
Isso lhe dará um certificado (válido por 10 anos) e um par de chaves que você pode usar no trecho de código postado.