Я попытался использовать один, но ничего не вышло. Преобразование его в PEM работает нормально. Наши пользователи загружают сертификаты на наш сервер, и нам интересно, можем ли мы настроить nginx так, чтобы он поддерживал оба. Если нет, есть ли способ программно определить, находится ли файл сертификата в формате DER или PEM?
Nginx не поддерживает формат DER.
Если нет, есть ли способ программно определить, находится ли файл сертификата в формате DER или PEM?
Вы можете использовать командный файл для определения формата сертификата
# file www.example.net.der
www.example.net.der: data
# file www.example.net.pem
www.example.net.pem: ASCII text
PEM - это файлы ASCII в кодировке Base64, а формат DER - это просто двоичная форма сертификата вместо формата ASCII PEM.
Вы можете конвертировать DER -> PEM с помощью openssl
# openssl x509 -inform DER -in www.example.net.der -outform PEM -out www.example.net.pem