Моя компания продает серверы приложений клиентам; 90% этих серверов отключены в выделенной сети. В настоящее время у нас есть самоподписанный сертификат, автоматически сгенерированный в соответствии с IP-адресом сервера.
Можно ли будет купить групповой сертификат и использовать его на всех серверах локально?
Допустим, мы покупаем сертификат для *. mydomain.com (mydomain.com будет настоящим доменом, которым мы владеем). Сертификат установлен на серверах. А в локальной сети у нас есть DNS (или измененный файл хоста), который сопоставляет IP-адрес серверов с поддоменом. Все будет нормально? Нам просто нужно избежать большого предупреждения в браузерах о том, что сертификат недействителен. Нет необходимости в сертификации электромобиля или всех этих причудливых штуках.
Я пробовал это со стандартным сертификатом (не подстановочным знаком) и модифицированным хост-файлом, и это кажется нормальным, но будет ли это нормально с «большим» ЦС вроде Globalsign, Thwathe и т. Д.?
Если вы не контролируете доверие клиентов TLS и не выдаете сертификаты из какой-либо частной PKI, которая может быть у них, вы останетесь с общепризнанными центрами сертификации. . Не имеет значения, кто их выдает, если клиенты настроены на доверие своему ЦС.
Основная проблема с «шаблонными» сертификатами заключается в том, что им доверяют все в *. Example.com
. Сертификат, выданный вами appserver.example.com
, можно использовать для evil.example.com
или выдавать себя за другие серверы. Если вы доверяете администратору сервера приложений все, что находится в этой зоне DNS, хорошо, но похоже, что вы используете этот TLD для всех своих клиентов. В RFC6125 говорится, что подстановочные знаки не следует использовать для лучшей практики проверки домена TLS.
Если у вас есть внутренний DNS, все должно быть в порядке, чтобы избежать покупки сертификата, если клиентские компьютеры на вашем клиенте, которым необходимо подключиться к этому серверу, управляются, вы можете попросить своего клиента добавьте свой самозаверяющий сертификат и CA в список авторизованных и обновите их политики.
Если вы используете метод Let's encrypt, он будет прозрачным для вашего клиента и компьютеров.