一,隐藏Nginx软件版本号信息

查看版本号

curl -I 192.168.0.220

HTTP/1.1 200 OK

Server: nginx/1.6.2           #这里清晰的暴露了Web版本号(1.6.2)及软件名称(nginx)

Date: Wed, 23 Aug 2017 10:45:47 GMT

Content-Type: text/html; charset=UTF-8

隐藏版本号

Nginx配置文件nginx.conf中的http标签段内加入“server_tokens off”

server_tokens off;   #作用是控制http response header内的Web服务版本信息的显示,以及错误信息中Web服务版本信息的显示。

二更改源码隐藏Nginx软件名及版本号

(1)依次修改3个Nginx源码文件。

修改nginx.h

vim /usr/src/nginx-1.14.0/src/core/nginx.h  #进入源码文件的/src/core/里修改版本及软件名

修改后

修改/ngx_http_header_filter_module.c

vim /usr/src/nginx-1.14./src/http/ngx_http_header_filter_module.c     #进入源码文件/src/http/里修改第49行nginx修改为其他服务名

修改 /ngx_http_special_response.c

vim /usr/src/nginx-1.14./src/http/ngx_http_special_response.c    #定义对外展示的内容对外展示的NGINX_VER_BUILD名字更改为apache

三个配置文件修改好后 编译安装nginx 启动服务

三更改Nginx服务的默认用户

(1)为Nginx服务建立新用户

useradd -s /sbin/nologin -M nginx           #不需要有系统登录权限,应当禁止登陆。        

(2)配置Nginx服务,让其使用刚建立的nginx用户

方法有2

1.

vim /usr/local/nginx/conf/nginx.conf               #修改主配置文件user项 设为nginx用户和组

2.源码编译安装时指定用户和组

./configure --user=nginx --group=nginx     

检查更改用户的效果

ps -ef | grep nginx | grep -v grep          #此时worker processes进程对应的用户都变成了nginx

Nginx优化之基本安全优化 (隐藏Nginx软件版本号信息,更改源码隐藏Nginx软件名及版本号,更改Nginx服务的默认用户)的更多相关文章

  1. 更改 Nginx 服务的默认用户

    为什么要更改 Nginx 服务的默认用户:就像更改 ssh 的默认 22 端口一样,增加安全性,Nginx 服务的默认用户是 nobody ,我们更改为 nginx 1.添加 nginx 用户 use ...

  2. Nginx源码安装及调优配置

    导读 由于Nginx本身的一些优点,轻量,开源,易用,越来越多的公司使用nginx作为自己公司的web应用服务器,本文详细介绍nginx源码安装的同时并对nginx进行优化配置. Nginx编译前的优 ...

  3. Nginx源码安装及调优配置(转)

      导读 由于Nginx本身的一些优点,轻量,开源,易用,越来越多的公司使用nginx作为自己公司的web应用服务器,本文详细介绍nginx源码安装的同时并对nginx进行优化配置. Nginx编译前 ...

  4. Nginx 源码安装和调优

    常见web架构: LAMP  =Linux+Apache+Mysql+PHP LNMP  =Linux+Nginx+Mysql+PHP   nginx概述: 知道:1  不知道:2 Nginx (&q ...

  5. Nginx基础知识点总结和优化项

    1.什么是Nginx? Nginx是一个高性能的HTTP和反向代理服务器,常用于做负载均衡服务器 2.为什么要用Nginx?跨平台.配置简单非阻塞.高并发连接:处理2-3万并发连接数,官方监测能支持5 ...

  6. 安全开发运维必备,如何进行Nginx代理Web服务器性能优化与安全加固配置,看这篇指南就够了

    本章目录 1.引言 1.1 目的 1.2 目标范围 1.3 读者对象 2.参考说明 2.1 帮助参考 2.2 参数说明 3.3 模块说明 3.服务优化 3.1 系统内核 3.2 编译优化 3.3 性能 ...

  7. nginx全局配置和性能优化

    nginx目录结构和命令 1.ls /apps/nginx/:         html是测试页,sbin是主程序 2.ls /apps/nginx/sbin/:  nginx 只有一个程序文件 3. ...

  8. nginx源码层面探究request_time、upstream_response_time、upstream_connect_time与upstream_header_time指标具体含义

    背景概述 最近计划着重分析一下线上各api的HTTP响应耗时情况,检查是否有接口平均耗时.99分位耗时等相关指标过大的情况,了解到nginx统计请求耗时有四个指标:request_time.upstr ...

  9. Nginx学习笔记(六) 源码分析&启动过程

    Nginx的启动过程 主要介绍Nginx的启动过程,可以在/core/nginx.c中找到Nginx的主函数main(),那么就从这里开始分析Nginx的启动过程. 涉及到的基本函数 源码: /* * ...

随机推荐

  1. 在Ubuntu中使用uwsgi 启动 Django ,但是静态文件映射出错

    错误 :  找不到/static/下面的静态文件 解决方法: 在uswgi.ini 文件中配置参数 static-map=/static=/home/wb/Desktop/test_django/st ...

  2. flask开发环境

    1. 创建虚拟环境flask_py3 虚拟环境是一个互相隔离的目录 mkvirtualenv flask_py3 2.安装flask包 pip install flask==0.10.1 其他:导入f ...

  3. 基于docker搭建elasticsearch集群

    es集群的搭建 - 基于单机搭建elasticsearch集群见官网 https://www.elastic.co/guide/en/elasticsearch/reference/current/d ...

  4. YOLO---YOLOv3 with OpenCV安装与使用

    Yolo v3+Opencv3.4.2安装记录 @wp20180930 目录 一.环境要求 (1)python版本的查看 (2)opencv版本的查看 二.文件下载 三.数据自测 四.问题与解决 (1 ...

  5. 【CQOI2017】老C的键盘

    Description https://loj.ac/problem/3023 一句话题意:给你一棵完全二叉树,每条边有一个方向,求这棵树有多少种不同的拓扑序. Solution 简化题意后,其实就是 ...

  6. javascript弹出带文字信息的提示框效果

    // position of the tooltip relative to the mouse in pixel // <html><head><meta charse ...

  7. angular reactive form

    这篇文章讲了angular reactive form, 这里是angular file upload 组件 https://malcoded.com/posts/angular-file-uploa ...

  8. <script language= "javascript " for= "window " event= "onload ">

    狼-志 EVENT   event   设置或获取脚本编写用于的事件   FOR   htmlFor   设置或获取绑定到事件脚本的对象. 可以这样理解. <script   language= ...

  9. Linux环境下安装MySQL5.7

    记录一下Linux环境下安装MySQL,大家按顺序执行即可,5分钟内即可完成安装,亲测可行.不过下载MySQL安装包需要大家花费一些功夫,送个链接给大家,大家按需下载: https://dev.mys ...

  10. BZOJ 3065 带插入区间K小值 (替罪羊树套线段树)

    毒瘤题.参考抄自博客:hzwer 第一次写替罪羊树,完全是照着题解写的,发现这玩意儿好强啊,不用旋转每次都重构还能nlognnlognnlogn. 还有外面二分和里面线段树的值域一样,那么r = mi ...