Биллинговая система Nodeny
22 Ноября 2024, 05:47:26 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Прекращена поддержка версии Nodeny 49
 
   Начало   Помощь Поиск Войти Регистрация  
Страниц: [1]
  Печать  
Автор Тема: бесплатный ssl сертификат на 90дней с автоматическим проблением(letsencrypt)  (Прочитано 5180 раз)
k291
Старожил
****

Карма: -10
Offline Offline

Сообщений: 455


Просмотр профиля
« : 26 Декабря 2017, 00:54:12 »

Включаем https в apache:
Код:
nano etc/apache2/apache2.conf

Для включения HTTPS, перемещаем курсор в конец конфига и раскомментируем
Цитировать
Include etc/apache22/extra/httpd-ssl.conf


Шаг 1. Установка необходимого ПО
apt-get install git

Шаг 2. Качаем скрипты letsencrypt
cd /usr/local/
git clone h_ttps://github.com/letsencrypt/letsencrypt

переходим в директорию letsencrypt
cd letsencrypt

Шаг 3. Запускаем скрипт генерации сертификата и проверки домена:
./letsencrypt-auto --agree-dev-preview --server \h_ttps://acme-v01.api.letsencrypt.org/directory -a manual auth

Скрипт будет задавать вопросы на которые нужно отвечать утвердительно, так же скрипт запросит адрес почтового ящика для восстановления доступа к сервису в будущем (на ящик будет отправлено письмо с ссылкой валидации ящика) и домен для которого нужно сделать сертификат.
На последнем этапе скрипт потребует валидацию домена и опишет процедуру
нужно будет создать файл
h_ttp://domen.net/.well-known/acme-challenge/CX6sMneAd5fDddC8lInuw1TPKzw3r6v2clkS4BU
Код:
nano /var/www/html/.well-known/acme-challenge/CX6sMneAd5fDddC8lInuw1TPKzw3r6v2clkS4BU
и записать в него CX6sMneAd5fDddC8lInuw1TPKzHx3r6v2clkS4BU.henBYbMB4SCKck-1CYPb4irxo3gE_q-JtaBImh9CQ9k
как предлагает скрипт (второй вариант предлагает выполнение python скрипта на сервере).

После этого жмем ввод — Press Enter to Continue
и должны получить следующее:
Congratulations!...
Получаем сертификаты тут:
/etc/letsencrypt/live/domain.ru/

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.

Полные пути на эти файлы нужно будет указывать в конфигурационных файлах вебсерверов Apache, nginx.

Шаг 4. Файлы сертификата созданы и размещены по адресу: /etc/letsencrypt/live/domain.net/
Настройка ssl-конфига
Код:
nano /etc/apache2/sites-available/default-ssl.conf
Редактируем файл default-ssl.conf:
Цитировать
SSLCertificateFile "/usr/local/etc/apache22/ssl/server.crt"
SSLCertificateKeyFile "/usr/local/etc/apache22/ssl/server.key"
на
Цитировать
               SSLCertificateFile /etc/letsencrypt/live/domain.net/cert.pem
                SSLCertificateKeyFile /etc/letsencrypt/live/domain.net/privkey.pem
                SSLCertificateChainFile /etc/letsencrypt/live/domain.net/chain.pem

Шаг 5. Перезапускаем apache:
Код:
/etc/init.d/apache2 restart

Открываем в браузере
Цитировать
h_ttps://10.0.0.2/
или проверяем сертификат через сервис h_ttps://rus.gogetssl.com/check-ssl-installation/

Если не получаем приветствующего сообщения «It works!»:
Смотрим логи
Код:
tail /var/log/httpd-error.log

Шаг 6 (необязательный). Настройка автопродления сертификата
Вручную продлить сертификат на 3 месяца можно так:
Код:
/usr/local/letsencrypt/certbot-auto renew
Перезагружаем Apache:
Код:
/etc/init.d/apache2 restart

Для автоматизации процесса добавим задание в планировщик сron.
Откройте список заданий cron:
Код:
crontab -e
Добавьте следующие строки:
Цитировать
30 5 * * 1 sudo /usr/local/letsencrypt/certbot-auto renew
35 5 * * 1 sudo /etc/init.d/apache2 restart

Каждый понедельник, в 05:30 будет производиться запуск клиента Let's Encrypt, и в случае необходимости - выполняться продление сертификата.



Записан
Страниц: [1]
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.20 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!