2009-11-06 3 views
2

У нас есть приложение Java EE, работающее на JBoss. По соображениям безопасности это приложение, которое должно быть доступно в Интернете, защищено внешним сервером Apache. Мы используем AJP для этого.Apache Webserver & JBoss AJP с https

Это нормально работает при доступе к приложению через http. Когда мы пытаемся сделать это с помощью https, это не сработает, мы получаем ошибку 404, когда получаем доступ к приложению Java EE. Мы разместили SSL-сертификаты на сервере Apache.

+0

У меня такая же проблема, вы ее решили? – DaveB

ответ

1

SSL на apache обычно используется с использованием отдельного виртуального хоста (vhost). Вы включили и сконфигурировали mod_jk (mod_proxy_ajp/mod_cluster) для этого vhost?

+0

Нет настройки SSL для mod_proxy_ajp; нужно переключиться на http, чтобы иметь возможность установить https-соединение между клиентом-балансиром (httpd) - рабочим (JBoss). –

2

Цитата community.jboss.org

Шифрование и SSL поддержка

Протокол AJP не шифруется, поэтому его не следует использовать с общедоступной сети инфраструктуры. В случае необходимости обеспечения передачи данных между веб-сервером и сервером приложений, поскольку транспортный носитель может быть обнюхиван внешним миром, тогда необходимо использовать какой-то туннель SSL. Другой вариант - использовать протокол https с mod_proxy. Однако использование протокола https делает вещи немного более сложными, потому что нужно заверить, что пользовательский фильтр настраивается на сервере приложений, чтобы клиентские сертификаты проходили прозрачно на сервер приложений. С другой стороны, AJP-протокол обрабатывает это автоматически, но с последствием передачи дешифрованных данных между сервером и сервером приложений. В сущности, для SSL протокол AJP ведет себя как кеширующий SSL-ускоритель. Это обеспечивает гораздо более высокую производительность, поскольку данные дешифруются только один раз. Обеспечение безопасности между сетью и сервером приложений с использованием другой сетевой карты и набора брандмауэров и маршрутизаторов является наиболее безопасным решением. Еще один вариант - разместить веб-сервер и сервер приложений на одном физическом поле, в этом случае будет использоваться связь в памяти, что повысит безопасность всей системы.

Смежные вопросы