SSL: Создаём свой центр сертификации и генерация сертификатов для локальных сервисов.

Немного поговорим о том, как сделать свой “центр сертификации”, раскидать корневой сертификат по клиентам и далее им подписывать все серсисы внутри компании.

Корневой сертификат

Создаём место под ЦА

mkdir /opt/cert_center
cd /opt/cert_center/

Делаем корневой сертификат

openssl genrsa -out rootCA.key 4096
openssl req -x509 -new -key rootCA.key -days 3650 -out rootCA.crt
cp rootCA.crt /КУДА/НАДО/ЧТОБЫ/ВСЕ/СКАЧАЛИ

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

Сертификат для сервиса

Делаем сертификат для нужного сервера.

openssl genrsa -out DOMAIN.key 4096
openssl req -new -key DOMAIN.key -out DOMAIN.csr
openssl x509 -req -in DOMAIN.csr -CA rootCA.crt -CAkey rootCA.key -CAcreateserial -out DOMAIN.crt -days 365

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

cp rootCA.crt /etc/pki/ca-trust/source/anchors/
update-ca-trust
sudo mkdir /usr/share/ca-certificates/extra
sudo cp rootCA.crt /usr/share/ca-certificates/extra/rootCA.crt
sudo dpkg-reconfigure ca-certificates
sudo update-ca-certificates

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

cp DOMAIN.crt /etc/cockpit/ws-certs.d/
systemctl restart cockpit
/usr/libexec/cockpit-certificate-ensure --check

#ssl #cockpit


Статьи дополняются по мере получения новой информации. Если есть уточнение – напишите в комментариях в Mastodon.

Алексей Убоженко DevOps Linux Engineer Mastodon Contacts