当前位置:首页 > 技术文章 > 正文内容

Nginx基本安全配置(防盗连、隐藏版本号、防嵌套等)

arlanguage4个月前 (12-23)技术文章34

在生产环境中nginx有很多安全方案,我在为生产环境部署中得到很多经验,收集到的一些常用配置,简单记录一下。

安装Nginx

正常安全Nginx大家应该都会,但是各位要知道在安全要求很高的生产环境中,是无网络安装的,(当然有些有内网源就简单很多了),所以要自己上传文件上去安装,缺什么依赖没法用命令安装像是yum install或者apt-get install是无法使用的,这里简单说下,等有空再详细说下无网络安装,这里简单说下。

下载编译需要的库源码

安装顺序编译安装以下库源码即可安装Nginx

  1. openssl
  2. pcre
  3. zlib
  4. Nginx

注意Nginx安装的时候配置下需要的库免得到时候重新编译安装

cd nginx-1.21.6
./configure --with-http_ssl_module --with-http_gzip_static_module --with-http_stub_status_module --with-stream
make
make install

这样Nginx就算是安装好了 默认安装路径在/usr/local/nginx

隐藏版本号

正常Nginx默认配置是会显示版本号的信息的如下

只需要在Nginx配置文件中(如nginx.conf)的http{}加入以下参数即可

#隐藏版本号
server_tokens off;

然后显示就是这样的

完全不显示Nginx

这个需要修改Nginx源码来实现,具体可以Google搜下

防止被嵌套iframe

location /下加入以下属性即可

# 拒绝IFrame嵌套
add_header X-Frame-Options SAMEORIGIN;

限制ip访问

同样在location /下加入以下属性即可

# 限制IP访问
allow 192.168.1.0/24;
allow 这里填IP;
deny all;

防盗连

这个是这次部署中了解到的技术,之前还真不知道有这功能 说白了就是防止别的ip或者域名访问静态资源,比如壁纸,总不能部署的壁纸被别人拿去免费当图床吧?

http{}下加入如下配置

# 防盗连
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)nbsp;{
    root html;
    valid_referers none blocked rakers.top; # 这里填写允许的IP或域名
    if ($invalid_referer) {
        rewrite ^/ http://127.0.0.1/; #这里填资源地址ip或域名
        #return 404;
    }
}


版权声明:本文为「诚哥博客」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://www.chengzz.com/497.html

扫描二维码推送至手机访问。

版权声明:本文由AR编程网发布,如需转载请注明出处。

本文链接:http://www.arlanguage.com/post/385.html

分享给朋友:

“Nginx基本安全配置(防盗连、隐藏版本号、防嵌套等)” 的相关文章

2022年从零开始,用一篇博客掌握 nginx 的初级配置

当 nginx 安装之后,默认的配置如下所示(数据来源为宝塔自动生成),本篇博客重点介绍的是配置虚拟机相关内容,即 server 块配置项。 server 块的指令主要用于设置主机和端口, location 块用于匹配网页路径,一个 http 块可以包含多个 server 。基础配置server {...

Nginx:为什么高性能?Master&worker如何配合?负载均衡了解吗?

1. Nginx架构及工作流程Nginx真正处理请求业务的是Worker之下的线程。worker进程中有一个ngx_worker_process_cycle()函数,执行无限循环,不断处理收到的来自客户端的请求,并进行处理,直到整个Nginx服务被停止。当一个 worker 进程在 accept()...

nginx监控与调优(三)

nginx监控通常有两种方法:一是status监控;二是ngxtop监控。一、status监控使用status监控的步骤:1.确定nginx中status模块是否已安装[root@localhost sbin]# nginx -V nginx version: nginx/1.13.7 built...

nginx入门——web服务器(四)

我们先来认识一下web服务器主要功能。处理哪些URL请求怎么处理这些URL请求下面我们主要针对这两个功能来进行讲解。一、设置虚拟服务器在http上下文中用server指令定义虚拟服务器,以下是一个基本的结构:http { server { # Server上下文配置...

Nginx专题(1):Nginx之反向代理及配置

一、Nginx概念解读对于新事物的理解,最好的方式就是从概念入手,本文作为《Nginx专题》系列文章的第一篇,先从Nginx的名称开始来分解这个神秘的引擎。Nginx,是engine X的缩写,发音也是'engine x',2004年由俄罗斯大神伊戈尔·赛索耶夫开发,提供了高性能而易...

在Ubuntu上将Nginx升级到最新版本

在Ubuntu上将Nginx升级到最新版本如果你在Ubuntu上运行nginx,你很快就会发现,操作系统中默认的Ubuntu版本真的很旧。这意味着你需要运行最新版本的Nginx来避免安全问题。这篇文章是关于如何做到这一点。第一件事是找出你使用的是哪个版本。以下是你如何做。$ nginx -v 它应该...