本文介绍如何让 OpenSSL 支持 ChaCha20-Poly1305,同时这篇教程也教会你如何更新nginx的 OpenSSL。
升级openssl到1.1.1支持 ChaCha20-Poly1305
openssl自从1.10版本开始内置支持ChaCha20-Poly1305(RFC 7539)。更新 OpenSSL 为最新的版本,就可以支持chacha,无需额外设置。
下载源码开始编译:
cd /usr/local/src
wget https://www.openssl.org/source/openssl-1.1.1g.tar.gz
tar -zxvf openssl-1.1.1g.tar.gz
cd openssl-1.1.1g
1234
cd /usr/local/...
日常的运维工作中,我们经常会用到nginx服务,也时常会碰到nginx因高并发导致的性能瓶颈问题。
今天,我来简单总结、梳理下配置文件中影响 Nginx 高并发性能的一些主要参数
优化 Nginx 进程数量
配置参数如下:
worker_processes 1; # 指定 Nginx 要开启的进程数,结尾的数字就是进程的个数,可以为 auto
1
worker_processes 1; # 指定 Nginx 要开启的进程数,结尾的数字就是进程的个数,可以为 auto
这个参数调整的...
本文主要介绍如何使用 Let’s Encrypt 申请 SSL,并配置 nginx 反向代理 jenkins。开始之前需要你已经有一个能运行 Jenkins 服务。
1: 安装nginx
参考这里nginx安装。
2.安装 Certbot 工具
安装 Certbot 工具来申请 Let’s Encrypt 的 SSL 证书。下载并安装 certbot-auto 命令行工具:
curl -sL https://dl.eff.org/certbot-auto | sudo tee /usr/local/bin/certbot-auto
1
curl -sL https://dl.eff.org/certbot-auto | sudo tee /usr/local/bin/certbot-auto...
OCSP 则是一个在线查询接口,浏览器可以实时查询单个证书的合法性。在每个证书的详细信息中,都可以找到对应颁发机构的 CRL 和 OCSP 地址。
OCSP 的问题在于,某些客户端会在 TLS 握手阶段进一步协商时,实时查询 OCSP 接口,并在获得结果前阻塞后续流程,这对性能影响很大。而 OCSP Stapling(OCSP 封套),是指服务端在证书链中包含颁发机构对证书的 OCSP 查询结果,从而让浏览器跳过自己去验证的过程。服务端有更快的网络,获取 OCSP 响应更容易,也可以将 OCSP 响应缓存起来。OCSP 响应本身经过了数字签名,无法伪造,所以 OCSP...
Brotli 是 google 开发的文本压缩算法,比起gzip可能会有高达37%的提升。主流浏览器都支持br算法,强烈大家升级改算法。使用算法的前提是启用了 https,因为 http 请求中 request header 里的 Accept-Encoding: gzip, deflate 是没有 br 的。
一、内容协商
在介绍 Brotli 之前,先说一下 HTTP 内容协商
同一个 URL有时可以提供不同格式的页面,有存文本的、有压缩的,压缩也有不同算法的,这就要求服务端和客户端之间有一个选择最合适版本的机制,这就是内容协商。
HTTP 的内容协商的其中一种方式:服务端根据客户端发送的请求头中某些...
一、HTTPS 是什么?
超文本传输安全协议(缩写:HTTPS,英语:Hypertext Transfer Protocol Secure)是超文本传输协议和SSL/TLS的组合,用以提供加密通讯及对网络服务器身份的鉴定。HTTPS连接经常被用于万维网上的交易支付和企业信息系统中敏感信息的传输。
HTTPS 目前已经是所有注重隐私和安全的网站的首选,随着技术的不断发展,HTTPS 网站已不再是大型网站的专利,所有普通的个人站长和博客均可以自己动手搭建一个安全的加密的网站。开启 HTTPS 有利于提升网站在搜索引擎中的排名。
如果一个网站没有加密,那么你的所有帐号密码都是...
NGINX 是一个强大的web服务器,可以很容易的应对高负载的HTTP流量。nginx每处理一个连接,就会记录一条日志信息,包括诸如:IP地址,回复内容大小、http状态码等信息。
某种情况下,需要了解请求内容是什么,特别 POST 请求。 NGINX 默认只支持记录GET请求,对于记录POST请求需要使用额外的模块,例如, Echo module, 这个模块提供很多有用的指令: echo, time, and sleep。
记录POST请求我们需要使用到其中的 echo_read_request_body 命令和 $request_body 变量。
源码编译nginx增加echo模块步骤:
1.下载nginx和echo模块的源码:...
群晖内置有nginx,对于普通使用只需要修改他的配置文件。反向代理可以使你从外网访问家里或公司内网中的设备,可惜的是运营商屏蔽了80和443端口,所以只能使用带有端口的IP或域名访问服务。
手动修改配置文件
直接修改nginx配置文件是最容易想到的办法,但是群晖的nginx配置文件会在系统重启后重置,之前保存的修改都会丢失。
因为群晖每次运行自带nginx时,会根据模板文件重新生成nginx的配置文件/etc/nginx/app.d,所以我们修改这个文件是没有意义的,需要直接修改模板文件。
进入cd /usr/syno/share/nginx目录,使用root帐户修改 se...
https证书包含的文件
ca.cer
中间证书和根证书
nginx.cn.cer
你申请的ssl证书
fullchain.cer
包括了 ca.cer 和 nginx.cn.cer 的全链证书
nginx.cn.key
证书的私钥
什么是证书链
证书链的意思是有一个证书机构A,A生成证书B,B也可以生成证书C,那么A是根证书。
操作系统预先安装的一些根证书,都是国际上很有权威的证书机构,比如 verisign 、 ENTRUST 这些公司。
我们普通申请的ssl证书都是这些根证书的孙证书。根证书签发中间证书,中间证书签发ssl证...
一、环境准备
1.安装node和yarn
开始部署react前需要安装node和yarn,可以参考这里安装node和yarn。
2.安装nginx
ubuntu安装nginx,windows安装nginx,源码安装nginx
二、部署构建Reat项目
1.下载源代码并解压
wget https://github.com/mdnice/markdown-nice/archive/master.zip
unzip master.zip
cd markdown-nice-master/
123
wget https://github.com/mdnice/markdown-nice/archive/master.zipu...