IT News: Digital Camera, OS, Laptop, Smartphone, Smart TV, Sound...

The Author's Project by Valeri N.Kravchuk
Сайт проверен Dr.Web
Меню сайта
  • Главная страница
  • Информация о сайте
  • Дневник
  • Каталог файлов
  • Обратная связь
  • Каталог сайтов
  • FAQ
  • Доска объявлений
  • Форум
  • Фотоальбом
  • Категории раздела
    Автомобильные гаджеты, ремонт... [220]
    Безопасность IT [484]
    Блоки питания, Power Banks, зарядки... [490]
    Видеорегистраторы [220]
    Гаджеты для спорта и здоровья... [190]
    Гаджеты, аксессуары... [625]
    Измерительная техника, инструменты [449]
    Накопители данных [226]
    Нетбуки, Ноутбуки, Ультрабуки [679]
    Мультиварки, блендеры и не только... [158]
    Планшеты [758]
    Радар-детекторы [26]
    Роботы-пылесосы [37]
    Своими руками [356]
    Сети, сетевые технологии, оборудование... [269]
    Смартфоны [4966]
    Фотокамеры, объективы, искусство фотографии.. [543]
    Умный дом [47]
    Электронные книги [96]
    CB, LPD, PMR- связь... [169]
    DECT, IP-телефоны [18]
    Drones, boats, cars... [108]
    electric cars [35]
    GPS-навигаторы, трекеры... [51]
    Linux и не только [4380]
    mini computers и не только... [409]
    News IT, Это интересно, ликбез... [1113]
    Smart TV, UltraHD, приставки, проекторы... [414]
    Smart Watch [263]
    Sound: наушники, плееры, усилители... [616]
    Windows 10... [298]
    Windows 11 [28]
    Погода

  • Метеорадар БРЕСТ
  • Погода в Бресте от www.yr.no

    Яндекс.Погода БРЕСТ

  • Интересные ссылки

    COMPIZOMANIA

    Наш опрос
    Оцените мой сайт
    Всего ответов: 1339
    Статистика
    Анализ веб сайтов

    Яндекс.Метрика

    Рейтинг@Mail.ru Яндекс цитирования

    Russian America Top. Рейтинг ресурсов Русской Америки.

    eXTReMe Tracker

    Правильный CSS!


    Онлайн всего: 1
    Гостей: 1
    Пользователей: 0
    Locations of visitors to this page
    Форма входа
    Главная » 2016 » Июнь » 30 » Использование клиента LetsEncrypt из репозитория дистрибутива Fedora
    07:46
    Использование клиента LetsEncrypt из репозитория дистрибутива Fedora

    Использование клиента LetsEncrypt из репозитория дистрибутива Fedora

    Оригинал: LetsEncrypt now available in Fedora
    Автор: James Hogarth
    Дата публикации: 14 декабря 2015 г.
    Перевод: А.Панин
    Дата перевода: 7 мая 2016 г.

    Использование клиента LetsEncrypt

    Не так давно началось открытое бета-тестирование проекта LetsEncrypt. Благодаря работе участников команды LetsEncrypt и разработчиков дистрибутива Fedora, официальный клиент LetsEncrypt был незамедлительно размещен в репозиториях Fedora 23 и Rawhide. Если вы хотите узнать подробнее о том, как он работает и для чего предназначен, вы можете обратиться к соответствующему разделу официального сайта проекта. В данной же статье мы рассмотрим процесс настройки веб-сервера Apache с целью использования сертификата проекта LetsEncrypt для шифрования HTTP-трафика.

    Проект LetsEncrypt предоставляет бесплатные сертификаты SSL всем желающим

    Проект LetsEncrypt предоставляет бесплатные сертификаты SSL всем желающим

    Использование клиента letsencrypt в дистрибутиве Fedora

    Официальный клиент letsencrypt может быть установлен в Fedora 23 и более новых версиях дистрибутива с помощью следующей команды:

    dnf install letsencrypt
    

    Официальный клиент поддерживает три метода подтверждения прав владения доменом:

    • Подтверждение в ручном режиме: файлы сертификата должны размещаться в соответствующей директории веб-сервера силами его администратора.
    • Подтверждение силами клиента: клиент LetsEncrypt принимает соединения от сервера на портах 80 и 443 и самостоятельно взаимодействует с ним.
    • Подтверждение путем создания файлов в корневой директории веб-сервера: клиент получает информацию о корневой директории веб-сервера (например, /var/www/html) и самостоятельно создает в ней все необходимые файлы.

    На момент написания статьи инструменты для полностью автоматизированной настройки веб-серверов Apache и nginx находятся в разработке.

    После окончания процесса установки упомянутого пакета программного обеспечения у вас появится возможность ознакомления с полным списком поддерживаемых клиентом аргументов командной строки благодаря наличию поддержки аргумента --help:

    letsencrypt --help all
    

    Подтверждение прав владения доменом в ручном режиме

    Данный метод подтверждения прав владения доменом связан с наибольшими затратами времени, но в то же время, он позволяет запускать клиент LetsEncrypt в отдельной системе и впоследствии копировать файлы сертификата на веб-сервер. В зависимости от выбранной вами модели обеспечения безопасности веб-сервера, он может оказаться предпочтительным.

    По умолчанию клиент использует интерфейс на основе библиотеки ncurses, но он также может работать в обычном текстовом режиме:

    $ letsencrypt --text --email recovery@example.com \
    --domains www.example.com,example.com,foo.example.com \
    --agree-tos --renew-by-default --manual certonly
    

    Заданный адрес электронной почты будет использоваться лишь в том случае, если вы потеряете данные своей учетной записи. Приведенная выше команда позволяет пройти идентификацию, что необходимо для отзыва и генерации нового сертификата.

    В том случае, если перечисляется множество имен доменов, они будут включены в раздел SubjectAltNames одного сертификата.

    После исполнения данной команды клиент попросит вас создать файл с секретными данными по заданному пути. Выполните следующие команды для генерации этого файла (замените "somethingrandomgivenbyservergoeshere" на выданные клиентом секретные данные, а "anotherrandomthinghere" - на выданное клиентом имя файла).

    $ cd /var/www/html
    $ mkdir -p .well-known/acme-challenge
    $ echo "somethingrandomgivenbyservergoeshere" > .well-known/acme-challenge/anotherrandomthinghere
    

    После подтверждения факта размещения файла с секретными данными по заданному пути сервер ACME проверит его наличие. При совпадении имени файла и секретных данных в нем, проект LetsEncrypt выдаст вам сертификат. Это сертификат должен будет либо перемещен, либо связан с помощью символьной ссылки с соответствующей директорией для его автоматического обновления.

    Подтверждение прав владения доменом силами клиента

    Данный метод подтверждения прав владения доменом позволяет выполнять все описанные выше действия в автоматическом режиме, который обуславливает возможность полной автоматизации процесса обновления сертификата. Его недостатком является необходимость временной остановки основного веб-сервера для того, чтобы клиент LetsEncrypt мог запустить свой встроенный HTTP-сервер и передать секретные данные основному серверу проекта.

    IP-адрес машины, с которой отправляется запрос на подтверждение прав владения доменом силами клиента должен совпадать с IP-адресом, указанным в записи A этого домена, следовательно, клиент должен запускаться непосредственно на веб-сервере, для которого создается сертификат.

    $ letsencrypt --text --renew-by-default --email recovery@example.com \
    --domains www.example.com,example.com,foo.example.com \
    --agree-tos --standalone --standalone-supported-challenges http-01 certonly
    

    Со стороны пользователя не требуется никаких действий. Данный метод подтверждения прав владения доменом может использоваться в автоматическом режиме при условии наличия свободного порта 80 или 443, а также тогда, когда допустим небольшой период бездействия веб-сервера. Например, он может использоваться на этапе начальной настройки перед запуском основного веб-сервера в случае работы с такой автоматизированной системой управления, как Ansible.

    После получения сертификата сервер должен быть соответствующим образом настроен для его использования.

    Подтверждение прав владения доменом путем создания файлов в корневой директории веб-сервера

    Данный метод является удобным компромиссом. В том случае, если существующий веб-сервер обслуживает клиентов, клиент LetsEncrypt может получить от пользователя путь к его корневой директории и автоматически создать файл с секретными данными для сервера ACME. Данный метод подтверждения прав владения доменом также предполагает отправку запроса с IP-адреса, соответствующего IP-адресу, который приведен в записи A указанного домена.

    $ letsencrypt --text --renew-by-default --email recovery@example.com \
    --domains www.example.com,example.com,foo.example.com \
    --agree-tos --webroot --webroot-path /var/www/html certonly
    

    Подтверждение прав владения доменом путем создания файлов в корневой директории веб-сервера

    Использование сертификата LetsEncrypt

    После успешного подтверждения прав владения доменом в директории /etc/letsencrypt будут созданы файлы с информацией о выбранном методе подтверждения, а также данными использованных ключей, сертификата и использованного запроса.

    Эти файлы могут быть скопированы в соответствующие директории веб-сервера для последующего использования. Но лучшей идеей является создание символьных ссылок, которые позволят обновлять сертификат без дополнительного обновления конфигурации веб-сервера.

    Конфигурация расширения mod_ssl может быть осуществлена следующим образом:

    $ ln -s /etc/letsencrypt/live/www.example.com/cert.pem /etc/pki/tls/certs/www.example.com.crt
    $ ln -s /etc/letsencrypt/live/www.example.com/chain.pem /etc/pki/tls/certs/www.example.com.chain.crt
    $ ln -s /etc/letsencrypt/live/www.example.com/privkey.pem /etc/pki/tls/private/www.example.com.key
    $ cp /etc/httpd/conf.d/ssl.conf{,.backup}
    $ sed -i 's@\(SSLCertificateFile\) .*@\1 /etc/pki/tls/certs/www.example.com.crt@' /etc/httpd/conf.d/ssl.conf
    $ sed -i 's@\(SSLCertificateKeyFile\) .*@\1 /etc/pki/tls/private/www.example.com.key@' /etc/httpd/conf.d/ssl.conf
    $ sed -i 's@#\(SSLCertificateChainFile\) .*@\1 /etc/pki/tls/certs/www.example.com.chain.crt@' /etc/httpd/conf.d/ssl.conf
    

    После перезапуска веб-сервера он должен использовать сгенерированный сертификат.

    Для файлов сертификатов из используемой по умолчанию директории устанавливается контекст SELinux etc_t. Они могут читаться серверами httpd и nginx, поэтому описанная конфигурация будет вполне работоспособной. Однако, пока в базовом наборе политик SELinux не реализовано поддержки контекста для сертификатов LetsEncrypt, имеет смысл установить подходящий контекст для файлов сертификата вручную, чтобы предотвратить любые злонамеренные действия.

    $ semanage fcontext -a -t cert_t '/etc/letsencrypt/(archive|live)(/.*)?'
    $ restorecon -Rv /etc/letsencrypt
    

    Обновление сертификата

    Срок действия выдаваемых сертификатов ограничивается 90 днями для того, чтобы сертификаты, выданные недобросовестным пользователям, становились недействительными максимально быстро. Также ведутся дискуссии о сокращении срока действия сертификатов в будущем. Разумеется, разработчики предполагают, что пользователи будут автоматизировать процесс получения сертификатов и обновлять их через каждые 30 или 60 дней для того, чтобы постоянно использовать свежий сертификат, действительный в течение 90 дней.

    Все, что требуется для отправки запроса обновления сертификата - это повторный запуск клиента letsencrypt для подтверждения прав владения доменом, после которого будут сгенерированы новый ключ и сертификат.

    Файлы в поддиректории live являются всего лишь символьными ссылками на текущие версии соответствующих файлов из поддиректории /etc/letsencrypt/archive. Они позволяют отслеживать историю обновления версий сертификатов и осуществлять откаты обновлений при необходимости.

    $ ls -1 /etc/letsencrypt/archive/www.example.com
     cert1.pem
     cert2.pem
     chain1.pem
     chain2.pem
     fullchain1.pem
     fullchain2.pem
     privkey1.pem
     privkey2.pem
    
    $ ls -lGg /etc/letsencrypt/live/www.example.com
     lrwxrwxrwx. 1 41 Dec 2 23:19 cert.pem -> ../../archive/www.example.com/cert2.pem
     lrwxrwxrwx. 1 42 Dec 2 23:19 chain.pem -> ../../archive/www.example.com/chain2.pem
     lrwxrwxrwx. 1 46 Dec 2 23:19 fullchain.pem -> ../../archive/www.example.com/fullchain2.pem
     lrwxrwxrwx. 1 44 Dec 2 23:19 privkey.pem -> ../../archive/www.example.com/privkey2.pem
    

    Для использования новых версий файлов следует просто перезапустить веб-сервер. Если вы используете метод подтверждения прав владения доменом, который не требует взаимодействия с веб-сервером, такой, как метод подтверждения путем создания файлов в корневой директории веб-сервера, это процесс может быть автоматизирован с помощью задачи cron или таймера systemd.

    Пример создания таймера systemd:

    Отзыв сертификата

    При неблагоприятном стечении обстоятельств закрытый ключ может попасть в руки злоумышленников. В подобных ситуациях следует отзывать сертификат для того, чтобы кто-либо не смог скомпрометировать веб-сервер. Учтите, что в процессе обновления сертификатов не происходит их отзыва, ведь сервер должен иметь возможность использовать старый сертификат в течение некоторого промежутка времени после его обновления до момента перезапуска или получения файлов нового сертификата.

    Для отзыва сертификата следует использовать клиент с аргументом revoke:

    $ letsencrypt revoke --cert-path /etc/letsencrypt/archive/www.example.com/cert1.pem
    

    В случае ошибки в процессе отзыва сертификата клиент сообщит о ней. В противном случае сертификат будет отозван!

    Заключительные слова

    Платформа LetsEncrypt вошла в фазу открытого бета-тестирования и постоянно дорабатывается. Важно периодически заглядывать в официальную документацию проекта для того, чтобы быть в курсе изменений функций официального клиента. Также следует обратить внимание на то, что некоторые команды и аргументы, описанные в официальной документации проекта, такие, как команда для автоматического обновления клиента, а также плагин для создания файла конфигурации Apache, не поддерживаются клиентом из репозитория дистрибутива Fedora.

    В том случае, если вы обнаружите ошибку в версии клиента из репозитория Fedora, пожалуйста, сообщите о ней в систему отслеживания ошибок для того, чтобы разработчики дистрибутива смогли исправить ее, упростив тем самым жизнь пользователей, которые будут работать с ним в будущем.

     

     

    http://test.rus-linux.net/MyLDP/sec/letsencrypt_now_available_fedora.html

     

    Категория: Linux и не только | Просмотров: 604 | Добавил: laptop | Рейтинг: 0.0/0
    Всего комментариев: 0
    Добавлять комментарии могут только зарегистрированные пользователи.
    [ Регистрация | Вход ]
    Волк слабее льва и тигра, но в цирке волк не выступает!
    Волк слабее льва и тигра, но в цирке волк не выступает!
    Волк - единственный из зверей, который может пойти в бой на более сильного противника.
    Если же он проиграл бой, то до последнего вздоха смотрит в глаза противника. После этого умирает...

    Праздники сегодня

    Поиск
    Календарь
    Архив записей
    Друзья сайта
  • Официальный блог
  • JEEP - the best! Mercedes - the best! Автомобильный портал города Бреста: технические характеристики с фото, авторынок, автоспорт...
    Наша кнопка
    IT новости с моего лаптопа...

    Внимание!
    Администратор сайта laptop.ucoz.ru не несет ответственности за содержание рекламных объявлений. Все используемые на сайте зарегистрированные товарные знаки принадлежат своим законным владельцам! Используемая со сторонних источников информация публикуется с обязательными ссылками на эти источники.
    Copyright Valeri N.Kravchuk © 2007-2024