Публичный ключ не обязательно должен иметь расширение .pub. Это досовское зло - считать, что тип файла зависит от расширения. Сертификат состоит из двух файлов - ключа сертификата, который обычно имеет расширение .key, но может иметь любое другое или не иметь никакого вообще и собственно сертфиката, называемого еще публичным ключом. Вот он как раз и хранится в файле .crt. А в файле .pem скорее всего лежит тот же сертификат, только кроме кодированной части там приведена еще и "human-readable", то есть читаемая человеком. Переименовываете .crt или .pem в .pub - и будет Вам счастье.