подпись apache

Для новичков как вообще в Linux, так и в конкретной теме, к которой относится вопрос.

Модератор: Bizdelnick

user
Сообщения: 163
Статус: ~
ОС: Debian GNU/Linux

подпись apache

Сообщение user »

Как можно изменить Apache/2.2.4 (Unix) PHP/4.4.7 на что-то свое?
Спасибо сказали:
sergio
Сообщения: 436
Статус: Интересующийся новичок
ОС: Debian GNU/Linux 4 & 5

Re: подпись apache

Сообщение sergio »

В текстовом редакторе. (ржот)
Где изменить-то??? :)))))
На страничке http://localhost/index.html ?? :)))
В полях заголовка HTTP в ответе? Если про это - то правкой исходников и пересборкой сервера проблема обязательно решится. :))) И модули подгружаемые не забудьте, пхп-шный вот например.
Debian GNU/Linux 4 -- AMD Athlon64 3000+ / Asus 7600GS -- Gnome
Debian GNU/Linux 5 -- Dell (Vostro) 500 (Celeron M560 / iGM965) -- Gnome
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: подпись apache

Сообщение serzh-z »

Вероятно, имелась в виду подпись на страницах об ошибках - в частности страница HTTP_FORBIDDEN.html.var и т.д. В error/include (в DocumentRoot) есть общие части этих страниц - их можно отредактировать.
Спасибо сказали:
Аватара пользователя
MadDog
Бывший модератор
Сообщения: 2298
Статус: Добрый банщик

Re: подпись apache

Сообщение MadDog »

serzh-z писал(а):
30.05.2007 17:24
В error/include (в DocumentRoot) есть общие части этих страниц - их можно отредактировать.

А можно определить свои страницы с помощью htaccess, например. ИМХО, это правильнее.
MadDog's Blog
Внимательно читать: Как правильно задавать вопросы
No fate but what we make
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: подпись apache

Сообщение serzh-z »

MadDog писал(а):
30.05.2007 17:50
А можно определить свои страницы с помощью htaccess, например. ИМХО, это правильнее.
.htaccess не всегда применим и далеко не так хорош, как кажется - включениии опции поиска сего файла несколько нагружает сервер и замедляет его работу - если вдруг почему-то нет желания править существующие в корневом www умолчальные файлы сообщений, то можно сделать новые и указать к ним путь в httpd.conf
Спасибо сказали:
user
Сообщения: 163
Статус: ~
ОС: Debian GNU/Linux

Re: подпись apache

Сообщение user »

А вот например видел сервера, где вообще Apache Server at www.****.ru Port 80
Как убрали это?

Поиск прогой по исходником на слово (Unix) безрезультатен..
Спасибо сказали:
sergio
Сообщения: 436
Статус: Интересующийся новичок
ОС: Debian GNU/Linux 4 & 5

Re: подпись apache

Сообщение sergio »

Все-таки ни за что не скажем, чего хотим и из какого места подпись вырезать надо? :)

>Поиск прогой по исходником на слово (Unix) безрезультатен..

"Слово юникс" сервер наверняка спрашивает у системы, вряд ли в бинарники сервера решили зашить название и версию вашего ядра телепатически их угадав вместе со всеми грядущими обновлениями :) (Хотя конкретно у вас - ни ядра ни версии, а только "юникс").
Debian GNU/Linux 4 -- AMD Athlon64 3000+ / Asus 7600GS -- Gnome
Debian GNU/Linux 5 -- Dell (Vostro) 500 (Celeron M560 / iGM965) -- Gnome
Спасибо сказали:
Аватара пользователя
keir
Сообщения: 317
ОС: linux

Re: подпись apache

Сообщение keir »

2 user
Установите значение параметра ServerSignature в Off в файле httpd.conf и не мучайтесь.
Trust №1
Спасибо сказали:
user
Сообщения: 163
Статус: ~
ОС: Debian GNU/Linux

Re: подпись apache

Сообщение user »

sergio писал(а):
30.05.2007 20:44
из какого места подпись вырезать надо? :)

Из ответов сервера, откуда же еще :)


"В полях заголовка HTTP в ответе?" - полагаю, да.
Спасибо сказали:
sergio
Сообщения: 436
Статус: Интересующийся новичок
ОС: Debian GNU/Linux 4 & 5

Re: подпись apache

Сообщение sergio »

Честно говоря сильно сомневаюсь, что предумотрены штатные средства для удаления версии сервера отовсюду.

Если в теле стандартных "служебных" страниц с сообщениями об ошибке 404 и т.д. - вам сказали про ServerSignature в конфе. Если замаскировать версию самого сервера от злоумышленников - то надо убирать поля... не помню "Server-Software" или "X-Powered-By" или еще какое (см. доки или вешаемся ТСПклиентом на сервер, пишем
GET / HTTP 1.0
Host: hostname

и смотрим что он напишет в заголовке ответа) из заголовка ответа HTTP, сервер туда себя вписывает. Вероятно придется копаться в исходниках.
(Вариант сугубо для извращенцев - если стоит файервол, разбирающий заголовки ХТТП - прописать ему, чтобы удалял или заменял поля. :) )
Debian GNU/Linux 4 -- AMD Athlon64 3000+ / Asus 7600GS -- Gnome
Debian GNU/Linux 5 -- Dell (Vostro) 500 (Celeron M560 / iGM965) -- Gnome
Спасибо сказали:
user
Сообщения: 163
Статус: ~
ОС: Debian GNU/Linux

Re: подпись apache

Сообщение user »

Код: Выделить всё

Не секрет, что, как правило, взлом сервера (в общем случае) начинается со сбора информации о запущенном на нем ПО. Зная версии программ, мы с легкостью получаем список найденных уязвимостей. В общем, известая процедура... Следовательно, одним из способов повышения защищенности сервера, можно считать сокрытие подобной информации. Сделать это можно поправив определения в исходных кодах. Применяя такой подход можно выдать Apache httpd за любой другой, но есть более приемлемый способ - директива ServerTokens, значения которой документированы. По умолчанию установлено значение Full, что генерирует такой ответ сервера:

    decoy@vault:~$ telnet localhost 80
    Trying 127.0.0.1...
    Connected to localhost.
    Escape character is '^]'.
    HEAD / HTTP/1.0
    HTTP/1.1 200 OK
    Date: Fri, 26 Jan 2007 12:25:06 GMT
    Server: Apache/2.0.55 (Gentoo) mod_ssl/2.0.55 OpenSSL/0.9.7i

Нас это не устраивает, поэтому открываем файл конфигурации, устанавливаем ServerTokens Prod, перезапускаем демон и проверяем результат:

    Server: Apache



Директива ServerTokens устанавливает формат вывода информации в поле Server:
ServerTokens Minimal
# Server: Apache/1.3.0
ServerTokens ProductOnly
# Server: Apache
ServerTokens OS
# Server: Apache/1.3.0 (Unix)
ServerTokens Full
# Server: Apache/1.3.0 (Unix) PHP/3.0


Вышенаписанное нашел в инете... Но всеже интересует, в каком файле сменить то, что в скобках)

Код: Выделить всё

+AP2_COMMON_CONFARGS = --enable-layout=Debian --enable-so \
+                      --with-program-name=apache2  \
+              --with-ldap=yes --with-ldap-include=/usr/include \
+              --with-ldap-lib=/usr/lib \
+              --with-suexec-caller=www-data \
+              --with-suexec-bin=/usr/lib/apache2/suexec \
+                --with-suexec-docroot=/var/www \
+              --with-suexec-userdir=public_html \
+              --with-suexec-logfile=/var/log/apache2/suexec.log \
+              --enable-suexec=shared --enable-authn-alias=shared \
+              --enable-authnz-ldap=shared  \
+              --enable-disk-cache=shared --enable-cache=shared \
+              --enable-mem-cache=shared --enable-file-cache=shared \
+              --enable-cern-meta=shared --enable-dumpio=shared --enable-ext-filter=shared \
+              --enable-charset-lite=shared --enable-cgi=shared \
+              --enable-dav-lock=shared --enable-log-forensic=shared \
+              --enable-log-config --enable-logio \
+              --enable-ldap=shared --enable-proxy=shared \
+              --enable-proxy-connect=shared --enable-proxy-ftp=shared \
+              --enable-proxy-http=shared --enable-proxy-ajp=shared \
+              --enable-proxy-balancer=shared --enable-ssl=shared \
+              --enable-authn-dbm=shared --enable-authn-anon=shared \
+              --enable-authn-dbd=shared --enable-authn-file=shared \
+              --enable-authn-default=shared --enable-authz-host=shared \
+              --enable-authz-groupfile=shared --enable-authz-user=shared \
+              --enable-authz-dbm=shared --enable-authz-owner=shared \
+              --enable-authnz-ldap=shared --enable-authz-default=shared \
+              --enable-auth-basic=shared --enable-auth-digest=shared \
+              --enable-dbd=shared --enable-deflate=shared \
+              --enable-include=shared --enable-filter=shared \
+              --enable-env=shared --enable-mime-magic=shared \
+              --enable-expires=shared --enable-headers=shared \
+              --enable-ident=shared --enable-usertrack=shared \
+              --enable-unique-id=shared --enable-setenvif=shared \
+              --enable-version=shared --enable-status=shared \
+              --enable-autoindex=shared --enable-asis=shared \
+              --enable-info=shared --enable-cgid=shared \
+              --enable-dav=shared --enable-dav-fs=shared \
+              --enable-vhost-alias=shared --enable-negotiation=shared \
+              --enable-dir=shared --enable-imagemap=shared \
+              --enable-actions=shared --enable-speling=shared \
+              --enable-userdir=shared --enable-alias=shared \
+              --enable-rewrite=shared --enable-mime=shared \
+              --with-apr=/usr/bin/apr-1-config \
+              --with-apr-util=/usr/bin/apu-1-config \
+              --with-pcre=yes
+#
А кстате, что означает ключ --enable-layout?



И еще, думаю, может тут?

Код: Выделить всё

    if (ap_server_tokens == SrvTk_PRODUCT_ONLY) {
        ap_add_version_component(pconf, AP_SERVER_BASEPRODUCT);
    }
    else if (ap_server_tokens == SrvTk_MINIMAL) {
        ap_add_version_component(pconf, AP_SERVER_BASEVERSION);
    }
    else if (ap_server_tokens == SrvTk_MINOR) {
        ap_add_version_component(pconf, AP_SERVER_BASEPRODUCT "/" AP_SERVER_MINORREVISION);
    }
    else if (ap_server_tokens == SrvTk_MAJOR) {
        ap_add_version_component(pconf, AP_SERVER_BASEPRODUCT "/" AP_SERVER_MAJORVERSION);
    }
    else {
        ap_add_version_component(pconf, AP_SERVER_BASEVERSION " (" PLATFORM ")");
    }


судя по

Код: Выделить всё

++++ build-tree/apache2/server/core.c    2003-04-05 11:23:12.000000000 +0200
+@@ -2384,7 +2384,7 @@
+         ap_add_version_component(pconf, AP_SERVER_BASEPRODUCT "/" AP_SERVER_MAJORVERSION);
+     }
+     else {
+-        ap_add_version_component(pconf, AP_SERVER_BASEVERSION " (" PLATFORM ")");
++        ap_add_version_component(pconf, AP_SERVER_BASEVERSION " (Debian GNU/Linux)");
+     }
+
+     /*
Спасибо сказали:
ArtIt
Сообщения: 12
ОС: Mandrake 2007 PP

Re: подпись apache

Сообщение ArtIt »

user писал(а):
30.05.2007 16:17
Как можно изменить Apache/2.2.4 (Unix) PHP/4.4.7 на что-то свое?

А мне думается, что смысла в этом нет, ибо, что в апаче, что в пхп, что в мускуле и тому подобных зверях существуют пасхальные яйца. К сожалению, ни убрать их, ни скрыть не представляется возможным. И в инете много написано о том, как получить к ним доступ. Поэтому, ИМХО, не надо скрывать версии ПО, надо эффективно использовать стандартные ф-ии безопасности, как самого апача, так и его модулей.
Спасибо сказали:
sergio
Сообщения: 436
Статус: Интересующийся новичок
ОС: Debian GNU/Linux 4 & 5

Re: подпись apache

Сообщение sergio »

Видимо да. В

Код: Выделить всё

  ap_add_version_component(pconf, AP_SERVER_BASEVERSION " (" PLATFORM ")");

заменить макро PLATFORM на то что хочется

Код: Выделить всё

  ap_add_version_component(pconf, AP_SERVER_BASEVERSION " (MegaOS)");
Debian GNU/Linux 4 -- AMD Athlon64 3000+ / Asus 7600GS -- Gnome
Debian GNU/Linux 5 -- Dell (Vostro) 500 (Celeron M560 / iGM965) -- Gnome
Спасибо сказали:
user
Сообщения: 163
Статус: ~
ОС: Debian GNU/Linux

Re: подпись apache

Сообщение user »

removed.
Спасибо сказали:
user
Сообщения: 163
Статус: ~
ОС: Debian GNU/Linux

Re: подпись apache

Сообщение user »

Усё. Пересобрал со свежей головой его сегодня, вышло то, что хотел.

Теперь Apache/2.2.4 (Debian GNU/Linux) PHP/5.2.2

:)
Спасибо сказали: