Nginx работа с сертификатом ГОСТ? Всем привет! Не смог найти ответа в гугле, может здесь получится. Задача такая, есть сайт с сертификатом (tls v1.2 крипто-про, крутится на nginx). Если зайти с клиента у которого установлено ПО крипто-про и internet explorer сайт открывается, если зайти с этого же компьютера но под firefox, то сайт не открывается. Какое правило в nginx прописать, чтоб была проверка на ie и чтоб был сертификат крипто-про у клиента, а если нет, то перекидывало на страницу где можно скачать крипто-про. Надеюсь не запутал.
Для того чтобы настроить проверку на наличие сертификата КриптоПро и перенаправление на страницу для его скачивания в Nginx, можно использовать директиву if и переменные $ssl_client_s_dn, $ssl_client_i_dn, $ssl_client_verify для проверки наличия сертификата и его валидности.
Вот пример конфигурации, который может помочь вам решить данную задачу:
server { listen 443 ssl; server_name yourdomain.com; ssl_certificate /path/to/your/certificate.crt; ssl_certificate_key /path/to/your/privatekey.key; if ($ssl_client_verify != SUCCESS) { return 403; } if ($ssl_client_i_dn ~ /O=CRYPTO-PRO/) { # клиент использует сертификат КриптоПро # ваш код здесь } else { return 302 http://yourdomain.com/download-cryptopro; } # остальной код вашего сервера здесь }
Для того чтобы настроить проверку на наличие сертификата КриптоПро и перенаправление на страницу для его скачивания в Nginx, можно использовать директиву if и переменные $ssl_client_s_dn, $ssl_client_i_dn, $ssl_client_verify для проверки наличия сертификата и его валидности.
Вот пример конфигурации, который может помочь вам решить данную задачу:
server {listen 443 ssl;
server_name yourdomain.com;
ssl_certificate /path/to/your/certificate.crt;
ssl_certificate_key /path/to/your/privatekey.key;
if ($ssl_client_verify != SUCCESS) {
return 403;
}
if ($ssl_client_i_dn ~ /O=CRYPTO-PRO/) {
# клиент использует сертификат КриптоПро
# ваш код здесь
} else {
return 302 http://yourdomain.com/download-cryptopro;
}
# остальной код вашего сервера здесь
}
Пожалуйста, поменяйте yourdomain.com, /path/to/your/certificate.crt, /path/to/your/privatekey.key, http://yourdomain.com/download-cryptopro на свои значения.
Также не забудьте проверить корректность работы данной конфигурации с помощью nginx -t перед её применением.