Настройка имени сервера Nginx в CentOS
Centos, VPS | Комментировать запись
Данное руководство поможет настроить имя сервера с помощью хоста. Как правило, компании меняют имена серверов по соображениям безопасности. Обнаружив уязвимость в конкретной версии веб-сервера, хакеры могут тиражировать его с целью его эксплуатации.
Настройка имени сервера 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: CentOS, Linux, NGINX, VPS