Jump to content
View in the app

A better way to browse. Learn more.

IPBMafia.ru - поддержка Invision Community, релизы, темы, плагины и приложения

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

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

Featured Replies

Posted

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

  • Zero108 changed the title to Как установить SSL сертификат от CloudFlare на свой сервер?

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

 ssl.jpg.7a82f5cd66811c7dc6808e98fb2dcf16.jpg

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

  • Author

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

 

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

  • Author

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

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

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

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

  • Author

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

0027db7da9.jpg

Edited by Zero108

  • Author

Прям вот сам или нужно дяденек на хостинге просить настроить скрипт? Задолбал этот 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 для обеспечения безопасного соединения на вашем сервере. Убедитесь, что вы следуете документации вашего сервера для правильной настройки.

  • Author

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

 

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

Edited by Zero108

  • Author

Я не сильно заморачиваюсь, создаю один 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, то это не меняет принципа, просто нет промежуточных. 

  • Author
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

        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;


 

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.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.