Сегодня есть возможность получить абсолютно бесплатно и довольно быстро легальный и корректный сертификат для HTTPS. Для этого нужно воспользоваться услугами https://letsencrypt.org.
Здесь я выкладываю подробную инструкцию по получению сертификата с помощью Let’s Encrypt.
Сначала нужно установить git, если его ещё нет:
apt-get install git
Затем получаем сам клиент letsencrypt:
1 2 3 |
git clone https://github.com/letsencrypt/letsencrypt cd letsencrypt ./letsencrypt-auto --help |
Команда letsencrypt-auto скачает все необходимые зависимости и обновит исходные коды клиента.
Получение и настройка сертификата для Apache:
./letsencrypt-auto --apache
Для nginx тоже есть подобная команда, но на текущий момент (декабрь 2015) на официальном сайте написано, что она в стадии бета и могут быть ошибки.
Для всех других платформ нужно использовать команду certonly.
Для получения сертификата с использованием «standalone» (может потребоваться остановить ваш сервер nginx service nginx stop, или какой там у вас слушает порт 80) сервера для получения.
1 |
./letsencrypt-auto certonly --standalone -d example.com -d www.example.com |
Вместо example.com нужно подставить ваш домен.
Вам предложат ввести e-mail, который будет использоваться для важных сообщений и для восстановления потерянного ключа.
Затем вам нужно будет согласиться с лицензионным соглашением.
Ваш сертификат и вся цепочка сохранится по пути /etc/letsencrypt/live/example.com/
В этом каталоге будут ссылки на файлы с ключами:
privkey.pem — приватный ключ для сертификата. Хранить в секрете. Это то, что Apache требует для SSLCertificateKeyFile, и nginx для ssl_certificate_key.
cert.pem — только сертификат сервера, то что требует Apache для SSLCertificateFile.
chain.pem — все сертификаты, которые должны обслуживаться браузером БЕЗ сертификата сервера. Это Apache требует для SSLCertificateChainFile.
fullchain.pem — вся цепочка, объединение chain.pem и cert.pem. Это nginx требует для ssl_certificate.
Теперь, когда у нас есть сертификат, мы можем настроить HTTPS в nginx или настроить HTTPS в Apache Tomcat.
Есть смысл от бесплатного сертификата? гугл/яша их нормально хавают? Просто платные заметно повышают рейтинг по сравнению с конкурентами, а вот с бесплатными еще не сталкивался