Обычно серверная сторона проверяет соответствие общего имени (CN) клиентского сертификата доменному имени (DN) клиента.
Но мне нужно расширить проверку безопасности. Мне нужно проверить соответствие входящего IP-адреса клиента IP-адресу DNS-имени домена клиента.
Например:-
- Сертификат клиента-сервера CN и доменное имя как "test.123.net". И IP-адрес записи DNS (A) "test.123.net" = 1.1.1.1.
- Соединение — https.
- Когда этот клиент отправляет запрос на мой сервер. во-первых, мне нужно проверить соответствие IP-адреса клиента IP-адресу DNS. В этом случае должен быть входящий IP-адрес клиента, нужно использовать IP-адрес = 1.1.1.1.
- Во-вторых, проверьте соответствие CN сертификата доменному имени. В данном случае это "test.123.net", совпадающий с клиентским входящим доменным именем.
Я знаю, что могу использовать OpenSSL или Apache для проверки CN и DN, но я не смог найти способа проверить IP-адрес клиента на соответствие IP-адресу DN DNS.
Могу ли я узнать, есть ли на рынке какой-либо инструмент, который может это сделать? Или может ли любой веб-сервер сделать это? Я долго пытался гуглить, но ничего не смог найти.
Спасибо,
решение1
Другой подход, вероятно, окажется для вас более эффективным.
Во-первых, лишь немногие организации владеют собственным пространством IP-адресов, и для них настройка правильного обратного DNS — это хлопотное дело, связанное с обращением к своему интернет-провайдеру и запросом этой услуги. Часто это ручной процесс. Это означает, что в «типичном» случае вы понятия не имеете, какая организация в настоящее время использует определенный IP-адрес с более узкой детализацией, чем на уровне интернет-провайдера.
Это, в свою очередь, означает, что если вы хотите выполнить явный поиск клиентских сертификатов, вы попросите клиента создать самоподписанный сертификат и передать вам соответствующую цепочку CA, которая идентифицирует его как действительный с его точки зрения, или купить сертификат у известного CA, который вы можете проверить независимо. В таком случае проверка IP-адреса не требуется, поскольку подслушивающий, у которого нет правильного закрытого ключа, получит от вас только зашифрованный беспорядок — зашифрованный с помощью открытого ключа законного клиента.
Если вы хотите повысить безопасность сверх этого, запланируйте VPN-туннель. Альтернативой (которая не обязательно хороша против целевых атак) будет ограничение доступа к вашей системе явными IP-адресами.