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

Прозрачное для приложений шифрование на серверах, развернутых в облаке

Я инженер-программист и не обязательно специалист по операциям, если не считать того, что занимался проблемами развертывания вместе с разработчиком.

Отдельные компоненты веб-приложения, над которым я работаю, будут распределены по отдельным облачным виртуальным машинам. Что лучше или, по крайней мере, хорошая практика для шифрования связи между, например, HTTP-сервисы и база данных на основе node.js - каждый живет в своих экземплярах?

Я думал о SSH-Туннели между боксами ... Что скажете профи serverfault?

Это кажется опасно близким к вопросу о покупках, которые запрещены на SF (и, очевидно, на других сайтах SE) FAQ. Вы также не можете указать, какая ОС будет работать на облачных серверах; но я предполагаю, что это Linux.

Тем не менее, я бы предпочел IPSec, поскольку он встроен в Linux, он невероятно надежен и хорошо интегрирован на сетевом уровне (так что вам не придется возиться с таблицами маршрутизации). Проблем с аутентификацией не возникнет, так как все это делается с помощью общих ключей или сертификатов. Хорошо интегрируется с iptables межсетевые экраны. Он хорошо восстанавливается после длительных отключений сети. Он появляется автоматически во время загрузки через стандартный /etc/rcN.d скрипты. При наличии туннелей IPSec приложениям нужно только пересылать пакеты по IP-адресам; шифрование все происходит путь вниз по стеку оттуда.

В противном случае OpenVPN. Он сложнее IPSec, но обладает многими из тех же преимуществ.

В противном случае можно использовать ssh-туннели, если это необходимо, но вы будете вечно бегать, возвращая их обратно, как только сбои в сети заставят их упасть. Я бы предпочел (и еще больше) работать с корневым каналом, чем делать это с помощью туннелей ssh.

станнель тоже может быть интересным вариантом. Если у вас есть несколько виртуальных машин (а не только две), установка для них VPN и маршрутизация всего трафика между узлами через нее также может быть в некоторой степени разумной - это защитит «все навсегда» - если вы добавите еще одно межсоединение, оно будет зашифровано по умолчанию без необходимости настройки дополнительных ssh/stunnel пересылки. Еще одним вариантом может быть обеспечение IPSec.