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

Использовать WAN как внутреннюю сеть

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

Этот материал находится на двух выделенных серверах. Между серверами есть локальная сеть, и каждый сервер имеет как минимум один публичный IP-адрес. И все публичные адреса находятся в одном сегменте широковещательной сети (подключены через коммутатор или в VLAN - не имеет значения). Задержки в обеих этих сетях одинаковы.

И у меня есть два варианта взаимодействия между частями этой системы: использовать локальные IP-адреса во всех конфигурациях или использовать вместо них общедоступные IP-адреса. В первом случае у меня будет немного более сложная инфраструктура (из-за двух сетей). Во втором случае моя система будет более прозрачной, но меня беспокоит конфиденциальность сетевых коммуникаций.

Существуют ли какие-то правила или лучшие практики для использования того или иного подхода?

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

Вы же не хотите, чтобы ваша система была прозрачной для пользователей. Вы хотите, чтобы ваша система была загадочным черным ящиком с маленьким глазком для внешнего мира для необходимого взаимодействия.