Может ли HAProxy управлять как веб-серверами, так и SSL VPN на одном IP-адресе и порте? - PullRequest
0 голосов
/ 28 апреля 2009

Мне нужен обратный прокси-сервер для доступа к веб-серверу Lablz и SSL VPN Adito (форк SSL Explorer), сидя на одном IP / порту. Не удалось добиться этого с Nginx. Не удалось использовать Adito в качестве универсального обратного HTTP-прокси.

Может ли HAProxy стать TCP-прокси, если он не распознает HTTP-трафик? Другими словами, может ли он вернуться к уровню 4, если его проверка уровня 7 определит, что это не HTTP-трафик?

Вот мои настройки

  • Машина EC2 с одним общедоступным IP-адресом (Elastic IP).
  • Открыт только один порт - 443.
  • Stunnel находится на 443 и передает трафик в HAProxy (я не люблю использовать Stunnel, но HAProxy пока не имеет полной поддержки SSL, в отличие от Nginx).
  • HAProxy должен быть настроен на передачу некоторого HTTP-трафика на один сервер (сервер Apache, который выходит на сервер SVN), а остальную часть HTTP-трафика - на наш сервер Lablz Web / App.
  • Весь не HTTP-трафик должен перенаправляться в Adito VPN.
    • Этот трафик:
      • VNC, NX, SMB
      • ... и все другие протоколы, которые поддерживает Adito

Я не могу полагаться на исходный IP-адрес или порт для разделения трафика на HTTP и не HTTP.

Итак, можно ли выполнить такой конфиг в HAProxy? Можно ли использовать для этого какой-либо другой обратный прокси? Дайте мне знать, если я не думаю о HAProxy, и возможен альтернативный подход.

Кстати, Adito SSL VPN удивителен, и если эта настройка сработает, мы сможем предоставить разработчикам Lablz фантастический доступ по VNC-over-HTTPS в один клик к их блокам в облаке.

Нет решения для этого, но через Адито - пожалуйста, докажите, что я не прав. Но, пожалуйста, не говорите, что VNC over SSH лучше. Да, VNC-over-SSH быстрее, безопаснее, но также намного сложнее (для нашей целевой группы пользователей) настроить и предполагает, что пользователь находится за брандмауэром, который разрешает исходящий трафик через порт 22 (не всегда так).

Кроме того, Adito - это гораздо больше, чем шлюз удаленного доступа - это полноценный VPN-браузер, платформа для распространения программного обеспечения и многое другое. Я не связан с ребятами из Adito - см. Мой пост Adito в нашем блоге Lablz .

1 Ответ

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

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

Ни haproxy, ни nginx не могут этого сделать. Они оба сделаны для веб трафика, и я не понимаю, как они могли бы проверять трафик, чтобы угадать, с чем они имеют дело.

Обновление: Рассматривал это немного, и с iptables вы, вероятно, могли бы использовать строку, соответствующую devide трафика. Тем не менее, это все сложно, особенно с зашифрованной природой. Мой друг обнаружил 17-фильтр , и это похоже на то, что вам нужно. Дайте мне знать, если это поможет.

...