Настройка имени сервера Nginx в CentOS

Данное руководство поможет настроить имя сервера с помощью хоста. Как правило, компании меняют имена серверов по соображениям безопасности. Обнаружив уязвимость в конкретной версии веб-сервера, хакеры могут тиражировать его с целью его эксплуатации.

Настройка имени сервера Nginx требует изменения исходного кода и его повторной компиляции; данное руководство описывает этот процесс шаг за шагом.

1: Найдите версию сервера

curl -I http://example.com/
HTTP/1.1 200 OK
Server: nginx/1.5.6 # <-- вот номер текущей версии nginx
Date: Thu, 17 Nov 2013 20:40:18 GMT
Content-Type: text/html
Content-Length: 612
Last-Modified: Thu, 17 Nov 2013 20:37:02 GMT
Connection: keep-alive
ETag: "51f18c6e-264"
Accept-Ranges: bytes

2: Измените строки кода Nginx

Вернитесь в каталог исходного кода Nginx и выполните:

cd ~/src/nginx/
vi +49 src/http/ngx_http_header_filter_module.c

Найдите такие строки:

static char ngx_http_server_string[] = "Server: nginx" CRLF;
static char ngx_http_server_full_string[] = "Server: " NGINX_VER CRLF;

и измените их следующим образом:

static char ngx_http_server_string[] = "Server: new-name" CRLF;
static char ngx_http_server_full_string[] = "Server: new-name" CRLF;

3: Перекомпилируйте Nginx

Теперь нужно заново скомпилировать веб-сервер с новыми значениями.

Примечание: для повторной компиляции можно использовать историю командной строки.

./configure ...
make
make install

4: Отключите отображение версии сервера в конфигурациях

vi +19 /etc/nginx/nginx.conf

Внесите под настройки http следующую строку (при наличии нескольких разделов http это действие нужно повторить):

http {
...
server_tokens off;
....

5: Перезапустите Nginx

Теперь нужно перезапустить Nginx, чтобы активировать все изменения:

service nginx restart

6: Проверьте результаты

Убедитесь, что сейчас отображается правильная информация о сервере:

curl -I http://example.com/
HTTP/1.1 200 OK
Server: new-name
Date: Thu, 17 Nov 2013 20:50:17 GMT
Content-Type: text/html
Content-Length: 612
Last-Modified: Thu, 17 Nov 2013 20:37:02 GMT
Connection: keep-alive
ETag: "51f18c6e-264"
Accept-Ranges: bytes

Готово!

Tags: , , ,

Добавить комментарий