Бэкэнд с самозаверяющим сертификатом - PullRequest
0 голосов
/ 28 апреля 2018

Я создаю веб-сайт с отдельным бэкэндом / внешним интерфейсом. На данный момент этот сайт размещен в моем кластере Kubernetes дома. Один модуль предназначен для внешнего интерфейса, а другой - для внутреннего.
Тезисы доступны через Traefic. У меня есть внутреннее DNS-имя (т.е. backend.home.local и frontend.home.local) для доступа к нему. Я создал самозаверяющий центр сертификации, который обрабатывает SSL в моем частном домене .home.local, чтобы я мог получить к ним доступ в своей частной сети с компьютера, на котором зарегистрирован мой частный центр сертификации.

Мой интерфейс взаимодействует с моим бэкэндом также через HTTPS, используя тот же URL (в .home.local). Мой интерфейс знает CA (я действовал как здесь ).

У меня также есть внешнее доменное имя, указывающее на мой интерфейс. Я могу получить к нему доступ через HTTPS без проблем снаружи и внутри моей сети.

Хорошо, пока все хорошо. Моя проблема в том, что когда я получаю доступ к своему веб-интерфейсу через внешнее доменное имя, мой веб-интерфейс успешно связывается с бэкэндом, когда я использую компьютер, на котором зарегистрирован мой частный ЦС, но при использовании err_cert_authority_invalid происходит сбой при использовании *1014*. компьютер без моего CA.

Я понимаю, что конечный пользователь должен иметь ЦС всех ресурсов веб-сайта, иначе браузер выдаст ошибку, даже если веб-интерфейс инициирует другое SSL-соединение с бэкэндом со своим собственным ЦС.

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

Должен ли я неизбежно иметь бэкэнд доступным снаружи с надлежащим зашифрованным сертификатом? Я бы предпочел, чтобы сервер не был доступен снаружи, но я не знаю, смогу ли я сделать это правильно.

Надеюсь, этот пост не слишком грязный. Хорошего дня.

1 Ответ

0 голосов
/ 28 апреля 2018

Должен ли я неизбежно иметь бэкэнд доступным снаружи с надлежащим зашифрованным сертификатом?

Да, это так. Это не обязательно означает, что вы должны изменить свой бэкэнд-сервис, вы можете сделать SSL-завершение для своего бэкэнда через traefik. Настройка Let's Encrypt через traefik - полностью автоматизированный процесс, он должен быть довольно простым.

Подумайте об этом - HTTPS - это не просто приятная функция, она важна для безопасности. Все общение через общедоступные сети должно осуществляться только безопасно.

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