Jump to content

Как установить SSL сертификат от CloudFlare на свой сервер?

Featured Replies

Cloudflare дает скачать сертификат и ключ в двух указанных местах (видимо, для разных целей). Но для установки на мой сервер нужны еще данные bundle. 

ClientCertificatesa108.netIvangorshkovgmail.comsAccountCloudflareBrave.jpg-FastStone.thumb.jpg.70579a48dbc6ef44f986a3ed93d16764.jpg

"CA bundle – это документ, содержащий корневой и промежуточный сертификаты соответствующего центра сертификации. Файл имеет расширение .ca_bundle и используется для установки SSL сертификатов на сервере Apache. Если Ваш сайт расположен на другом сервере, у Вас нет необходимости создавать CA bundle, Вы можете спокойно использовать корневой и промежуточный сертификаты, полученные на нашем сайте."

Нагуглил вот такое, но если кто-то уже делал, подскажите, пошагово, как собрать bundle из данные, которые предоставляет CloudFlare?

CA_bundlecrtBrave.thumb.jpg.6f81902cf47a00b3c244810e9ae04bab.jpg

Дело в том, что сертификат выдается CloudFlare на срок до 15 лет бесплатно. Это сильно сэкономит время, не нужно будет каждые 3 месяца переустанавливать сертификат вручную. Я знаю про скрипты автоматического получения сертификата, но они сложны для установки, я их не ставил, считаю их издевательством над юзабилити. Хочу попробовать сертификат от CF.

 

 

Edited by Zero108

Link to comment
https://ipbmafia.ru/topic/26166-kak-ustanovit-ssl-sertifikat-ot-cloudflare-na-svoj-server/
Share on other sites
  • Zero108 changed the title to Как установить SSL сертификат от CloudFlare на свой сервер?

У меня выглядит так:

 ssl.jpg.7a82f5cd66811c7dc6808e98fb2dcf16.jpg

Качаем ssl, inter.. и root и просто вставляем их в новый файл в порядке root, inter и ssl. Обзываем как угодно, например bundle.crt В финале имеем два файла, private.key и bundle.crt, их и прописываем в конфиге nginx

root и inter вроде как можно взять тут: https://github.com/cloudflare/cfssl_trust - это CF-ное хранилище сертификатов. ca-bundle.crt и int-bundle.crt

Рутовый Origin RSA PEM сертификат качается тут: https://developers.cloudflare.com/ssl/origin-configuration/origin-ca/#cloudflare-origin-ca-root-certificate

 

Не нашел на гитхабе, какой файл представляет intermediate сертификат.

В файле int-bundle.crt 48K строк. Это точно то, что нужно?

Для связи с Cloudflare получается нужно два файла:

domain.crtca - сюда кладем ssl сертификат.

domain.key - сюда кладем приватный ключ.

Вроде для связи сервера с сервером Cloudflare другие сертификаты не нужны. Root можно добавить в первый файл, но от этого ничего не меняется. Про intermediate вообще народ в CloudFlare Community первый раз слышит и сильно удивляется. 

Этот внутренний сертификат позволяет 15 лет моему серверу общаться по ssl с сервером CloudFlare. А внешний сертификат для пользователей моего сайта CloudFlare назначает сам автоматически. Теперь не нужно каждые три месяца получать бесплатный LetsEncrypt сертификат и тем более покупать платные сертификаты.

0027db7da9.jpg

Edited by Zero108

31 минуту назад, Zero108 сказал:

Теперь не нужно каждые три месяца получать бесплатный LetsEncrypt сертификат

А у меня сам обновляется)

Прям вот сам или нужно дяденек на хостинге просить настроить скрипт? Задолбал этот LetsEncrypt. Несколько раз не сможет скрипт получить по разным причинам сертификат - сначала на час забанят, потом на сутки. И будет сайт недоступен из-за отсутствия сертификата. Еще и на 3 месяца всего выдается. Каждые 3 месяца нужно напрячься и проверить все сайты, а не отвалился ли там дешманский летсэнкрипт. А у меня теперь на 15 лет!

Edited by Zero108

Это кому как удобно .. кому то настроить и забыть, а кому то настроить и забыть) каждый др.. как хочет ))

Для установки SSL сертификата от CloudFlare на свой сервер и создания bundle, вам следует выполнить следующие шаги:

  1. Скачайте сертификат и ключ с сайта CloudFlare, как вы уже сделали.

  2. Для создания bundle, вам нужно объединить корневой и промежуточный сертификаты. Вы можете получить их также с сайта CloudFlare или других источников сертификации. Обычно, они предоставляются в виде текстовых файлов.

  3. Откройте текстовые файлы с корневым и промежуточным сертификатами в текстовом редакторе (например, Notepad).

  4. Скопируйте содержимое корневого сертификата и вставьте его в конец промежуточного сертификата, таким образом, чтобы весь текст находился в одном файле.

  5. Сохраните этот файл с расширением .ca_bundle, например, cloudflare_ca_bundle.ca_bundle.

  6. Теперь у вас есть bundle, который включает в себя корневой и промежуточный сертификаты.

  7. Далее, в зависимости от вашего сервера (например, Apache, Nginx), настройте его для использования этого bundle и сертификата.

Этот bundle можно использовать вместе с вашим SSL сертификатом от CloudFlare для обеспечения безопасного соединения на вашем сервере. Убедитесь, что вы следуете документации вашего сервера для правильной настройки.

maztakillars спасибо, конечно, но информация немного не та. Для работы соединения мой сервер <-> сервера Cloudflare не требуются корневой и промежуточный сертификаты и их объединение с ssl сертификатом от CloudFlare. Достаточно приватного ключа и ssl сертификата, которые скачиваются в разделе для домена SSL/TLS -> Origin Server.

 

SSLCloudFlare--IPBMafia.ru-InvisionCommunityBrave.thumb.jpg.6df7ddc6fe05f92ce414a3fefcf4f195.jpg

Edited by Zero108

Я не сильно заморачиваюсь, создаю один wildcard сертификат для домена и потом все домены третьего уровня на него вешаю. При получении wildcard сертификата астерикс *домен прописан в настройках сертификата по умолчанию, додумывать ничего не нужно. То есть все поддомены могут жить на одном сертификате. Далее в панели управления ISP Manager 5 создают самоподписанный сертификат, чтобы панелька его видела, и вставляю в файлы /var/www/httpd-cert/<user>/<домен>.srt и /var/www/httpd-cert/<user>/<домен>.key данные, полученные от CloudFlare, перезагружаю службу nginx. Вот такой вот несложный процесс для получения сертификата на 15 лет. Чем проще - тем лучше. LetsEncrypt - напрягает, всего три месяца время жизни сертификата. Пусть сами тренируются, кто это придумал. А я пока выбрал CloudFlare.

Edited by Zero108

14 часов назад, Zero108 сказал:

Про intermediate вообще народ в CloudFlare Community первый раз слышит и сильно удивляется. 

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

Теоретически, если CF является сертификационным центром (root) и может выдавать сертификаты, заверенные своим корневым, то цепочка промежуточных не нужна.  Но если, например, CF передоверяет право выдавать сертификаты фирме "ПупкиN CRT" и выдает ей свой сертификат, то сертификаты для клиентов теперь будут подписаны пупкиным, а в цепочку сертификации добавится пупкинский промежуточный сертификат (intermediate). Поэтому стандартная цепочка почти всегда состоит из корневого (root), нескольких промежуточных (их может быть сколько угодно) и сертификата пользователя (сайта). Если это не так у CF, то это не меняет принципа, просто нет промежуточных. 

55 минут назад, Desti сказал:

Если это не так у CF, то это не меняет принципа, просто нет промежуточных.

Как мне объяснили в CloudFlare Community, root и intermediate сертификаты вообще не нужны, когда соединение происходит только до сервера CloudFlare:

InstallingCloudflareSSLcertificateonmyserver-WebsiteApplicationPerformanceSecurity-CloudflareCommunityBrave.thumb.jpg.2ffb1c4236bcff6c74bced4291271f7f.jpg

Как говорится, век живи, век учись. Хорошо, что теперь и вы, и я знаем, как работают сертификаты CloudFlare. Их принимает только сервер CloudFlare при strict DNS соединении. Это поможет и вам больше не вводить в заблуждение, как это было сделано вами ранее.

Ниже перечислено условие, при котором сертификат от CloudFlare будет работать:

Overviewa108.netIvangorshkovgmail.comsAccountCloudflareBrave.thumb.jpg.0631710dc67381128879ad3db5e7787b.jpg

Edited by Zero108

Zero108 есть возможность в итоге собрать эту инфу в кучу в пошаговый мануал и загрузить в статьи? 

 

HooLIGUN попробую, но не обещаю. 2 USDT сильно ускорят процесс из-за дополнительных каллорий в виде шоколада.

Edited by Zero108

        ssl_certificate         /etc/nginx/ssl/certificate.pem;
        ssl_certificate_key     /etc/nginx/ssl/key.key;
        ssl_client_certificate  /etc/nginx/ssl/origin-pull-ca.pem;
        ssl_verify_client on;
        ssl_session_cache   shared:SSL:50m;
        ssl_session_timeout 1h;


 

1 час назад, dfdgfgfsd сказал:
ssl_client_certificate  /etc/nginx/ssl/origin-pull-ca.pem;

В данном случае не требуется.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.


Guest
Ответить в этой теме...

Последние посетители 0

  • No registered users viewing this page.