Это руководство показывает, как сгенерировать CSR (запрос на подпись сертификата) на серверах Oracle. Оно охватывает три продукта Oracle, где CSR создаётся локально: Oracle Wallet Manager (или современную команду orapki), Oracle iPlanet Web Server и Oracle WebLogic Server (Java keytool). Выберите раздел, соответствующий вашему продукту, выполните шаги, а затем отправьте CSR в вашу Certificate Authority.
Генерация CSR в Oracle Wallet Manager
Если вы уже сгенерировали свой CSR, переходите сразу к разделу установка SSL-сертификата на Oracle. В противном случае у вас есть два варианта в Oracle Wallet Manager: графический интерфейс Oracle Wallet Manager (OWM) или современная утилита командной строки orapki, поставляемая с продуктами Oracle. Путь через orapki поддаётся автоматизации и является вариантом, который Oracle рекомендует для текущих развёртываний; OWM по-прежнему поддерживается для тех же операций.
Вариант А: Oracle Wallet Manager (графический интерфейс)
- Откройте Oracle Wallet Manager. Если у вас ещё нет кошелька (wallet), выберите Wallet > New, задайте надёжный пароль и сохраните его.
- В главном меню выберите Operations > Add Certificate Request.
- В диалоговом окне заполните данные запроса сертификата точно в соответствии с тем, как ваша организация юридически зарегистрирована:
- Common Name (CN): полное доменное имя, которое вы хотите защитить, например www.yourdomain.com, или wildcard, например *.yourdomain.com. Не вводите имя человека.
- Organizational Unit (OU): публичные CA больше не выпускают это поле. Оставьте пустым.
- Organization (O): полное юридическое название вашей компании, например Your Company LLC. Для DV (Domain Validation) сертификатов это поле можно оставить пустым.
- Locality / City (L): полное название города, где зарегистрирована ваша компания, например Seattle. Не используйте сокращения.
- State / Province (ST): полное название штата или региона, например Washington. Не используйте двухбуквенный код.
- Country (C): двухбуквенный код страны по ISO, например US, GB, DE.
- Key Size: 2048 бит — текущий публичный минимум. Кошельки Oracle предлагают 512, 1024, 2048, 4096 и более, без опции 3072, поэтому следующий шаг вверх здесь — 4096.
- Нажмите OK. Появится окно подтверждения об успешной генерации CSR. Узел сертификата в навигационном меню кошелька теперь показывает статус Certificate: [Requested].
- Вернувшись к виду кошелька, выберите Operations > Export Certificate Request, задайте имя файла (например, yourdomain.csr) и сохраните его. Не закрывайте и не удаляйте кошелёк: теперь он содержит закрытый ключ, парный с этим CSR.
Примечание: графический интерфейс Oracle Wallet Manager не предоставляет отдельного поля для Subject Alternative Name (SAN). Современные браузеры и клиенты TLS проверяют сертификаты по расширению SAN, а не по Common Name, поэтому укажите все необходимые имена хостов (например, yourdomain.com и www.yourdomain.com) в поле SAN формы заказа вашего Certificate Authority. CA добавит их в выпущенный сертификат. Если вы используете командную строку orapki (Вариант Б ниже), вы можете встроить SAN напрямую в CSR с помощью флага -addext_san.
Вариант Б: orapki (командная строка)
Утилита orapki поставляется с продуктами Oracle (в дистрибутивах базы данных, Fusion Middleware и HTTP Server) и является альтернативой OWM, поддающейся автоматизации. Процесс состоит из двух команд: создание кошелька и пары ключей, затем экспорт CSR.
Создайте кошелёк с автоматическим входом (auto-login) и добавьте пару ключей:
orapki wallet create -wallet /etc/oracle/wallet -auto_login -pwd "YourStrongPassword"
orapki wallet add -wallet /etc/oracle/wallet
-dn "CN=www.yourdomain.com, O=Your Company LLC, L=Seattle, ST=Washington, C=US"
-keysize 2048
-addext_san "DNS:yourdomain.com,DNS:www.yourdomain.com"
-pwd "YourStrongPassword"
Затем экспортируйте CSR из кошелька:
orapki wallet export -wallet /etc/oracle/wallet
-dn "CN=www.yourdomain.com, O=Your Company LLC, L=Seattle, ST=Washington, C=US"
-request /tmp/yourdomain.csr
-pwd "YourStrongPassword"
Замените путь к кошельку, DN и пароль своими значениями. DN в команде export должен совпадать с DN, использованным при добавлении пары ключей. Флаг -addext_san (orapki 12.2.1.1 и более поздних версий) встраивает Subject Alternative Names напрямую в CSR; перечислите все имена хостов, которые должен охватывать сертификат, включая как основной домен, так и субдомен www. Файл yourdomain.csr теперь содержит CSR, готовый к отправке.
Отправка CSR
Откройте файл .csr в любом текстовом редакторе (например, Notepad). Файл представляет собой обычный текст, начинающийся с -----BEGIN NEW CERTIFICATE REQUEST----- (или -----BEGIN CERTIFICATE REQUEST-----) и заканчивающийся соответствующей строкой -----END. Скопируйте весь блок, включая эти строки заголовка и окончания, и вставьте его в поле CSR при оформлении заказа у вашего CA.
Генерация CSR на Oracle iPlanet Web Server
Oracle iPlanet (ранее Sun Java System Web Server, затем Sun ONE) хранит серверные сертификаты и их ключи в хранилище токенов. Мастер CSR находится в консоли администратора:
- В консоли администратора Oracle iPlanet откройте Server Certificates и нажмите Request.
- В списке Configuration выберите конфигурацию, для которой предназначен сертификат.
- Выберите Token (Cryptographic Device), который будет хранить ключ. Если ключ хранится на сервере, выберите Internal; в противном случае выберите ваш внешний токен из выпадающего списка. Введите пароль для выбранного токена.
- Заполните данные сертификата:
- Server Name: полное доменное имя, которое вы хотите защитить, например www.yourdomain.com. Для wildcard-сертификата добавьте звёздочку впереди, например *.yourdomain.com.
- Organization (O): полное юридическое название вашей компании, например Your Company LLC.
- Organizational Unit (OU): устарело для публичных CA. Оставьте пустым.
- Locality (L): полное название города, где зарегистрирована ваша организация.
- State or Province (ST): полное название штата или региона, где зарегистрирована ваша организация.
- Country (C): двухбуквенный код страны по ISO, например US для США. См. полный список кодов стран.
- Для Key Type выберите RSA с размером 2048 бит (или больше).
- Для Certificate Signing Authority (CSA) выберите CA Signed.
- Проверьте введённые значения, затем нажмите Generate Request, а затем Finish.
- Скопируйте только что сгенерированный CSR (включая строки
-----BEGIN NEW CERTIFICATE REQUEST-----и-----END NEW CERTIFICATE REQUEST-----) в текстовый файл, затем нажмите Close.
Примечание: как и в Oracle Wallet Manager, мастер CSR в iPlanet не предоставляет отдельного поля SAN. Укажите все имена хостов, которые должен охватывать сертификат (основной домен плюс www, а также любые другие субдомены), в поле SAN формы заказа вашего CA.
Генерация CSR на Oracle WebLogic Server
Oracle WebLogic Server использует хранилища ключей Java (keystores). Вы генерируете CSR с помощью утилиты Java keytool двумя командами: сначала keytool -genkeypair создаёт хранилище ключей и закрытый ключ под выбранным псевдонимом (alias), затем keytool -certreq экспортирует соответствующий CSR. Тот же псевдоним нужно будет использовать позже при импорте подписанного сертификата, чтобы ключ, CSR и будущий сертификат находились в одном месте.
Шаг 1: Создание хранилища ключей и закрытого ключа
Откройте терминал на сервере WebLogic и создайте новое хранилище ключей в формате PKCS12. PKCS12 является форматом хранилища ключей по умолчанию в Java начиная с JDK 9 и представляет собой современный, переносимый стандарт. Более старый проприетарный формат JKS официально устарел:
keytool -genkeypair
-alias server
-keyalg RSA -keysize 2048
-storetype PKCS12
-keystore yourdomain.p12
-validity 825
Что означают флаги:
- -alias server: имя записи внутри хранилища ключей. Выберите метку, которую вы запомните (часто server или ваш домен). Запишите её. Вы должны использовать этот точный псевдоним при генерации CSR и снова при импорте подписанного сертификата.
- -keyalg RSA -keysize 2048: 2048-битный ключ RSA — текущий публичный минимум. Для новых хранилищ ключей 3072 бита — разумное обновление для более долгоживущих ключей. Большинство публичных CA также принимают ECDSA (-keyalg EC -groupname secp256r1), если вы предпочитаете меньший и более быстрый ключ; -groupname требует JDK 13 или более позднюю версию, поэтому на средах выполнения Java 8 и Java 11, которые поддерживают более старые версии WebLogic, используйте вместо этого -keyalg EC -keysize 256, что выбирает ту же кривую.
- -storetype PKCS12: принудительно задаёт современное хранилище ключей PKCS12. Соответствующее расширение — .p12 (или .pfx).
- -keystore yourdomain.p12: файл хранилища ключей для создания. Замените на что-то, что вы запомните, и храните файл в безопасности: он содержит ваш закрытый ключ.
- -validity 825: как долго действителен самоподписанный заполняющий сертификат внутри хранилища ключей. Подписанный сертификат от CA позже заменит его, поэтому точное значение не влияет на срок службы в продакшене.
Примечание: если вам необходимо продолжать использовать JKS для более старого развёртывания WebLogic, замените -storetype PKCS12 на -storetype JKS и используйте расширение .jks. Остальная часть процесса идентична. Для wildcard-сертификатов не используйте звёздочку в имени файла хранилища ключей: этот символ не поддерживается на большинстве файловых систем.
Затем keytool запросит пароль хранилища ключей. Выберите надёжный пароль и сохраните его в менеджере секретов: он понадобится вам для каждой последующей команды keytool и для конфигурации хранилища ключей WebLogic. С хранилищами ключей PKCS12 пароль ключа совпадает с паролем хранилища, поэтому нужно запомнить только один пароль.
Шаг 2: Ввод данных вашей организации (DN)
Теперь keytool запросит Distinguished Name (DN): поля идентификации, которые войдут в CSR. Отвечайте на каждый запрос точным, юридическим значением для вашей организации. Пунктуация и точность имеют значение, так как CA отклонит несоответствия с публичными деловыми записями.
- First and last name (CN): это формулировка keytool, но фактически это поле Common Name. Введите точное FQDN, которое вы защищаете, например www.yourdomain.com, или wildcard, например *.yourdomain.com. Не вводите имя человека.
- Organizational unit (OU): больше не выпускается публичными CA. Не пытайтесь пропустить это поле нажатием Enter: keytool подставит своё собственное значение по умолчанию и запишет OU=Unknown в запрос, а ответ пробелом даёт тот же результат. Интерактивного способа опустить это поле не существует, поэтому либо введите название отдела, например IT, либо используйте форму -dname, показанную ниже, и опустите компонент OU из строки.
- Organization (O): полное юридическое название вашей компании, например Your Company LLC. Если название вашей компании содержит символы, такие как & или @, напишите их словами или опустите; keytool отклонит некоторые специальные символы.
- City or locality (L): полное название города, например San Francisco. Не используйте сокращения.
- State or province (ST): полное название штата или региона, например California. Не используйте двухбуквенный код.
- Country code (C): двухбуквенный код страны по ISO, например US, GB, DE.
После последнего запроса keytool покажет сводку вида CN=www.yourdomain.com, OU=Unknown, O=Your Company LLC, L=San Francisco, ST=California, C=US. Введите yes для подтверждения. Файл хранилища ключей теперь существует с одной записью: ваш псевдоним, содержащий закрытый ключ и самоподписанный заполняющий сертификат.
Если вы предпочитаете неинтерактивную команду, передайте DN встроенно и пропустите запросы:
keytool -genkeypair
-alias server
-keyalg RSA -keysize 2048
-storetype PKCS12
-keystore yourdomain.p12
-dname "CN=www.yourdomain.com, O=Your Company LLC, L=San Francisco, ST=California, C=US"
-validity 825
Шаг 3: Генерация CSR с SAN
Современные браузеры и клиенты TLS проверяют сертификаты по расширению Subject Alternative Name (SAN), а не только по Common Name. Запросите SAN непосредственно в CSR, чтобы CA включил их в выпущенный сертификат. Используйте тот же псевдоним и хранилище ключей из Шага 1:
keytool -certreq
-alias server
-keystore yourdomain.p12
-file yourdomain.csr
-ext san=dns:yourdomain.com,dns:www.yourdomain.com
Что означают флаги:
- -alias server: должен совпадать с псевдонимом из Шага 1. Это псевдоним, чей закрытый ключ подписывает запрос.
- -keystore yourdomain.p12: должен совпадать с хранилищем ключей из Шага 1.
- -file yourdomain.csr: имя выходного файла для CSR.
- -ext san=dns:…: расширение Subject Alternative Name. Перечислите все имена хостов, которые должен охватывать сертификат, включая как основной домен (yourdomain.com), так и субдомен www. Добавьте больше записей через запятую, например dns:api.yourdomain.com.
keytool запросит пароль хранилища ключей и запишет CSR в файл yourdomain.csr в текущей директории.
Важно: сохраняйте свой псевдоним и хранилище ключей
Самая распространённая ошибка keytool на WebLogic — импорт подписанного сертификата под новым псевдонимом. Это приведёт к тому, что сертификат сохранится как отдельная доверенная запись без привязанного закрытого ключа, и SSL-слушатель WebLogic не запустится. Всегда импортируйте подписанный ответ обратно в тот же псевдоним, который содержит закрытый ключ (псевдоним из Шага 1).
Запишите эти три значения сейчас, прежде чем закрыть терминал:
- Псевдоним (в этом руководстве — server).
- Путь к файлу хранилища ключей (например, yourdomain.p12).
- Пароль хранилища ключей.
Если вы не уверены, какой псевдоним содержит ваш ключ, выведите содержимое хранилища ключей и найдите запись, тип которой PrivateKeyEntry:
keytool -list -v -keystore yourdomain.p12
Шаг 4: Проверьте CSR перед отправкой
Обнаружьте опечатки в DN или отсутствующие SAN до того, как их проверит CA. Выведите CSR с помощью keytool:
keytool -printcertreq -file yourdomain.csr
Или, если установлен OpenSSL:
openssl req -noout -text -in yourdomain.csr
Убедитесь в трёх вещах в выводе: поле Subject показывает ваш точный DN, Subject Alternative Name перечисляет все нужные вам имена хостов, а размер Public-Key соответствует запрошенному (2048-битный RSA или другой выбранный вами вариант). Вы также можете вставить CSR в наш Декодер CSR для той же проверки в браузере.
Шаг 5: Отправка CSR вашему Certificate Authority
Откройте файл yourdomain.csr в любом текстовом редакторе. Файл представляет собой обычный текст, начинающийся с -----BEGIN NEW CERTIFICATE REQUEST----- и заканчивающийся -----END NEW CERTIFICATE REQUEST-----. Скопируйте весь блок, включая эти строки заголовка и окончания, и вставьте его в поле CSR при оформлении заказа у вашего CA. В Windows используйте Ctrl + A, затем Ctrl + C, чтобы захватить весь текст; в macOS используйте Cmd + A, затем Cmd + C.
Сделайте резервную копию файла хранилища ключей (yourdomain.p12) в безопасном месте, прежде чем закрыть терминал. Если вы потеряете хранилище ключей, вы потеряете закрытый ключ, и сертификат, выданный CA, окажется бесполезным.
После того как CA проверит ваш запрос и выпустит сертификат, продолжите с разделом как установить ваш SSL-сертификат на Oracle. В WebLogic вы импортируете подписанный сертификат обратно в тот же псевдоним в том же хранилище ключей, а затем указываете SSL-слушателю на это хранилище ключей.
Сэкономьте 10% на SSL-сертификатах при заказе сегодня!
Быстрая выдача, надежное шифрование, 99,99% доверия к браузеру, специализированная поддержка и 25-дневная гарантия возврата денег. Код купона: SAVE10


