Назад | Перейти на главную страницу

SSL на сервере синтаксического анализа

У меня есть производственное мобильное приложение, работающее на сервере Parse Server, размещенное на DigitalOcean. Это моя установка:

Droplet no1: Parse Server and Dashboard
Droplet no2: MongoDB

И вот как клиент подключается к Parse Server:

let productionServerConfiguration = ParseClientConfiguration {
    $0.applicationId = "applicationId"
    $0.clientKey = "clientKey"
    $0.server = "http://domain:1337/parse"
}

Теперь я хочу добавить сертификат SSL к серверу Parse Server, но я боюсь, что случится с существующими пользователями, у которых все еще есть http. Кроме того, мне нужно добавить сертификат SSL на сервер MongoDB?

Вы не дали много информации о том, как настроен ваш Parse Server, но, на мой взгляд, самый простой способ добиться того, что вы хотите, - это иметь обратный прокси сидит между клиентами и вашим сервером анализа.

Как на этой диаграмме:

В этой настройке ваши клиенты находятся в крайнем левом углу и получают доступ к вашим серверам через Интернет; ваш сервер Parse Server (и, возможно, ваша база данных Mongo) расположен в правой части изображения (метка «Серверы»), а обратный прокси-сервер - посередине. На рынке существует множество обратных прокси, поэтому вы можете выбрать тот, который вам больше всего подходит, но мой любимый - Nginx.

Обратный прокси - это место, где вы установите сертификат SSL, и он будет отвечать за получение запросов от ваших клиентов. Клиенты никогда не будут напрямую обращаться к вашим серверам (Parse и MongoDB). Все соединения будут проходить через обратный прокси; вам просто нужно настроить обратный прокси-сервер для перенаправления подключений к правильному серверу (на основе порта, URL-адреса или любого другого параметра, который вы хотите).

Что касается старых клиентов, которые все еще обращаются к вашему серверу через http, без сертификата SSL вы также можете настроить обратный прокси-сервер для перенаправления любых http просьба к https перед отправкой запроса в конечный пункт назначения.

Отвечая на ваш последний вопрос: нет, вам не нужен сертификат SSL на MongoDB. SSL-сертификата, который вы устанавливаете в обратном прокси-сервере, достаточно.