Проект Let’s Encrypt только что вышел из стадии бета-теста и самое время рассказать о нем подробнее.
Проект был запущен шесть месяцев назад, предназначена она была для небольших веб-сайтов, которые не могут самостоятельно получить доступ к сертификатам SSL, обязательно нужным для корректной работы HTTPS.
Автором проекта стала Internet Security Research Group (ISRG), а проспонсировали все это Mozilla, Cisco, Akamai,IdenTrust, Electronic Frontier Foundation и Google. За полгода проект Let’s Encrypt выпустил около 2 млн и позволил более чем 2,4 миллиона доменных имён перейти на HTTPS-шифрование.
При использовании незащищённых (HTTP) сайтов может страдать безопасность пользователей. Более того, Google заявила, что она собирается помечать в браузере Chrome такие сайты предупреждениями, тем самым как бы отговаривая пользователей заходить на них.
Я только что протестировал у себя этот сервис — очень удобно и быстро. От момента прочтения новости до полностью рабочего HTTPS с валидным SSL на моем сервере прошло 10 минут. Для того, чтобы все это работало, вам потребуется Linux-сервер с установленным на нем веб-сервером (я использую апач), где собственно, ваш сайт находится. Для простого хостинга, к которому у вас нет рут-доступа, все это не подойдет, нам нужен или ваш собственный отдельный линукс-сервер, или VPS/VDS. Я думаю, обьяснять, что вам нужны базовые знание по работе в bash-терминале, не надо. Ниже опишу, как все это ставится на Debian-подобные системы (Ubuntu и другие).
Открываем терминал и начинаем лупить:
У меня вообще не был настроен SSL и HTTPS на апаче, поэтому быстренько раскатал mod_ssl и дефолтную конфигурацию для него:
sudo a2enmod ssl
sudo a2ensite default-ssl
Далее уже конкретно работаем с Let’s Encrypt:
$ git clone https://github.com/letsencrypt/letsencrypt $ cd letsencrypt $ ./letsencrypt-auto --help
После последней команды, система прогонит apt-get update && apt-get upgrade, поставит Python, если он не установлен, и в конце выполнения выведет нам место, куда установился letsencrypt. В эту самую директорию нужно перейти, и оттуда:
sudo ./letsencrypt --apache
И он все сделает сам — обменяется с трастовым сервером информацией, запишет нужное в конфиг-файлы апача, создаст сертификат, положит его куда надо. Запросит имя вашего домена, на котором висит сайт, вписываем. По итогу все у нас уже должно работать, и вас порядует вот такая картинка в браузере, где открыт ваш сайт:
На сайте авторов проекта есть также инструкции для других систем и NGINX. Думаю, если вы осилили установить и настроить его, у вас никаких трудов не вызовет английский мануал.
Сертификат создается сроком на 3 месяца. Чтобы его обновить, процедура просто прогоняется заново.