Легкая, простая защита MITM для HTTP?

Я использую Apache и mod_jk для этого, он хорошо работает. Каково было бы преимущество переключения апача к lighttpd?

Если это не, повредился, не фиксируйте его. Преимущества переключения на Lighttpd являются главным образом производительностью; Lighttpd требует, чтобы меньше ЦП/RAM сделало ту же работу как Apache. Может также быть легче настроить, но так как у Вас уже есть выполнение Apache, которое является надуманным вопросом для Вас.

Я не соглашаюсь с Andy по проблеме безопасности; Apache 2 имел проблемы безопасности, о которых более сообщают, чем Lighttpd, но большинство из них было бы в модулях, в которых Вы не скомпилируете для выравнивания нагрузки, и Apache способен быстро выпускать, фиксирует для их проблем безопасности. Lighttpd получает намного меньше исследования безопасности, чем Apache, таким образом, он, возможно, больше не предал гласности проблемы, о которых мы не знаем. Это - яблоки к сравнению апельсинов...

Сегодня Lighttpd освобождает импульс, по моему скромному мнению. Так как его автор получил работу в MySQL и начал работать над прокси MySQL, частота выпусков Lighttpd понизилась. Мое инстинктивное чувство состоит в том, что самые новые установки событийно-ориентированных серверов HTTP с открытым исходным кодом используют nginx теперь. Посмотрите английский язык Wiki для обзора nginx.

Для бесплатного выравнивания нагрузки с открытым исходным кодом я полагаю, что самая большая установленная основа для HAProxy и nginx теперь. Трудно придумать числа, поскольку обзоры общественности, такие как Netcraft, не могут обнаружить подсистемы балансировки нагрузки бэкенда, но это - мое инстинктивное чувство на основе сообщений в блоге, которые я вижу.

Обратите внимание, что и nginx и HAProxy не могут сделать Apache проксирование Протокола JServ. nginx может сделать HTTP и FastCGI и возможно еще много, и HAProxy является HTTP только. Таким образом необходимо было бы переключиться на вывод HTTP от сервера приложений.

Моя рекомендация состояла бы в том, чтобы остаться поставившей Apache, если у Вас нет определенной потребности функциональности, тот Apache не решает для Вас.

1
задан 13 July 2010 в 16:38
6 ответов

То, что Вы ищете, действительно не существует. Легкий механизм встроил к браузерам, и серверы SSL.

6
ответ дан 3 December 2019 в 16:19
  • 1
    Если ответ является "нет", я ценю прямой, простой "нет". Предложения и альтернативы полезны также, но печально, когда действующие из лучших побуждений пользователи StackOverflow делают поспешные выводы (на основе необоснованных предположений о моей ситуации) и начинают говорить мне, что моя "настоящая проблема" - что-то еще. 95% времени, они неправы, и их тоны являются раздражающими или совершенно оскорбительными. –  Ryan B. Lynch 24 July 2010 в 22:47
  • 2
    Это - определенно корректный ответ. TLSv1 + может ' barely' защитите HTTP от MITM при надлежащей реализации. Малейшая неверная конфигурация или использование чего-либо меньше (такое как более старые версии TLS/SSL) и you' ре, открытое для одного из многих и, варьировалось нападения на HTTP. It' s столь легкий, как пример использования просит; и that' s, почему it' s только на ультрасовременном из того, чтобы быть ' secure'. –  Rushyo 17 October 2014 в 12:57

Если Вы вводите SHA1 в своем содержании, и я - MITMing Вы, что сохраняет меня от просто фиксации SHA1 также?

2
ответ дан 3 December 2019 в 16:19

Некоторые обходные решения включают:

  • Обзор HTTP для имен пользователей / пароли
  • DNSSEC для сервера обращаются к проверке
  • сделайте ajax механизм квитирования и проверку страницы HMAC. Если Вы вводите общественность подражания страницы / механизм с закрытым ключом - третье лицо может легко вмешаться в данные, еще MITM может также легко зафиксировать хеш данных. Помните, что криптография редко делается правильно, поэтому стойте на плечах других и используйте доказанный механизм.

    Я предлагаю, чтобы Вы использовали ssl с настроенным nginx (взгляд ssl сессии и шифры). Иначе Ваш MITM будет просто пародией и потраченной впустую работой и циклами CPU.

2
ответ дан 3 December 2019 в 16:19

В зависимости от того, сколько управления Вы имеете по клиенту, Вы могли заменить тривиально вскрываемый SHA1 HMACSHA1. Проблема с HMACs состоит в том, что они требуют, чтобы секретный ключ был известен с обеих сторон передачи заранее. Любой с доступом к Вашему клиенту, вероятно, смог бы извлечь секретный ключ путем разборки его.

HMACSHA1 Diagram

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

0
ответ дан 3 December 2019 в 16:19
  • 1
    @Ryan: Если это так, все, это собирается работать, является SSL. –  Billy ONeal 15 July 2010 в 07:37

Проблема с использованием неясного или сделанного на заказ протокола для подписания состоит в том, что это уже не встроено в браузер (браузеры). Это означает, что необходимо предоставить логику проверки удаленному браузеру. Если у Вас нет защиты от нападения MITM при поставке того кода/логики, то, что останавливает MITM от просто замены кода доступа с чем-то, что возвращает "ДОПУСТИМЫЙ" независимо от того, что это видит - и/или, что мешает MITM извлечь общий секрет, используемый для HMAC от клиентского кода доступа и использовать это в нападении MITM?

Если Вы просто не можете сделать SSL в реальном времени crypto, Вы могли бы реорганизовать свой процесс так, чтобы Вы использовали HTTP для обеспечения предварительно вычисленных ответов, которые были GPG-подписаны или иначе подписались офлайн как часть пакетной обработки? Если необходимо включать данные от пользователя в вычислениях/определении ответа, Вы могли бы добавить запросы к пакетно обработанной очереди с результатами GPG-со-знаком, обеспеченными позже через пользователя, опрашивающего страницу ответа HTML, и/или по электронной почте?

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

0
ответ дан 3 December 2019 в 16:19

Вместо того, чтобы пытаться решить неправильную проблему, захватите ускоряющую карту шифрования или поместите Nginx перед Вашим веб-сервером в конфигурации прокси акселератора/реверса SSL и сделайте с ним.

0
ответ дан 3 December 2019 в 16:19

Теги

Похожие вопросы