� Как установить CloudFlare CFSSL на Linux | macOS

CFSSL — это инструмент CloudFlare PKI / TLS с открытым исходным кодом для подписи, проверки сертификатов TLS на компьютерах с Linux, macOS и Windows.

В этом руководстве мы рассмотрим, как установить CFSSL в системах Linux и macOS.

CFSSL состоит из:

  • Набор пакетов, полезных для создания пользовательских инструментов TLS PKI
  • Программа cfssl, которая является утилитой командной строки, использующей пакеты CFSSL.
  • Программа multirootca, представляющая собой сервер центра сертификации, который может использовать несколько ключей подписи.
  • Программа mkbundle используется для создания пула сертификатов.
  • Программа cfssljson, которая принимает вывод JSON из программ cfssl и multirootca и записывает сертификаты, ключи, CSR и пакеты на диск.

Установка CloudFlare CFSSL на Linux | macOS

Существует два стандартных метода установки, которые можно использовать и на Linux и на macOS.

  • Первый — скачать бинарнники, которые были скомпилированы для вас разработчиками.
  • Другой вариант — использовать Go, чтобы извлечь из исходного кода и скомпилировать инструмент самостоятельно.

Установка из исходников

--- Linux ---
wget -q -O - https://raw.githubusercontent.com/canha/golang-tools-install-script/master/goinstall.sh | bash

--- macOS ---
curl https://raw.githubusercontent.com/canha/golang-tools-install-script/master/goinstall.sh | bash

Установите git:

--- CentOS / Fedora ---
$ sudo yum -y install git gcc

--- Ubuntu / Debian ---
$ sudo apt update
$ sudo apt install git

После установки Go вы можете затем собрать и установить все служебные программы (включая cfssl, cfssljson и mkbundle).

source ~/.bashrc
go get -u github.com/cloudflare/cfssl/cmd/...

Бинарные пакеты будут доступны в вашем домашнем каталоге Go и могут быть вызваны из терминала напрямую, если каталог находится в вашем PATH.

$ ls ~/go/bin/
cfssl  cfssl-bundle  cfssl-certinfo  cfssljson  cfssl-newkey  cfssl-scan  mkbundle  multirootca

Вы также можете скопировать бинарники в каталог в вашем PATH.

sudo cp ~/go/bin/* /usr/local/bin

Бинарный метод установки

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

Мы рассмотрим установку нескольких программ, поставляемых с cfssl, а другие могут быть установлены по вашему желанию.

Установка программы cfssl

Установить на Linux:

VERSION=$(curl --silent "https://api.github.com/repos/cloudflare/cfssl/releases/latest" | grep '"tag_name"' | sed -E 's/.*"([^"]+)".*/\1/')
VNUMBER=${VERSION#"v"}
wget https://github.com/cloudflare/cfssl/releases/download/${VERSION}/cfssl_${VNUMBER}_linux_amd64 -O cfssl
chmod +x cfssl
sudo mv cfssl /usr/local/bin

Установить на macOS:

VERSION=$(curl --silent "https://api.github.com/repos/cloudflare/cfssl/releases/latest" | grep '"tag_name"' | sed -E 's/.*"([^"]+)".*/\1/')
VNUMBER=${VERSION#"v"}
wget https://github.com/cloudflare/cfssl/releases/download/${VERSION}/cfssl_${VNUMBER}_darwin_amd64 -O cfssl
chmod +x cfssl
sudo mv cfssl /usr/local/bin

Убедитесь, что установка прошла успешно, проверив номер версии:

$ cfssl version
Version: 1.4.1
Runtime: go1.12.12

Установка программы cfssljson

Установить на Linux:

VERSION=$(curl --silent "https://api.github.com/repos/cloudflare/cfssl/releases/latest" | grep '"tag_name"' | sed -E 's/.*"([^"]+)".*/\1/')
VNUMBER=${VERSION#"v"}
wget https://github.com/cloudflare/cfssl/releases/download/${VERSION}/cfssljson_${VNUMBER}_linux_amd64 -O cfssljson
chmod +x cfssljson
sudo mv cfssljson /usr/local/bin
cfssljson -version

Установить на macOS:

VERSION=$(curl --silent "https://api.github.com/repos/cloudflare/cfssl/releases/latest" | grep '"tag_name"' | sed -E 's/.*"([^"]+)".*/\1/')
VNUMBER=${VERSION#"v"}
wget https://github.com/cloudflare/cfssl/releases/download/${VERSION}/cfssljson_${VNUMBER}_darwin_amd64 -O cfssljson
chmod +x cfssljson
sudo mv cfssljson /usr/local/bin
cfssljson -version

Установка mkbundle

Установить на Linux:

VERSION=$(curl --silent "https://api.github.com/repos/cloudflare/cfssl/releases/latest" | grep '"tag_name"' | sed -E 's/.*"([^"]+)".*/\1/')
VNUMBER=${VERSION#"v"}
wget https://github.com/cloudflare/cfssl/releases/download/${VERSION}/mkbundle_${VNUMBER}_linux_amd64 -O mkbundle
chmod +x mkbundle
sudo mv mkbundle /usr/local/bin

Установить на macOS:

VERSION=$(curl --silent "https://api.github.com/repos/cloudflare/cfssl/releases/latest" | grep '"tag_name"' | sed -E 's/.*"([^"]+)".*/\1/')
VNUMBER=${VERSION#"v"}
wget https://github.com/cloudflare/cfssl/releases/download/${VERSION}/mkbundle_${VNUMBER}_darwin_amd64 -O mkbundle
chmod +x mkbundle
sudo mv mkbundle /usr/local/bin

Установка multirootca

Установить на Linux:

VERSION=$(curl --silent "https://api.github.com/repos/cloudflare/cfssl/releases/latest" | grep '"tag_name"' | sed -E 's/.*"([^"]+)".*/\1/')
VNUMBER=${VERSION#"v"}
wget https://github.com/cloudflare/cfssl/releases/download/${VERSION}/multirootca_${VNUMBER}_linux_amd64 -O multirootca
chmod +x multirootca
sudo mv multirootca /usr/local/bin

Вы можете посмотреть список других пакетов, которые доступны на странице проекта github: https://github.com/cloudflare/cfssl

Дата: 2020-06-29 17:41:28

Источник: https://itsecforu.ru/2020/06/29/%f0%9f%94%90-%d0%ba%d0%b0%d0%ba-%d1%83%d1%81%d1%82%d0%b0%d0%bd%d0%be%d0%b2%d0%b8%d1%82%d1%8c-cloudflare-cfssl-%d0%bd%d0%b0-linux-macos/