El formato PFX es un formato binario que debe contener tanto el certificado del dominio y el certificado intermedio como la propia clave privada, y están protegidos (o deberían) con contraseña. Este formato es el utilizado por el servidor web de Microsoft IIS.
Y el formato PEM es el utilizado en servidores como Apache o Nginx, que es un fichero de texto que contiene unas cuantas líneas de caracteres entre las típicas marcas
-----BEGIN CERTIFICATE-----
<aquí va el certificado>
-----END CERTIFICATE-----
Si tenemos un certificado en formato PFX podemos convertirlo a PEM así:
$ openssl pkcs12 -in certfile.pfx -out bundle.txt -nodes
Enter Import Password:
$
El fichero «bundle.txt» generado es un fichero de texto que contendrá en formato PEM tanto el certificado SSL del dominio y el certificado intermedio, como la clave privada.
A partir de aquí sólo habría que generar los ficheros de clave privada y el bundle con el crt del dominio y el intermedio, y configurarlos en el Apache o en el Nginx.