Ошибка SSL ERR_CERT_AUTHORITY_INVALID при использовании прокси Envoy перед службой gRPC - PullRequest
1 голос
/ 11 апреля 2019

Я разработал службу gRPC, которая развернута в кластере Kubernetes, и я использую grpc-web от клиентов nodejs для подключения к нему. Это означает, что мне нужен прокси перед сервисом. Все отлично работает с этой конфигурацией посланника без SSL, но теперь мне нужно обезопасить соединения, чтобы подготовить ее к работе.

Вот шаги, которые я прошел

1) Сгенерировал ключи, введя мой домен simulation.terrarium.ai, когда его спросили, используя этот урок

2) Отредактируйте Dockerfile, добавив ключи

FROM envoyproxy/envoy:latest

COPY envoy-proxy-tls.yaml /etc/envoy.yaml

EXPOSE 9091

ADD ./certs/simulation.terrarium.ai.crt /etc/simulation.terrarium.ai.crt
ADD ./certs/simulation.terrarium.ai.key /etc/simulation.terrarium.ai.key
ADD ./certs/rootCA.crt /etc/rootCA.crt

WORKDIR /etc/envoy
CMD /usr/local/bin/envoy -c /etc/envoy.yaml

3) Обновлен конфиг посланника для использования tls на порту

Гораздо проще прочитать этот файл конфигурации с подсветкой, поэтому суть его в этом.

Что происходит
Я делаю звонки на мой сервис, как это

var simService = new SimulationServiceClient(ServerAddress, null, null);

var request = new CreateSpectatorRequest();
request.setApi(API_VERSION);
request.setId(this.clientId);
var metadata = {};
var stream = simService.createSpectator(request, metadata);
stream.on("data", this.onData);
stream.on("status", this.onStatus);
stream.on("end", this.onEnd);

На данный момент у меня есть служба grpc и прокси-сервер-посредник, работающий в кластере kubernetes, так же, как я делал до добавления TLS. Когда я пытаюсь подключиться через браузер, я получаю эту ошибку:

https://simulation.terrarium.ai:9091/v1.SimulationService/SubscribeSpectatorToRegion net::ERR_CERT_AUTHORITY_INVALID

Мне очень трудно отлаживать это, так как я точно не знаю, где могла произойти ошибка. Любая помощь будет оценена!

1 Ответ

1 голос
/ 14 апреля 2019

Я использую GKE и только что нашел эту ссылку, которая показывает , как использовать управляемый SSL-сертификат Google .

У меня отлично работает!Извините, я не смог точно решить эту проблему, но это более простая альтернатива, поскольку они также выполняют автоматизацию для сертификатов.

...