← Cloudflare One / cloudflare-one / team-and-resources / devices / user-side-certificates
Установите сертификат вручную
Если ваше устройство не поддерживает установка сертификата через Cloudflare One Client, вы можете вручную установить сертификат Cloudflare. Сертификат необходимо добавить как в System Keychain и к отдельные магазины приложений. Эти шаги необходимо выполнить на каждом новом устройстве, к которому будет применяться HTTP-фильтрация.
Zero Trust будет проверять трафик только с использованием установленных сертификатов, настроенных на Доступно и Используется.
Чтобы установить сертификат вручную, необходимо выполнить следующее:
- Скачайте сертификат Cloudflare и проверьте его.
- Установите сертификат в хранилище сертификатов операционной системы.
- Если целевое приложение не принимает сертификаты операционной системы, установите сертификат в хранилище сертификатов приложения.
1. Скачайте корневой сертификат Cloudflare
Сначала generate и загрузите сертификат Cloudflare. Сертификат доступен в обоих .pem и .crt формат файла. Для некоторых приложений сертификат должен быть определённого типа файла, поэтому обязательно скачайте файл, наиболее подходящий для вашей задачи.
- В Панель управления Cloudflare ↗, перейдите в Zero Trust > Политики трафика > Настройки трафика.
- Выберите Сертификаты.
- Выберите сертификат, который нужно скачать.
- Выберите Дополнительные действия.
- В зависимости от нужного вам формата выберите Скачать .pem и/или Скачать .crt.
Как вариант, можно скачать и установить сертификат использование Cloudflare One Client. Cloudflare One Client добавит сертификаты в системное хранилище сертификатов устройства в installed_certs/<certificate_id>.pem.
2. Проверьте загруженный сертификат
Чтобы проверить свою загрузку, откройте терминал и проверьте, что хеш загруженного сертификата совпадает с отпечатком, указанным в Отпечаток сертификата (thumbprint). Например:
SHA1
openssl x509 -noout -fingerprint -sha1 -inform der -in <certificate.crt>SHA1 Fingerprint=BB:2D:B6:3D:6B:DE:DA:06:4E:CA:CB:40:F6:F2:61:40:B7:10:F0:6Copenssl x509 -noout -fingerprint -sha1 -inform pem -in <certificate.pem>SHA1 Fingerprint=BB:2D:B6:3D:6B:DE:DA:06:4E:CA:CB:40:F6:F2:61:40:B7:10:F0:6CSHA256
openssl x509 -noout -fingerprint -sha256 -inform der -in <certificate.crt>sha256 Fingerprint=F5:E1:56:C4:89:78:77:AD:79:3A:1E:83:FA:77:83:F1:9C:B0:C6:1B:58:2C:2F:50:11:B3:37:72:7C:62:3D:EFopenssl x509 -noout -fingerprint -sha256 -inform pem -in <certificate.pem>sha256 Fingerprint=F5:E1:56:C4:89:78:77:AD:79:3A:1E:83:FA:77:83:F1:9C:B0:C6:1B:58:2C:2F:50:11:B3:37:72:7C:62:3D:EF3. (Необязательно) Преобразуйте сертификат
Некоторым приложениям требуется сертификат в формате .cer тип файла. Скачанный сертификат можно преобразовать с помощью OpenSSL ↗:
- Установите OpenSSL ↗.
- Скачайте сертификат Cloudflare в
.pemформате. - В терминале преобразуйте сертификат в формат DER с помощью
.cerтип файла:openssl x509 -inform PEM -in ~/Downloads/certificate.pem -outform DER -out ~/Downloads/certificate.cer
- Установите OpenSSL для Windows ↗.
- Скачайте сертификат Cloudflare в
.pemформате. - В терминале PowerShell преобразуйте сертификат в формат DER с помощью
.cerтип файла:openssl x509 -inform PEM -in "$HOME\Downloads\certificate.pem" -outform DER -out "$HOME\Downloads\certificate.cer"
4. Добавьте сертификат в операционные системы
Если вы разворачиваете сертификат Cloudflare на настольных устройствах, используйте Установите сертификат с помощью Cloudflare One Client метод.
Для мобильных устройств требуется ручная установка, описанная в инструкциях ниже.
macOS
В macOS можно выбрать keychain, в который нужно установить сертификат. От выбранного keychain зависит, каких пользователей затронет доверие к корневому сертификату.
| Связка ключей | Область действия Access |
|---|---|
| login | Пользователь, выполнивший вход |
| Local Items | Пользователи с доступом к кешированным паролям iCloud |
| Система | Все пользователи в системе |
Чтобы установить сертификат Cloudflare в macOS, можно использовать либо приложение «Связка ключей», либо терминал. В обоих случаях необходимо скачайте сертификат в .crt формате.
- Скачайте сертификат Cloudflare.
- Откройте
.crtфайл в Keychain Access. При появлении запроса введите локальный пароль. - В Связка ключей, выберите вариант доступа, который соответствует вашим потребностям, и выберите Add.
- В списке сертификатов найдите только что установленный сертификат. Keychain Access пометит его как ненадёжный. Щёлкните сертификат правой кнопкой мыши и выберите Получить сведения.
- Выберите Доверие. В разделе При использовании этого сертификата, выберите Always Trust.
- Откройте
Корневой сертификат установлен и готов к использованию.
- Скачайте сертификат Cloudflare.
- Откройте Terminal.
- Добавьте сертификат в ваш keychain:
sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain <path-to-certificate.crt>Эта связка ключей предоставит доступ к сертификату всем пользователям системы. Если вы хотите установить сертификат в другую связку ключей, замените System.keychain с именем этого keychain.
- Обновите хранилище CA OpenSSL, включив в него сертификат Cloudflare:
echo | sudo tee -a /etc/ssl/cert.pem < certificate.pemКорневой сертификат установлен и готов к использованию.
Windows
В Windows сертификат можно установить в одно из двух мест, и от выбора зависит, каких пользователей затронет доверие к корневому сертификату.
| Store location | Область действия Access |
|---|---|
| Текущее хранилище пользователей | Пользователь, выполнивший вход |
| Local Machine Store | Все пользователи в системе |
- Скачайте сертификат Cloudflare.
- Щёлкните правой кнопкой мыши по файлу сертификата.
- Выберите Открыто. Если появится предупреждение системы безопасности, выберите Открыто и продолжите.
- Сертификат появится окно. Выберите Установите сертификат.
- Теперь выберите местоположение хранилища. Если появится предупреждение системы безопасности, выберите Да и продолжите.
- На следующем экране выберите Обзор.
- В списке выберите Доверенные корневые удостоверяющие центры хранилище.
- Выберите OK, затем выберите Готово.
Корневой сертификат установлен и готов к использованию.
Linux
Расположение, куда нужно установить корневой сертификат, зависит от вашего дистрибутива Linux. Следуйте инструкциям для конкретного дистрибутива.
Следующая процедура применима к системам на основе Debian, таким как Debian, Ubuntu и Kali Linux.
-
Скачайте сертификат Cloudflare в
.pemформате. -
Установите
ca-certificatesпакет.sudo apt-get install ca-certificates -
Скопируйте сертификат в систему, изменив расширение файла на
.crt.sudo cp certificate.pem /usr/share/ca-certificates/certificate.crt -
Импортируйте сертификат.
sudo dpkg-reconfigure ca-certificates
Следующая процедура применима к системам на основе Red Hat, таким как CentOS и Red Hat Enterprise Linux (RHEL).
-
Скачайте сертификат Cloudflare в обоих
.crtи.pemформате. -
Установите
ca-certificatesпакет.sudo dnf install ca-certificates -
Скопируйте оба сертификата в хранилище доверенных сертификатов.
sudo cp certificate.crt certificate.pem /etc/pki/ca-trust/source/anchors -
Импортируйте сертификат.
sudo update-ca-trust
NixOS не использует системное хранилище сертификатов для самообновления, а полагается на сертификаты, найденные в ~/.nix-profile/etc/ssl/certs или предоставлен NIX_SSL_CERT_FILE во время выполнения.
iOS
- В Safari скачайте сертификат Cloudflare в
.pemформате. - Откройте приложение "Files" и перейдите в Недавние.
- Найдите и откройте загруженный файл сертификата. Появится сообщение с подтверждением, что профиль загружен. Выберите Закрыть.
- Откройте «Настройки». Выберите Профиль загружен раздел под данными вашей учётной записи Apple. Либо перейдите в Общее > VPN & Device Management и выберите Gateway CA - Cloudflare Managed G1 профиль.
- Выберите Установить. Если устройство iOS защищено кодом-паролем, вам будет предложено ввести код-пароль.
- Появится предупреждение о сертификате. Выберите Установить. Если появится второй запрос, выберите Установить снова.
- Появится экран Profile Installed. Выберите Готово. Сертификат теперь установлен. Однако, прежде чем его можно будет использовать, устройство должно ему доверять.
- В Settings перейдите в Общее > Обзор > Параметры доверия сертификата. Установленные корневые сертификаты будут отображаться в разделе Enable full trust for root certificates.
- Включите сертификат Cloudflare.
- Появится предупреждающее сообщение о безопасности. Выберите Продолжение.
Корневой сертификат установлен и готов к использованию.
Android
- Скачайте сертификат Cloudflare.
- В Settings перейдите в Безопасность > Продвинутый уровень > Шифрование и учётные данные > Установите сертификат.
- Выберите Сертификат CA.
- Выберите Установить всё равно.
- Подтвердите свою личность.
- Выберите файл сертификата, который нужно установить.
Корневой сертификат установлен и готов к использованию.
ChromeOS
Устройства ChromeOS используют разные способы хранения и развёртывания корневых сертификатов. Сертификаты могут подпадать под действие VPN и приложения или Сертификат CA параметры. Следуйте инструкции, соответствующей вашему устройству.
-
Скачайте сертификат Cloudflare в
.crtформате. -
Перейдите в Настройки > Приложения > Google Play Store.
-
Выберите Управлять настройками Android.
-
Перейдите в Безопасность и местоположение > Учётные данные > Установите с SD-карты.
- В диалоговом окне открытия файла выберите
certificate.crtфайл, который вы скачали. Выберите Открыто. - Введите имя для идентификации сертификата. Убедитесь, что Использование учётных данных имеет значение VPN и приложения.
- Выберите OK.
-
Скачайте сертификат Cloudflare в
.crtформате. -
Перейдите в Настройки > Приложения > Google Play Store.
-
Выберите Управлять настройками Android.
-
Перейдите в Безопасность и местоположение > Учётные данные > Установите сертификат > CA-сертификат.
- Когда появится предупреждение о конфиденциальности, выберите Установить всё равно.
- В диалоговом окне открытия файла выберите
certificate.crtфайл, который вы скачали. Выберите Открыто. - Чтобы проверить, что сертификат установлен и является доверенным, перейдите в Настройки > Приложения > Google Play Store > Manage Android Preferences > Безопасность > Учётные данные > Доверенные учётные данные > Пользователь.
После добавления сертификата Cloudflare в ChromeOS вам также может понадобиться установить сертификат в браузере.
5. Добавьте сертификат в приложения
Некоторые приложения не используют системное хранилище сертификатов, поэтому сертификат нужно добавлять непосредственно в приложение. Для отдельных приложений, например перечисленных ниже, выполните действия из этого раздела и добавьте сертификат Cloudflare в приложение, чтобы расшифровка TLS работала корректно.
Если вы не настроите приложение так, чтобы оно доверяло сертификату Cloudflare, оно откажется подключаться, и вы получите ошибку недоверенного сертификата.
Для всех приложений ниже сначала нужно скачать сертификат Cloudflare с помощью инструкции, приведённые выше. В macOS путь по умолчанию к файлу базы данных системной связки ключей: /Library/Keychains/System.keychain. В Windows путь по умолчанию: \Cert:\CurrentUser\Root.
Браузеры
Браузеры могут использовать собственные хранилища сертификатов или полагаться на хранилище сертификатов операционной системы.
Chrome
Версии Chrome до Chrome 113 используют хранилище корневых сертификатов операционной системы ↗ на macOS и Windows. Chrome версии 113 и новее на macOS и Windows, а также все версии на Linux и ChromeOS используют Внутреннее хранилище доверенных сертификатов Chrome ↗.
Чтобы установить сертификат Cloudflare в Chrome вручную:
- Скачайте сертификат Cloudflare в
.pemформате. - В Chrome перейдите в Настройки > Privacy and security > Безопасность.
- Выберите Управление сертификатами.
- Перейдите в Центры сертификации. Выберите Импорт.
- В диалоговом окне открытия файла выберите
certificate.pemфайл, который вы скачали. - В диалоговом окне включите Доверять этому сертификату для идентификации веб-сайтов, Доверять этому сертификату для идентификации пользователей электронной почты, а также Доверять этому сертификату для идентификации производителей программного обеспечения. Выберите OK.
- Чтобы проверить, что сертификат был установлен и является доверенным, найдите его в Центры сертификации.
Сведения об установке сертификата Cloudflare для организаций см. в документация Google по Chrome Enterprise и Education ↗.
Firefox
Чтобы установить сертификат Cloudflare в Firefox вручную:
- Скачайте сертификат Cloudflare в
.pemформате. - В Firefox перейдите в Настройки > Privacy & Security.
- В Безопасность, выберите Сертификаты > Просмотр сертификатов.
- В Центры сертификации, выберите Импорт.
- В диалоговом окне открытия файла выберите
certificate.pemфайл, который вы скачали. - В диалоговом окне включите Доверять этому CA для идентификации веб-сайтов и Доверять этому CA для идентификации пользователей электронной почты. Выберите OK.
- Чтобы проверить, что сертификат был установлен и является доверенным, найдите его в таблице в разделе Cloudflare.
Сведения об установке сертификата Cloudflare для организаций см. в этой Статья службы поддержки Mozilla ↗.
Программное обеспечение для управления мобильными устройствами (MDM)
Zero Trust интегрируется с несколькими партнёры по программному обеспечению для управления мобильными устройствами (MDM) чтобы развернуть Cloudflare One Client на устройствах.
Microsoft Intune
Чтобы загрузить и развернуть сертификат Cloudflare в Microsoft Intune:
- Скачайте и преобразуйте сертификат Cloudflare в формат DER с помощью
.cerтип файла. - В Microsoft Intune создать профиль доверенного сертификата ↗ с вашим преобразованным сертификатом.
Дополнительные сведения см. в Документация Microsoft ↗.
Jamf Pro
Чтобы загрузить и развернуть сертификат Cloudflare в Jamf Pro:
- Скачайте и преобразуйте сертификат Cloudflare в формат DER с помощью
.cerтип файла. - В Jamf Pro перейдите в Computers > Профили конфигурации чтобы создать профиль конфигурации компьютера или перейти в Устройства > Профили конфигурации чтобы создать профиль конфигурации мобильного устройства. Выберите Новое.
- Добавьте название и описание профиля.
- Выберите, должен ли Jamf устанавливать сертификат автоматически или через Self Service, а также нужно ли устанавливать сертификат для одного пользователя или для всех пользователей устройства.
- Выберите Add > Сертификат. Выберите файл сертификата.
- Снимите флажок Разрешить экспорт из keychain.
- Выберите Область действия, затем выберите устройства или группы, на которые нужно развернуть сертификат.
- Выберите Save.
Дополнительные сведения см. в документация Jamf Pro ↗.
Kandji
Чтобы загрузить и развернуть сертификат Cloudflare в Kandji:
- Скачайте сертификат Cloudflare в
.crtформате. - В Kandji загрузить сертификат ↗ как сертификат в формате PKCS #1.
Hexnode
Чтобы загрузить и развернуть сертификат Cloudflare в Hexnode:
- Скачайте сертификат Cloudflare в
.pemформате. - В Hexnode следуйте инструкциям по добавлению сертификата в macOS ↗, iOS ↗, и/или Android ↗ устройства.
JumpCloud
Чтобы загрузить и развернуть сертификат Cloudflare в JumpCloud:
- Скачайте сертификат Cloudflare в
.pemформате. - В JumpCloud загрузить сертификат ↗.
- Настройте политику условного доступа ↗ чтобы развернуть сертификат на устройствах.
Языки программирования и среды выполнения
Среды выполнения языков программирования часто используют собственные хранилища сертификатов или специфичные для конкретного языка инструменты управления сертификатами.
Python
В зависимости от установленной версии Python и вашей конфигурации может потребоваться использовать либо python или python3 команду. Если вы используете виртуальные среды ↗, вам нужно будет повторить следующие шаги в каждой виртуальной среде.
Команда для установки сертификата с помощью Python в Windows автоматически включает pip и certifi (набор сертификатов по умолчанию для проверки сертификатов).
- Скачайте сертификат Cloudflare в
.crtформате. - В терминале PowerShell установите
certifiпакет:python -m pip install certifi - Определите хранилище CA в Python:
$CERT_PATH = python -c "import certifi; print(certifi.where())" - Обновите пакет сертификатов, включив в него сертификат Cloudflare:
gc "$env:USERPROFILE\Downloads\certificate.crt" | ac $CERT_PATH - (Необязательно) Настройте системные переменные, указывающие на хранилище CA, добавив их в конфигурационный файл PowerShell:
[System.Environment]::SetEnvironmentVariable('CERT_PATH', $CERT_PATH, 'Machine') [System.Environment]::SetEnvironmentVariable('SSL_CERT_FILE', $CERT_PATH, 'Machine') [System.Environment]::SetEnvironmentVariable('REQUESTS_CA_BUNDLE', $CERT_PATH, 'Machine') - Перезапустите терминал.
- Скачайте сертификат Cloudflare в
.pemформате. - В терминале установите
certifiпакет:python -m pip install certifi - Добавьте сертификат Cloudflare в это хранилище CA, выполнив команду:
echo | cat - certificate.pem >> $(python -m certifi) - (Необязательно) Настройте системные переменные, указывающие на хранилище CA, добавив их в конфигурационный файл вашей оболочки (например,
~/.zshrcили~/.bash_profile). Например:echo 'export CERT_PATH=$(python -c "import certifi; print(certifi.where())") export SSL_CERT_FILE=${CERT_PATH} export REQUESTS_CA_BUNDLE=${CERT_PATH}' >> ~/.zshrc - Перезапустите терминал.
Java
У Java может быть несколько расположений хранилища сертификатов в зависимости от разных установок или приложений, включающих Java. В зависимости от установленной у вас Java Virtual Machine (JVM) может потребоваться установить сертификат для каждого экземпляра. Также может понадобиться вручную настроить каждое Java-приложение, чтобы оно использовало сертификат и доверяло ему.
Чтобы установить корневой сертификат Cloudflare в системную JVM, выполните процедуру для своей операционной системы. Для этого необходимо скачайте .pem сертификат.
-
Установка OpenSSL ↗.
-
В терминале отформатируйте сертификат Cloudflare для Java.
openssl x509 -in Cloudflare_CA.pem -inform pem -out Cloudflare_CA.der -outform der -
Импортируйте преобразованный сертификат в Java keystore.
sudo $JAVA_HOME/bin/keytool -import -trustcacerts -alias 'Cloudflare Root CA' -file Cloudflare_CA.der -keystore $JAVA_HOME/jre/lib/security/cacerts -storepass changeit -noprompt 2>&1 -
Перезапустите все работающие экземпляры Java.
-
Установка OpenSSL for Windows ↗.
-
В терминале PowerShell, запущенном от имени администратора, отформатируйте сертификат Cloudflare для Java.
openssl x509 -in Cloudflare_CA.pem -inform pem -out Cloudflare_CA.der -outform der -
Импортируйте преобразованный сертификат в Java keystore.
"%JAVA_HOME%\bin\keytool" -import -trustcacerts -alias "Cloudflare Root CA" -file Cloudflare_CA.der -keystore "%JAVA_HOME%\jre\lib\security\cacerts" -storepass changeit -noprompt -
Перезапустите все работающие экземпляры Java.
Ruby
Чтобы добавить корневой сертификат Cloudflare в доверенные в RubyGems, выполните процедуру для вашей операционной системы. Для этого потребуется скачайте .pem сертификат.
-
Установка OpenSSL ↗.
-
В терминале отформатируйте сертификат Cloudflare для Ruby.
openssl x509 -in ~/Downloads/certificate.pem -out ~/Downloads/ruby-root-ca.crt -
Создайте каталог сертификатов RubyGems в своей домашней папке.
mkdir -p ~/.gem/ssl -
Скопируйте сертификат Cloudflare в своё хранилище сертификатов RubyGems.
cp ~/Downloads/ruby-root-ca.crt ~/.gem/ssl/rubygems.org.pem -
Настройте RubyGems для использования сертификата.
gem sources --add-trusted-cert ~/.gem/ssl/rubygems.org.pemТакже можно добавить следующую строку в файл конфигурации RubyGems, расположенный в
~/.gemrcфайл, чтобы сделать сертификат доверенным глобально::ssl_cert: ~/.gem/ssl/rubygems.org.pem -
Перезапустите все сеансы терминала.
-
Установка OpenSSL for Windows ↗.
-
В терминале PowerShell отформатируйте сертификат Cloudflare для Ruby.
openssl x509 -in %UserProfile%\Downloads\certificate.pem -out %UserProfile%\Downloads\ruby-root-ca.crt -
Создайте каталог сертификатов RubyGems в своей домашней папке.
mkdir -Force "$env:USERPROFILE\.gem\ssl" -
Скопируйте сертификат Cloudflare в своё хранилище сертификатов RubyGems.
Copy-Item "$env:USERPROFILE\Downloads\ruby-root-ca.crt" "$env:USERPROFILE\.gem\ssl\rubygems.org.pem" -
Настройте RubyGems для использования сертификата.
gem sources --add-trusted-cert "$env:USERPROFILE\.gem\ssl\rubygems.org.pem"Также можно добавить следующую строку в файл конфигурации RubyGems, расположенный в
$HOME\.gemrcчтобы предоставить сертификату глобальное доверие::ssl_cert: C:/Users/<username>/.gem/ssl/rubygems.org.pem -
Перезапустите все сеансы терминала.
Rust
Диспетчер пакетов Cargo для Rust по умолчанию использует системное хранилище сертификатов на большинстве платформ. Однако в некоторых случаях его может потребоваться настроить явно.
- Скачайте сертификат Cloudflare в
.pemформате. - Задайте
CARGO_HTTP_CAINFOпеременную окружения, чтобы указать путь к сертификату. В PowerShell:[System.Environment]::SetEnvironmentVariable('CARGO_HTTP_CAINFO', "$HOME\Downloads\certificate.pem", 'User') - Перезапустите терминал.
Как вариант, можно настроить это в файле конфигурации Cargo по пути %USERPROFILE%\.cargo\config.toml:
[http]
cainfo = "C:\\Users\\<username>\\Downloads\\certificate.pem"- Скачайте сертификат Cloudflare в
.pemформате. - Задайте
CARGO_HTTP_CAINFOпеременную окружения, добавив её в файл конфигурации вашей оболочки (например,~/.zshrcили~/.bash_profile):export CARGO_HTTP_CAINFO="$HOME/Downloads/certificate.pem" - Перезапустите терминал.
Как вариант, можно настроить это в файле конфигурации Cargo по пути ~/.cargo/config.toml:
[http]
cainfo = "/path/to/certificate.pem"Инструменты разработки и менеджеры пакетов
Инструментам разработки и менеджерам пакетов часто требуется настройка сертификатов для безопасной загрузки пакетов и доступа к репозиториям.
Git
-
Откройте PowerShell.
-
Выполните следующую команду:
git config -lЭта команда выведет:
core.symlinks=false core.autocrlf=true core.fscache=true color.diff=auto color.status=auto color.branch=auto color.interactive=true help.format=html rebase.autosquash=true http.sslcainfo=C:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt http.sslbackend=openssl diff.astextplain.textconv=astextplain filter.lfs.clean=git-lfs clean -- %f filter.lfs.smudge=git-lfs smudge -- %f filter.lfs.process=git-lfs filter-process filter.lfs.required=true credential.helper=manager -
http.sslcainfoопределяет хранилище сертификатов CA. Чтобы добавить сертификат Cloudflare в пакет сертификатов CA (CA bundle), обновитеhttp.sslcainfo.gc .\certificate.pem | ac $(git config --get http.sslcainfo)
Чтобы настроить Git на доверие сертификату Cloudflare, выполните следующую команду:
git config --global http.sslcainfo [PATH_TO_CLOUDFLARE_CERT]npm
- Скачайте сертификат Cloudflare в
.pemформате. - Задайте
cafileконфигурацию так, чтобы она использовала сертификат Cloudflare:npm config set cafile [PATH_TO_CLOUDFLARE_CERT.pem]
В некоторых системах может потребоваться добавить следующее в список path/export:
export NODE_EXTRA_CA_CERTS='[PATH_TO_CLOUDFLARE_CERT.pem]'PHP Composer
Приведенная ниже команда задаст cafile ↗ конфигурация внутри composer.json использовать корневой сертификат Cloudflare. Обязательно скачайте сертификат в .pem тип файла.
composer config cafile [PATH_TO_CLOUDFLARE_CERT.pem]Как вариант, можно добавить это вручную в composer.json файл в config ключ.
Docker
Чтобы установить сертификат для использования в контейнере Docker:
-
Скачайте сертификат Cloudflare в
.pemформате. -
Создайте каталог для сертификатов в своём проекте Docker:
cd docker-project mkdir certs mv /path/to/downloaded/certificate.pem certs/ -
Убедитесь, что сертификат правильно перемещён в каталог. Структура вашего проекта должна быть следующей:
docker-project/ ├── Dockerfile └── certs/ └── certificate.pem -
Добавьте сертификат в ваш Docker image:
Чтобы добавить сертификат в Dockerfile и установить его в процессе сборки:
-
Добавьте инструкции по установке сертификата в ваш Dockerfile. Например:
Образы на основе Red HatFROM registry.access.redhat.com/ubi9/ubi:latest # Or FROM centos:7 or FROM fedora:38 # Install necessary certificates package RUN dnf install -y ca-certificates # Copy and add Cloudflare root certificate COPY certs/certificate.pem /etc/pki/ca-trust/source/anchors/certificate.crt RUN update-ca-trust extractОбразы на основе DebianFROM debian:12 # Or FROM ubuntu:22.04 # Install necessary certificates package RUN apt-get update && apt-get install -y ca-certificates # Copy and add Cloudflare root certificate COPY certs/certificate.pem /usr/local/share/ca-certificates/certificate.crt RUN update-ca-certificatesОбразы на основе AlpineFROM alpine:3.18 # Install necessary certificates package RUN apk add --no-cache ca-certificates # Copy and add Cloudflare root certificate COPY certs/certificate.pem /usr/local/share/ca-certificates/certificate.crt RUN update-ca-certificates -
Соберите образ Docker:
docker build -t <your-container-name> . -
Убедитесь, что сертификат установлен:
Образы на основе Red Hatdocker run --rm your-image-name sh -c "cat /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem | grep Cloudflare"Образы на основе Debian и Alpinedocker run --rm your-image-name sh -c "cat /etc/ssl/certs/certificate.pem"
Чтобы добавить сертификат в файл Docker Compose и установить его во время выполнения:
-
Добавьте инструкции по установке сертификата в ваш
docker-compose.ymlфайл. Например:Контейнеры на основе Red Hatversion: '3' services: redhat-app: image: registry.access.redhat.com/ubi9/ubi:latest volumes: - certs/certificate.pem:/etc/pki/ca-trust/source/anchors/certificate.pem entrypoint: /bin/sh -c "dnf install -y ca-certificates && update-ca-trust extract && app start"Контейнеры на основе Debianversion: '3' services: debian-app: image: debian:12 volumes: - certs/certificate.pem:/usr/local/share/ca-certificates/certificate.crt entrypoint: /bin/sh -c "apt-get update && apt-get install -y ca-certificates && update-ca-certificates && app start"Контейнеры на основе Alpineversion: '3' services: alpine-app: image: alpine:3.18 volumes: - certs/certificate.pem:/usr/local/share/ca-certificates/certificate.pem entrypoint: /bin/sh -c "apk add --no-cache ca-certificates && update-ca-certificates && app start" -
Запустите контейнер:
docker-compose up -
Убедитесь, что сертификат установлен:
Контейнеры на основе Red Hatdocker exec -it <container-name> sh -c "cat /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem | grep Cloudflare"Контейнеры на основе Debian и Alpinedocker exec -it <container-name> sh -c "cat /etc/ssl/certs/ca-certificates.crt | grep Cloudflare"
-
Инструменты командной строки
Инструменты командной строки обычно используют системное хранилище сертификатов, но могут требовать отдельной настройки.
cURL
По умолчанию cURL использует собственное хранилище сертификатов операционной системы. Чтобы заставить cURL использовать ваш сертификат по умолчанию, добавьте --ca-native флаг к команде. Например:
curl --ca-native https://example.comЧтобы использовать корневой сертификат Cloudflare с cURL в macOS, установить сертификат в keychain операционной системы. По умолчанию cURL будет использовать корневой сертификат macOS.
Чтобы использовать сертификат Cloudflare с версией cURL, предустановленной в Windows, или другой версией, использующей серверную часть Schannel (WinSSL), установить сертификат в хранилище сертификатов Windows. Если вы используете более старую или собственную сборку cURL с бэкендом OpenSSL, вам нужно будет вручную настроить cURL для использования сертификата.
Чтобы использовать корневой сертификат Cloudflare с cURL в Linux, установить сертификат в хранилище сертификатов вашего дистрибутива. По умолчанию cURL будет использовать корневой сертификат Linux.
GNU Wget
По умолчанию GNU Wget использует собственное хранилище сертификатов операционной системы. Чтобы заставить Wget использовать ваш сертификат по умолчанию, добавьте --ca-certificate флаг к команде.
Чтобы использовать корневой сертификат Cloudflare с Wget в macOS, установить сертификат в keychain операционной системы. По умолчанию Wget использует корневой сертификат macOS.
Чтобы использовать сертификат Cloudflare с Wget в Windows, установить сертификат в хранилище сертификатов Windows. По умолчанию Wget использует корневой сертификат Windows.
Чтобы использовать корневой сертификат Cloudflare с Wget в Linux, установить сертификат в хранилище сертификатов вашего дистрибутива. По умолчанию Wget использует корневой сертификат Linux.
Как вариант, можно напрямую указать файл сертификата:
wget --ca-certificate=[PATH_TO_CLOUDFLARE_CERT.pem] https://example.comЧтобы сделать это постоянным, добавьте следующее в свой ~/.wgetrc файле:
ca_certificate = [PATH_TO_CLOUDFLARE_CERT.pem]IDE и среды разработки
Интегрированные среды разработки часто используют собственные JVM или хранилища сертификатов.
Android Studio
Android Studio использует собственную JVM и собственное хранилище сертификатов. Установка корневого сертификата Cloudflare:
-
Найдите
java.homeзначение для вашей установки Android Studio.- В Android Studio перейдите в Справка > Обзор (или Android Studio > Об Android Studio на macOS).
- Скопируйте путь JRE, показанный в диалоговом окне. Например:
/Applications/Android Studio.app/Contents/jbr/Contents/Home
-
Добавьте сертификат Cloudflare в JVM Android Studio:
-
В терминале добавьте скопированный путь JRE в качестве переменной среды.
export JAVA_HOME="/path/to/jre" -
Запустите
keytoolчтобы установить сертификат Cloudflare и предоставить ему доверие."$JAVA_HOME/bin/keytool" -import -file ~/Downloads/certificate.crt -alias CloudflareRootCA -keystore "$JAVA_HOME/lib/security/cacerts" -storepass changeit -trustcacerts -noprompt -
Перезапустите Android Studio.
-
В терминале PowerShell, запущенном от имени администратора, добавьте скопированный путь JRE в качестве переменной среды.
$env:JAVA_HOME = "C:\Program Files\Android\Android Studio\jbr" -
Запустите
keytoolчтобы установить сертификат Cloudflare и предоставить ему доверие.& "$env:JAVA_HOME\bin\keytool.exe" -import -file "$env:USERPROFILE\Downloads\certificate.crt" -alias CloudflareRootCA -keystore "$env:JAVA_HOME\lib\security\cacerts" -storepass changeit -trustcacerts -noprompt -
Перезапустите Android Studio.
Для сборок Gradle в Android Studio также может потребоваться настроить доверие к сертификату для Gradle JVM, выполнив те же шаги для расположения Gradle JVM.
JetBrains
Чтобы установить корневой сертификат Cloudflare в продуктах JetBrains, см. ссылки ниже:
- AppCode ↗
- CLion ↗
- DataGrip ↗
- DataSpell ↗
- GoLand ↗
- IntelliJ IDEA ↗
- PhpStorm ↗
- PyCharm ↗
- Rider ↗
- WebStorm ↗
Eclipse
Чтобы установить корневой сертификат Cloudflare в Eclipse IDE for Java Developers, необходимо добавить сертификат в виртуальную машину Java (JVM), которую использует Eclipse.
-
Найдите
java.homeзначение для вашей установки Eclipse.- В Eclipse перейдите в Eclipse > Об инструменте Eclipse (или Справка > О среде Eclipse IDE в Windows и Linux)
- Выберите Сведения об установке, затем перейдите в Конфигурация.
- Найдите
java.home, затем найдите значение. Например:
*** System properties: java.home=/Users/<username>/.p2/pool/plugins/org.eclipse.justj.openjdk.hotspot.jre.full.macosx.aarch64_17.0.8.v20230831-1047/jre- Скопируйте полный путь после
java.home=.
-
Добавьте сертификат Cloudflare в JVM Eclipse:
-
В терминале добавьте
java.homeзначение, которое вы скопировали, в качестве переменной окружения.export JAVA_HOME=$(echo /path/to/java.home) -
Запустите
keytoolчтобы установить сертификат Cloudflare и предоставить ему доверие."$JAVA_HOME/bin/keytool" -import -file ~/Downloads/certificate.crt -alias CloudflareRootCA -keystore "$JAVA_HOME/lib/security/cacerts" -storepass changeit -trustcacerts -noprompt -
Перезапустите Eclipse.
-
В терминале добавьте
java.homeзначение, которое вы скопировали, в качестве переменной окружения.set JAVA_HOME="\path\to\java.home" -
Запустите
keytoolчтобы установить сертификат Cloudflare и предоставить ему доверие."%JAVA_HOME%\bin\keytool.exe" -import -file "%UserProfile%\Downloads\Cloudflare_CA.crt" -alias CloudflareRootCA -keystore "%JAVA_HOME%\lib\security\cacerts" -storepass changeit -trustcacerts -noprompt -
Перезапустите Eclipse.
Дополнительные сведения о добавлении сертификатов в Eclipse с помощью keytool, см. документация IBM ↗.
Облачные и инфраструктурные инструменты
Поставщики облачных услуг и инфраструктурные инструменты часто требуют настройки сертификатов для доступа к API и управления ресурсами.
Google Cloud
Google Cloud SDK
Приведённые ниже команды настроят Google Cloud SDK на использование сертификата Cloudflare. Дополнительные сведения о настройке Google Cloud SDK см. в документация Google Cloud ↗.
-
Получите из curl
cacertпакет.curl --remote-name https://curl.se/ca/cacert.pem -
Скачайте сертификат Cloudflare в
.pemформате. -
Объедините сертификаты в один
.pemфайл.cat cacert.pem certificate.pem > ~/ca.pem -
Настройте Google Cloud для использования объединённого
.pem.gcloud config set core/custom_ca_certs_file ~/ca.pem
Kaniko
Если вы используете Kaniko с Google Cloud SDK, необходимо установить сертификат Cloudflare в Хранилище сертификатов Kaniko ↗. Дополнительную информацию см. в gcloud документация ↗.
Google Apps Manager (GAM)
Google Apps Manager (GAM) использует собственное хранилище сертификатов. Чтобы добавить сертификат Cloudflare в GAM, см. Документация GAM ↗.
AWS CLI
Глобальная конфигурация
Чтобы постоянно задать расположение сертификата:
-
Скачайте сертификат Cloudflare в
.pemформате. -
Найдите и откройте свой файл конфигурации AWS ↗.
-
Настройте
ca_bundleнастройка ↗ с расположением вашего сертификата. Например:.aws/config[default] region = us-west-1 +ca_bundle = /path/to/certificate.pem -
Перезапустите терминал.
Переменная окружения
Чтобы задать расположение сертификата для использования в переменной окружения:
- Скачайте сертификат Cloudflare в
.pemформате. - В терминале задайте
AWS_CA_BUNDLEпеременная окружения ↗ к расположению вашего сертификата в зависимости от операционной системы. - Перезапустите терминал.
Azure CLI
Глобальная конфигурация
Чтобы постоянно задать расположение сертификата:
- Скачайте сертификат Cloudflare в
.pemформате. - Задайте
REQUESTS_CA_BUNDLEпеременную окружения, чтобы указать путь к вашему сертификату, в зависимости от операционной системы.
Добавьте следующее в конфигурационный файл своей оболочки (например, ~/.zshrc или ~/.bash_profile):
export REQUESTS_CA_BUNDLE="$HOME/Downloads/certificate.pem"В PowerShell:
[System.Environment]::SetEnvironmentVariable('REQUESTS_CA_BUNDLE', "$HOME\Downloads\certificate.pem", 'User')- Перезапустите терминал.
Для каждой команды
Чтобы задать расположение сертификата для отдельной команды:
-
Скачайте сертификат Cloudflare в
.pemформате. -
Задайте
REQUESTS_CA_BUNDLEпеременную окружения при выполнении команды:REQUESTS_CA_BUNDLE=/path/to/certificate.pem az <command>
Дополнительные сведения см. в Документация Azure CLI ↗.
Boto3
Boto3, AWS SDK для Python, можно настроить на использование сертификата Cloudflare несколькими способами.
Переменная окружения
Чтобы задать расположение сертификата с помощью переменной окружения:
- Скачайте сертификат Cloudflare в
.pemформате. - Задайте
AWS_CA_BUNDLEпеременную окружения в зависимости от вашей операционной системы.
Добавьте следующее в конфигурационный файл своей оболочки (например, ~/.zshrc или ~/.bash_profile):
export AWS_CA_BUNDLE="$HOME/Downloads/certificate.pem"В PowerShell:
[System.Environment]::SetEnvironmentVariable('AWS_CA_BUNDLE', "$HOME\Downloads\certificate.pem", 'User')- Перезапустите терминал.
файл конфигурации AWS
Чтобы постоянно задать расположение сертификата в своей конфигурации AWS:
-
Скачайте сертификат Cloudflare в
.pemформате. -
Найдите и откройте свой файл конфигурации AWS ↗.
-
Настройте
ca_bundleнастройка ↗ с расположением вашего сертификата. Например:.aws/config[default] region = us-west-1 +ca_bundle = /path/to/certificate.pem
В коде
Чтобы указать сертификат непосредственно в коде Python:
-
Скачайте сертификат Cloudflare в
.pemформате. -
Передайте путь к сертификату при создании клиента или ресурса Boto3:
import boto3 client = boto3.client( 's3', verify='/path/to/certificate.pem' )
Дополнительные сведения см. в Документация Boto3 ↗.
Корпоративные приложения
Корпоративные настольные приложения и специализированные инструменты могут требовать индивидуальной настройки сертификатов.
Google Drive
Чтобы добавить корневой сертификат Cloudflare в доверенные в приложении Google Drive для компьютера, выполните процедуру для вашей операционной системы. Для этого потребуется скачайте .pem сертификат.
-
В терминале скопируйте содержимое файла сертификата Google Drive в новый файл сертификата, сохранив его в постоянном расположении, например в папке Documents. Например:
cat /Applications/"Google Drive.app"/Contents/Resources/roots.pem > ~/Documents/gdrivecerts.pem -
Допишите содержимое скачанного сертификата в конец нового файла. Например:
cat ~/Downloads/certificate.pem >> ~/Documents/gdrivecerts.pem -
Примените созданный корневой сертификат к своему приложению Google Drive. Например:
sudo defaults write /Library/Preferences/com.google.drivefs.settings TrustedRootCertsFile "/Users/$(whoami)/Documents/gdrivecerts.pem"
Проверить обновление можно следующей командой.
defaults read /Library/Preferences/com.google.drivefs.settings-
В терминале PowerShell, запущенном от имени администратора, скопируйте содержимое файла сертификата Google Drive в новый файл сертификата, сохранив его в постоянном расположении, например в папке Documents. Например:
Get-Content "C:\Program Files\Google\Drive File Stream\roots.pem" | Set-Content "$HOME\Documents\gdrivecerts.pem" -
Допишите содержимое скачанного сертификата в конец нового файла. Например:
Get-Content "$HOME\Downloads\certificate.pem" | Add-Content "$HOME\Documents\gdrivecerts.pem" -
Примените созданный корневой сертификат к своему приложению Google Drive. Например:
Set-ItemProperty -Path "HKLM:\SOFTWARE\Google\DriveFS" -Name "TrustedRootCertsFile" -Value "$HOME\Documents\gdrivecerts.pem"
Проверить обновление можно следующей командой.
Get-ItemProperty -Path "HKLM:\SOFTWARE\Google\DriveFS" | Select-Object TrustedRootCertsFileДополнительные сведения см. в документация Google ↗ для TrustedRootCertsFile параметр.
Minikube
Чтобы добавить корневой сертификат Cloudflare в доверенные в Minikube, см. x509: certificate signed by unknown authority ↗.