Я установил SSL на своем веб-сервере, теперь мне нужно два файла:
- сертификат
- Ключ сертификата
Как мне создать самозаверяющий сертификат для тестирования?
Я установил SSL на своем веб-сервере, теперь мне нужно два файла:
Как мне создать самозаверяющий сертификат для тестирования?
Ответы:
Ubuntu, даже «минимальный» вариант, поставляется с ssl-cert
предустановленным пакетом, что означает, что вам не нужно ничего делать.
Файлы, которые вы ищете, уже находятся в вашей системе:
/etc/ssl/certs/ssl-cert-snakeoil.pem
/etc/ssl/private/ssl-cert-snakeoil.key
Дополнительно:
Если по какой-то причине вам нужно создать новый сертификат, вы можете запустить
sudo make-ssl-cert generate-default-snakeoil --force-overwrite
Если вы хотите изменить дату истечения срока действия вашего сертификата, вы можете манипулировать скриптом make-ssl-cert по адресу /usr/sbin/make-ssl-cert
. Примерно как 124 есть линия, похожая на эту:
openssl req -config $TMPFILE -new -x509 -nodes \
Где вы можете изменить срок годности, добавив -days
аргумент:
openssl req -config $TMPFILE -new -days 365 -x509 -nodes \
Дополнительные параметры можно найти на странице руководстваreq
.
/usr/share/ssl-cert/ssleay.cnf
.
www.test.mydomain.com
), используя hostname
команду в CLI VM. Затем создайте ключ заново, как вы предлагаете, с --force-overwrite
помощью общего имени ключа (CN), а затем сопоставьте его с URL-адресом тестирования. Наконец, на главном компьютере установка ключа в качестве доверенного корневого центра сертификации (в настройках Chrome / Advanced) дала мне желанную зеленую адресную строку.
make-ssl-cert
команда спасла мне день!
Как уже упоминалось, Ubuntu Server поставляется с необходимыми инструментами. В зависимости от версии вашего сервера вам придется искать конкретную документацию . Я попытаюсь обобщить процесс создания самозаверяющего сертификата текущей LTS (12.04) .
Сначала вы генерируете ключи для запроса подписи сертификата (CSR):
openssl genrsa -des3 -out server.key 2048
Вам решать вводить фразу-пароль или нет. Если вы это сделаете, то каждый раз, когда вы (повторно) запускаете службу, использующую этот сертификат, вам нужно будет предоставить пароль. Ото, вы можете создать «небезопасный» ключ без ключевой фразы из защищенного:
openssl rsa -in server.key -out server.key.insecure
# shuffle the key names to continue without passphrases
mv server.key server.key.secure
mv server.key.insecure server.key
И теперь вы создадите CSR из ключа. С помощью CSR и ключа можно создать самозаверяющий сертификат:
openssl req -new -key server.key -out server.csr
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
Последний шаг состоит в установке сертификата и ключа, обычно в Debian / Ubuntu /etc/ssl
:
sudo cp server.crt /etc/ssl/certs
sudo cp server.key /etc/ssl/private
И, наконец, приложения, использующие сертификат / ключ, должны быть настроены соответствующим образом.