перекомпилируйте nginx с именем сборки и сохраните текущие конфигурации

перекомпилируйте nginx с именем сборки и сохраните текущие конфигурации

Итак, я некоторое время управлял серверами nginx и сделал кучу хороших изменений, чтобы сделать все правильно для одного из моих клиентов. Недавно они наняли тестеров на проникновение и хотят, чтобы я усилил безопасность. Поэтому мне нужно скрыть имя сборки nginx, чтобы соответствовать их требованиям. Однако, похоже, мне нужно перекомпилировать nginx, чтобы сделать это. Мне просто интересно, есть ли способ сохранить все мои изменения в конфигурации и т. д. при перекомпиляции с опцией имени сборки.

решение1

Ваши конфигурации не изменятся при пересборке nginx. Если make installобнаружит существующие конфигурации, то не перезапишет их. Чтобы быть полностью уверенным, просто скопируйте nginx.confв nginx.conf.bakили что-то подобное. Однако, похоже, вам нужно управление конфигурациями и какой-то процесс сборки, который даст вам дополнительные баллы при аудите безопасности. Я бы рассмотрел, по крайней мере, настройку локального gitрепозитория для ваших конфигураций и, возможно, travisили jenkinsдля управления релизами, поскольку вам нужно будет быть в курсе новых обновлений безопасности.

Для любых поисков, достигающих этого места, версия nginx устанавливается во время компиляции переменной NGINX_VER, но не меняйте ее глобально, так как другие процессы используют ее. Переменную необходимо изменить вручную в ngx_http_header_filter_module.cследующих местах:

static u_char ngx_http_server_string[] = "Server: yourservername" CRLF;
static u_char ngx_http_server_full_string[] = "Server: yourservername/1.0" CRLF;
static u_char ngx_http_server_build_string[] = "Server: " NGINX_VER_BUILD CRLF;

решение2

Я получил нужный мне ответ из этого комментария:https://stackoverflow.com/questions/24594971/how-to-changehide-the-nginx-server-signature/38967105#38967105

Если вы работаете в Ubuntu, то

Сначала установите nginx-extras

sudo apt-get install nginx-extras

Перейдите в /etc/nginx/nginx.conf и в разделе http добавьте:

http {
    more_set_headers "Server: Your_New_Server_Name";
    server_tokens off; 
}

Перезапустить nginx

sudo service nginx restart

Связанный контент