Балансировщик нагрузки Google отклоняет самозаверяющий сертификат
Я хочу создать самоподписанный сертификат, который будет использоваться в Google Loadbalancer, я написал следующий сценарий для его подготовки:
#!/bin/bash
FQDN=*.domain.net
SUBJ="/C=CZ/ST=Country/L=City/O=Authority/CN=$FQDN"
VALIDITY=3650
# make directories to work from
mkdir -p certs
# generate self signed root CA cert
openssl req -nodes -x509 -newkey rsa:2048 -keyout certs/ca.key -out certs/ca.crt -subj $SUBJ
# generate server cert to be signed
openssl req -nodes -newkey rsa:2048 -keyout certs/server.key -out certs/server.csr -subj $SUBJ
# sign the server cert
openssl x509 -req -in certs/server.csr -CA certs/ca.crt -CAkey certs/ca.key -CAcreateserial -out certs/server.crt
# create server PEM file
cat certs/server.key certs/server.crt > certs/server.pem
# generate client cert to be signed
openssl req -nodes -newkey rsa:2048 -days $VALIDITY -keyout certs/client.key -out certs/client.csr -subj $SUBJ
# sign the client cert
openssl x509 -req -in certs/client.csr -CA certs/ca.crt -CAkey certs/ca.key -CAserial certs/ca.srl -out certs/client.crt
# create client PEM file
cat certs/client.key certs/client.crt > certs/client.pem
Это работает правильно и производит все сертификаты без ошибок.
Однако, когда я пытаюсь поместить их в балансировщик нагрузки Google, он отказывается принимать сгенерированные сертификаты. Ставлю:
-
certs/client.crt
в поле «сертификат открытого ключа» -
certs/client.pem
в поле «Цепочка сертификатов» -
certs/server.key
в поле "закрытый ключ"
1 ответ
Вы можете использовать самозаверяющие сертификаты для серверных служб. Вы не можете использовать самозаверяющие сертификаты для интерфейсных служб.
Балансировщики нагрузки HTTP Google Cloud принимают только сертификаты SSL с подтвержденным доменом или выше.
Не путайте самоуправляемые и самоподписанные сертификаты.
Самоуправляемые и управляемые Google сертификаты SSL
Сообщение об ошибке в вашем вопросе означает, что вы импортируете неправильный закрытый ключ. У вас также есть еще одна ошибка
VALIDITY=3650
. Публичные SSL-сертификаты не могут быть длиннее 825 дней (я думаю, что сейчас это 398 дней), почти все поставщики не будут выпускать сертификаты дольше 365 дней. Для сертификатов, действительных более 365 дней, требуется еще больше данных, приложенных к сертификату.