Я настроил 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
.
Как уже упомянуто, Сервер Ubuntu идет с необходимыми инструментами. В зависимости от Вашей серверной версии необходимо будет искать определенную документацию. Я попытаюсь суммировать самоподписанный процесс поколения сертификата текущего LTS (12.04).
Сначала Вы генерируете ключи для Сертификата подписывая запрос (CSR):
openssl genrsa -des3 -out server.key 2048
Вам решать ввести пароль или нет. Если Вы делаете, каждый раз Вы (ре) запускаете сервис с помощью того сертификата, необходимо будет обеспечить пароль. Otoh можно создать "небезопасный" ключ без пароля от безопасного:
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
И наконец приложения с помощью сертификата/ключа должны быть настроены соответственно.