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

Как удалить server: header из HTTP ответа с Apache?

Я хотел бы удалить строку:

Server: Apache/2.2.8 (Ubuntu) PHP/5.2.4-2ubuntu5.6 with Suhosin-Patch mod_ssl/2.2.8 OpenSSL/0.9.8g

из HTTP-ответов моего сервера, но я не мог найти ничего, кроме как изменить include/ap_release.h и скомпилировать Apache себя. Мне было интересно, есть ли способ, о котором я не знаю?

5
задан Gilles
источник

2 ответов

вы можете удалить или замаскировать идентификацию сервера из Http-заголовка с помощью ModSecurity брандмауэр с открытым исходным кодом веб-приложения.

маскировка идентичности сервера

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

изменить личность Апач веб-сервер, на который вам придется зайти исходный код, найти, где имя "Apache" жестко запрограммирован, измените его и перекомпилировать сервер. Тот же эффект может быть достигнуто с помощью

директива SecServerSignature:

SecServerSignature "Microsoft-IIS/5.0"

следует отметить, что хотя этот работает вполне ну и умелые нападающие (и инструменты) могут использовать другие методы "отпечаток пальца" веб-сервера. Для например, файлы по умолчанию, сообщение об ошибке , заказ на исходящие заголовки как сервер реагирует на определенные просьбы и подобное-может все дать прочь истинную личность. Я посмотрю в целях дальнейшего укрепления поддержки маскировка личности в будущем выпуски mod_security.

если вы измените подпись Apache, но вы раздражает странное сообщение в журнал ошибок (некоторые модули все еще видно - это влияет только на ошибку бревно, со стороны оно еще работает как и ожидалось):

[Fri Jun 11 04:02:28 2004] [notice] Microsoft-IIS/5.0 mod_ssl/2.8.12 OpenSSL/0.9.6b \ configured -- resuming normal operations

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

Примечание

для того, чтобы эта директива работала вы должны оставить/установить ServerTokens в Полный.

когда Директива SecServerSignature используется для изменения общего сервера подпись, ModSecurity начнется пишу реальную подпись журнал ошибок, позволяющий идентифицировать веб-сервер и модули.

источник: ModSecurity Справочное Руководство

16
отвечен Chris_O 2017-09-12 02:47:35
источник

Если установить ServerTokens to"Prod", вы можете уменьшить заголовок до"Server: Apache". Полный список опций смотрите в документации:

документация для Apache 2.2

документация для Apache 2.4

Примечание: настройки одинаковы в обеих версиях, однако 2.4 документация добавляет это примечание:

установка ServerTokens меньше, чем минимальный не рекомендуется, потому что это делает его более трудно отлаживать проблемы межоперационной. Также обратите внимание, что отключение заголовка Server: не делает ничего, чтобы сделать ваш сервер более безопасным. Идею "безопасность через неясность" - это миф и приводит к ложному чувству безопасности.

Если вы хотите удалить слово" Apache " полностью, вам придется изменить источник.

24
отвечен grawity 2017-09-12 03:55:07
источник

Другие вопросы apache-http-server