Скрываем версию PHP и Nginx от wappazyzer и других сканеров сайтов. Эти действия немного помогут в обеспечении безопасности сайта. Обращаю внимание что этот способ поможет лишь при некоторых автоматических типах атак, когда роботом ищется определённая версия с определённой уязвимостью. Чаще на уязвимость испытывают все серверы подряд, без предварительного определения версий и тут уже помогут только прямые руки сисадмина и актуальные обновления. Надеяться только на обновления тоже не стоит, но это уже тема отдельного разговора. Приступим к делу. Если у Вас имеются Nginx и PHP, то часть заголовка http выглядит это примерно так:
Server: nginx/1.5.7
X-Powered-By: PHP/5.6.2
Так же злой Wappalyzer и прочие сканеры начинки сайта сдадут версии всех используемых технологий с потрохами и максимальным удовольствием.
В целях безопасности неплохо бы убрать точную версию от лишних глаз. Хочу обратить особое внимание на то, что скрытие версии из заголовка не освобождает от обновлений и грамотной защиты сервера!
Скрываем версию NGINX
Для скрытия версии nginx в /etc/nginx/nginx.conf добавте server_tokens off; находися это в секции http:
http {
#не показывать возраст женщины по имени Nginx =)
server_tokens off;
}
Подробнее про server_tokens можно найти в документации nginx http://nginx.org/en/docs/http/ngx_http_core_module.html#server_tokens
Но это «счастье» не прячет версию пыха и X-Powered-By: PHP/5.6.2 остаётся там же, где и было. Надо дело поправить.
Скрываем версию PHP
Вот что надо сделать для скрытия:
1) в файл /etc/php.ini добавить expose_php = Off. И да прибудет счастье! =)
2)Если желаете отключить заголовок X-Powered-By: PHP/5.3.3 только для определённого хоста, то добавьте php_flag[expose_php] = off в соответствующий конфигурационный файл в /etc/php-fpm.d/.
[my-host-pool]
php_flag[expose_php] = off
Больше информации об expose_php в официальноой документации http://www.php.net/manual/en/ini.core.php#ini.expose-php
Когда дизинфекция от версий произведена, то можно узреть нечто вроде такого:
Server: nginx
Content-Type: text/html; charset=UTF-8
Никакой информации о версиях, клиент доволен! Осталось ему объяснить, что его паранойя бесполезна и копать методы защиты надо другими способами. =)
P.S. Для перепроверки на Wappalyzer выключите и заново включите этот прекрасный эпп, иначе он будет показывать закешированный результат.