Связь за брандмауэром

Я пытаюсь решить проблему, которая кажется простой, но не могу найти чистую архитектуру.

Проблема: у меня есть клиент, пытающийся получить доступ к графане в локальной сети.

         |Router|------|Client
          |         |
          |------|Grafana

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

      Client|------|Router|-------|Grafana

Простое решение . Основное решение — переадресация портов и простое открытие порта X на маршрутизаторе. Мне не нужно это решение, потому что я не могу открывать порты (по другой причине, не связанной с этим).

Лучшая идея. Я подумываю о настройке следующей архитектуры, в которой будет представлен новый сервер.

      Client|------|Server|-------|Router|-------|Grafana

Идея заключается в том, что Сервер будет поддерживать соединение с Grafana. Это предотвратит любую переадресацию портов, поскольку сервер Grafana делает первый шаг. Затем, если клиент захочет получить доступ к графане, он получит доступ к серверу, который перенаправит его на графану.

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

Кроме того, графана — это пример/туто, подойдет любое другое решение с HTTP-связью.

Вопросы:

  • Это возможно ?
  • Вроде есть инструменты (CND, обратный прокси), но они не совсем соответствуют моим потребностям, или может я просто не умею ими пользоваться?
  • Какие инструменты использовать на серверах A и B (websocket, socket.io, Nginx, Apache...). Оба сервера используют Linux.

Спасибо !

0 ответов

Другие вопросы по тегам