четверг, 18 сентября 2008 г.

Создание самоподписанного SSL сертификата для apache


Крохотная, но очень часто нужная страничка из записной книжки.
Команды взяты отсюда
Опыты проводились с apache-ssl-1.3.41, но по идее долно работать и для других версий.
Создать самоподписанный сертификат без пароля (passphrase) с временем жизни 1000 дней (по умолчанию - 30):
$ openssl req -new -x509 -nodes -out server.crt -keyout server.key -days 1000
Глянуть содержимое сертификата:
$ openssl x509 -noout -text -in server.crt
Подробнее об опциях читать man req и man x509 man openssl дан только общий обзор команды)

P.S. после длительных попыток заставить корректно работать name-based virtual hosting с SSL (не то что оно совсем не работало, оно работало, но как-то не так - напр. упорно выдавало клиенту для разных виртуальных хостов один и тот же сертификат), нашел в официальной документации строку, что сие невозможно. См. здесь и здесь Вот так просто и сурово: "не работает по причине самой природы протокола SSL". Все нередко встречающиеся в сети конфиги с директивами SSLCertificateFile внутри контейнера <VirtualHost> считать неудачной шуткой. Единственный рекомендованный документацией путь - использование разных портов для разных виртуальных хостов.

Комментариев нет: