У меня два сервера в домене Active Directory. На обоих серверах есть приложения, которые работают в Tomcat. Я заказываю сертификаты PKI для этих двух серверов.
Серверы являются членами домена AD «ourInternalNetwork.com». Большинство систем в этом домене недоступны из общедоступного Интернета. Эти два сервера будут доступны из сети.
По политическим причинам мы не зарегистрировали «ourInternalNetwork.com». Вместо этого у нас есть домен «ExternalNetwork.com». Когда мы заходим в свойства системы, серверы идентифицируют себя как «server1.ourInternalNetwork.com» и «server2.ourInternalNetwork». com ". Однако мы хотим, чтобы пользователи, подключенные к Интернету, выходили на серверы по адресам «server1.externalNetwork.com» и «server2.externalNetwork.com».
Для этого требуется альтернативное имя субъекта, верно? Насколько я понимаю, если мы создадим CSR без SAN, CSR будет для server1.ourInternalNetwork.com, а наш CA не выдаст нам сертификат для server1.ExternalNetwork.com? Но если мы укажем SAN, то наш CA выдаст сертификат как для server1.ourInternalNetwork.com, так и для server1.ExternalNetwork.com.
Я имею это право?
Если приложение, работающее на ваших серверах, будет доступно только через внешний интерфейс, вам вообще не нужно беспокоиться о SAN. Просто купите стандартный сертификат для внешнего имени и покончите с этим. Это также может работать, даже если к приложению обращаются внутренние люди, вы просто скажете им использовать внешнее имя при подключении. Нет ничего, что требовало бы связывания внутреннего идентификатора сервера с внешним именем приложения.
Если вам нужно, чтобы приложение было доступно по внутреннему и внешнему имени, вы не сможете сделать это с помощью одного сертификата, если не запустите собственный центр сертификации. Как упомянул Грант, ни один публичный центр сертификации не выдаст вам сертификат для DNS-доменов, которыми вы не владеете. С помощью собственного центра сертификации вы можете технически создать сертификат, содержащий оба имени. Вы даже можете сгенерировать сертификат для "google.com", если хотите. Но внешние клиенты, которыми вы не управляете, будут получать предупреждения о сертификатах, если они не решат добавить сертификат вашего центра сертификации в свой список доверенных корней. Вот почему вы обычно выбираете для начала общедоступный центр сертификации; доверие по умолчанию.
Я не уверен, как и если он работает с Tomcat, но гипотетически вы можете разместить приложение на отдельных интерфейсах на одном сервере. Внутренний интерфейс будет использовать сертификат, созданный вами самостоятельно. Внешний интерфейс будет использовать купленный сертификат.
Если вы не являетесь текущим регистрантом ourinternalnetwork.com, ни один законный центр сертификации не должен выдавать вам сертификат для него или его поддоменов ни при каких обстоятельствах.
не используйте чужие домены.