Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Zabbix 利用 Nginx 实现 HTTPS 访问

Zabbix 利用 Nginx 实现 HTTPS 访问

作者头像
Kevin song
发布于 2020-06-09 03:52:51
发布于 2020-06-09 03:52:51
2.1K01
代码可运行
举报
运行总次数:1
代码可运行

HTTPS

在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性 。HTTPS 在HTTP 的基础下加入SSL 层,HTTPS 的安全基础是 SSL,加密的详细内容依赖SSL。

HTTPS 原理

① 客户端将它所支持的算法列表和一个用作产生密钥的随机数发送给服务器 ;

② 服务器从算法列表中选择一种加密算法,并将它和一份包含服务器公用密钥的证书发送给客户端;该证书还包含了用于认证目的的服务器标识,服务器同时还提供了一个用作产生密钥的随机数;

③ 客户端对服务器的证书进行验证,并抽取服务器的公用密钥;然后,再产生一个称作 pre_master_secret 的随机密码串,并使用服务器的公用密钥对其进行加密,并将加密后的信息发送给服务器 ;

④ 客户端与服务器端根据 pre_master_secret 以及客户端与服务器的随机数值独立计算出加密和 MAC密钥 ;

⑤ 客户端将所有握手消息的 MAC 值发送给服务器 ;

⑥ 服务器将所有握手消息的 MAC 值发送给客户端 。

安装openssl组件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#安装openssl组件
yum install openssl

验证nginx 是否安装 http_ssl_module 模块

生成证书和私钥

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#生成key
openssl genrsa -out openssl.key 1024
#生成CA crt(用于签署csr)
openssl req -new -x509 -key openssl.key -out ca.crt -days 3650
#生成csr(生成的csr文件交给CA签名后形成服务端证书)
openssl req -new -key openssl.key -out server.csr
#生成crt(CSR文件必须有CA的签名才可形成服务器端证书)
openssl x509 -req -days 3650 -in server.csr -CA ca.crt -CAkey openssl.key -CAcreateserial -out server.crt
#参数解释
-CA选项指明用于被签名的csr证书
-CAkey选项指明用于签名的密钥
-CAserial指明序列号文件
-CAcreateserial指明文件不存在时自动生成。#合并证书(openssl.key和ssl证书crt)
 cat openssl.key server.crt  > server.pem

Nginx 配置

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@ZABBIX-Server conf.d]# egrep -v "*#|^$" zabbix.conf 
server {
    listen       6989;
    listen       443 ssl;
    server_name  192.168.99.50;
   fastcgi_buffers 8 128k;
   fastcgi_buffer_size 128k;
    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm index.php;
    }
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
    location ~ \.php$ {
        root           html;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /usr/share/nginx/html$fastcgi_script_name;
        include        fastcgi_params;
    }
location ~ ^/(php_status|ping)$ {
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /usr/share/nginx/html$fastcgi_script_name;
        include        fastcgi_params;
    }
    ssl_certificate     /etc/ssl/server.pem;
    ssl_certificate_key /etc/ssl/server.pem;
    ssl_session_timeout 5m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    if ($server_port = 6989){
    rewrite ^(.*)$ https://$host$1 permanent;
    }
}
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#验证配置文件
nginx -t
#重启nginx服务
systemctl   restart  nginx

访问 http 链接重定向至 https

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
if ($server_port = 6989){
    rewrite ^(.*)$ https://$host$1 permanent;
    }

Https 访问ZABBIX

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
https://192.168.99.50/zabbix/
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-06-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 开源搬运工宋师傅 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Nginx 配置ssl
一、ssl原理: 浏览器发送一个https的请求给服务器; 服务器要有一套数字证书,可以自己制作(后面的操作就是自己制作的证书),也可以向组织申请,区别就是自己颁发的证书需要客户端验证通过,才可以继续访问,而使用受信任的公司申请的证书则不会弹出提示页面,这套证书其实就是一对公钥和私钥; 服务器会把公钥传输给客户端; 客户端(浏览器)收到公钥后,会验证其是否合法有效,无效会有警告提醒,有效则会生成一串随机数,并用收到的公钥加密; 客户端把加密后的随机字符串传输给服务器; 服务器收到加密随机字符串后,先用私钥解
老七Linux
2018/05/09
5.2K0
Nginx 配置HTTPS
http://slproweb.com/products/Win32OpenSSL.html
ruochen
2021/12/04
2.7K0
NGINX 配置本地HTTPS(双向认证)
1、客户端向服务端发送SSL协议版本号、加密算法种类、随机数等信息。  2、服务端给客户端返回SSL协议版本号、加密算法种类、随机数等信息,同时也返回服务器端的证书,即公钥证书  3、客户端使用服务端返回的信息验证服务器的合法性,包括:
py3study
2020/02/27
3.8K0
NGINX 配置本地HTTPS(双向认证)
SSL证书配置(https访问接口, 单向认证和双向认证)
参考文档 1. springboot项目配置阿里云ssl证书,http转https 2. Springboot配置使用ssl,使用https 3. Spring boot使用阿里云SSL证书报错:org/springframework/boot/context/properties/bind/Binder 4. IOException: Alias name tomcat does not identify a key entry 沃通证书部署问题解决办法
时间静止不是简史
2021/04/28
8.1K0
SSL证书配置(https访问接口, 单向认证和双向认证)
全站HTTPS简单实践
惨绿少年
2017/12/27
8020
全站HTTPS简单实践
Nginx反向代理+负载均衡简单实现(https方式)
背景: A服务器(192.168.1.8)作为nginx代理服务器 B服务器(192.168.1.150)作为后端真实服务器 现在需要访问https://testwww.huanqiu.com请求时从A服务器上反向代理到B服务器上 这就涉及到nginx反向代理https请求的配置了~~~ ------------------------------------------------------------------------------------ A服务器(192.168.1.8)上的操作流程: 1
洗尽了浮华
2018/01/22
2.9K0
阿main面试篇之HTTPS终结篇
本文关键词:HTTPS、DES、RSA、AES、GCM、DH、ECDH、DHE、ECDHE
老李秀
2020/04/21
8681
阿main面试篇之HTTPS终结篇
Nginx - 四层代理TCP配置SSL加密访问
使用SSL客户端与Nginx建立连接,确认SSL连接是否正常工作。可以使用openssl命令或其他SSL客户端工具来进行验证。
小小工匠
2024/05/26
1.3K0
Nginx - 四层代理TCP配置SSL加密访问
SSL 证书生成
生成CA私钥(.key)–>生成CA证书请求(.csr)–>自签名得到根证书(.crt)(CA给自已颁发的证书)。
为为为什么
2022/08/06
2.3K0
第九章·Ningx HTTPS 实践
-多年互联网运维工作经验,曾负责过大规模集群架构自动化运维管理工作。 -擅长Web集群架构与自动化运维,曾负责国内某大型金融公司运维工作。 -devops项目经理兼DBA。 -开发过一套自动化运维平台(功能如下): 1)整合了各个公有云API,自主创建云主机。 2)ELK自动化收集日志功能。 3)Saltstack自动化运维统一配置管理工具。 4)Git、Jenkins自动化代码上线及自动化测试平台。 5)堡垒机,连接Linux、Windows平台及日志审计。 6)SQL执行及审批流程。 7)慢查询日志分析web界面。
DriverZeng
2022/09/26
6210
第九章·Ningx HTTPS 实践
3.Nginx配置进阶(三)
==============================================================================
py3study
2020/01/08
9690
3.Nginx配置进阶(三)
https原理及实践
转载请注明出处 安全知识 网络安全问题 数据机密性 在网络传输数据信息时,对数据的加密是至关重要的,否则所有传输的数据都是可以随时被第三方看到,完全没有机密性可言。 数据机密性解决问题思路 利用算法 为了保证数据的机密性,首先可以采用的方法就是将数据通过相应算法,转换为其它的数据信息,然后再通过相应算法反推出真正的数据是什么,这样一来就保证了数据在网络传输过程中安全性,不会被其它人轻易的看到传输过程中的数据信息。数据加密前的信息称为明文数据(plaintext),经过加密算法转换后进行传输的信息称为密文数据
863987322
2018/03/29
1.5K0
https原理及实践
linux学习第四十七篇:Nginx负载均衡,ssl原理,生产ssl密钥对,Nginx配置ssl
Nginx负载均衡 负载均衡,将用户的所有HTTP请求均衡的分配到每一台机器上,充分发挥所有机器的性能,提高服务的质量和用户体验。 vim /usr/local/nginx/conf/vhost/
用户1215343
2018/02/05
1.1K0
linux学习第四十七篇:Nginx负载均衡,ssl原理,生产ssl密钥对,Nginx配置ssl
nginx负载均衡、配置ssl 原
Nginx负载均衡即为当代理服务器将自定义的域名解析到多个指定IP时,通过upstream来保证用户可以通过代理服务器正常访问各个IP。
阿dai学长
2019/04/03
1K0
Linux基础(day52)
12.17 Nginx负载均衡 Nginx负载均衡目录概要 vim /usr/local/nginx/conf/vhost/load.conf // 写入如下内容 upstream qq_com { ip_hash; server 61.135.157.156:80; server 125.39.240.113:80; } server { listen 80; server_name www.qq.com; location / {
运维小白
2018/02/06
8250
Linux基础(day52)
Linux+Nginx/Apache/Tomcat新增SSL证书,开启https访问教程
上上篇文章《nginx 平滑升级&新增模块》提到了公司的 https 访问需求。当我新增了 SSL 模块之后,却发现以前还真没部署过 https 访问。 下面整理我的部署过程,并收集了一下 Apach
张戈
2018/03/23
3.4K0
Linux+Nginx/Apache/Tomcat新增SSL证书,开启https访问教程
Nginx(3)-创建 https 站点
使用对称加密,交易双方都使用同样钥匙,安全性得不到保证;每对用户每次使用对称加密算法时,都需要使用其他人不知道的惟一钥匙,这会使得发收信双方所拥有的钥匙数量呈几何级数增长,密钥管理成为用户的负担。对称加密算法在分布式网络系统上使用较为困难,主要是因为密钥管理困难,使用成本较高。
懒人的小脑
2019/03/19
1.2K0
Nginx(3)-创建 https 站点
Nginx启用https访问
摘 要 nginx启用ssl加密访问。 由于本站全面开启https协议访问,小编决定将实践过程记录下来,方便后来人。 什么是https? https 全称:Hyper Text Transfer Pr
天策
2018/06/22
6.9K2
Nginx配置SSL证书
前段时间根据老谢写的博文,自己也搞了一个SSL证书,由于虚拟主机权限不够我折腾的,所以就入手了一台新加坡的VPS开始折腾。由于SSL证书是要求独立IP的,所以我这换了IP之后需要向证书机构申请重发证书。当证书重发完成之后,就是绑定证书和修改配置文件了,由于之前的证书是由服务商给安装的,再加上nginx下还没有手动安装过证书,只好去找度娘问了。好歹功夫不负有心人,终于让我捣鼓好了。 [box style=”info”] 服务器环境: VPS类型:OpenVZ(oneasiahost) 操作系统:debi
行 者
2018/03/21
6.8K0
Nginx配置SSL证书
Nginx负载均衡,ssl原理,生成ssl密钥对,Nginx配置ssl
Nginx负载均衡: 关于负载均衡实际上和上一篇末尾讲的代理服务器的概念差不多,代理一台机器,叫做代理服务器,代理多台机器就叫做负载均衡。 使用负载均衡是为了将多个用户的请求均匀的发送给多台web服务
叶瑾
2018/06/14
2.3K0
相关推荐
Nginx 配置ssl
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验