crt et les fichiers key représentent les deux parties d'un certificat, key étant la clé privée du certificat et crt étant le certificat signé.
Ce n'est qu'une des façons de générer des certitudes, une autre façon serait d'avoir les deux dans un fichier pem ou un autre dans un conteneur p12.
Vous avez plusieurs façons de générer ces fichiers, si vous voulez auto-signer le certificat, vous pouvez simplement utiliser cette commande
openssl genrsa 2048 > host.key
chmod 400 host.key
openssl req -new -x509 -nodes -sha256 -days 365 -key host.key -out host.cert
Notez qu'avec les certificats auto-signés, votre navigateur vous avertira que le certificat n'est pas "fiable" car il n'a pas été signé par une autorité de certification figurant dans la liste de confiance de votre navigateur.
À partir de là, vous pouvez soit générer votre propre chaîne de confiance en créant votre CA, soit acheter un certificat auprès d'une société comme Verisign ou Thawte.