Nginx 配置 SSL 证书 + 搭建 HTTPS 网站

news/2024/4/27 2:02:59/文章来源:https://blog.csdn.net/weixin_33831196/article/details/89139221

操作流程

  • 第一步,生成csr文件和key文件

$ cd /etc/ssl/private
$ openssl req -new -newkey rsa:2048 -sha256 -nodes -out maketea_loc.csr -keyout maketea_loc.key -subj "/C=CN/ST=Beijing/L=Beijing/O=maketea Inc./OU=Web Security/CN=*.maketea.loc"
  • 第二步,提交csr文件到CA机构

  • 第三步,拿到crt文件

  • 第四步,maketea_loc.csr maketea_loc.key maketea_loc.crt 三个文件放到/etc/ssl/private目录下

  • 第五步,修改nginx文件

server {  listen 80;#也可以不监听80端口 看需要listen 443 ssl;server_name www.maketea.loc;ssl on;ssl_certificate /etc/ssl/private/maketea_loc.crt;ssl_certificate_key /etc/ssl/private/maketea_loc.key;
}

一般的SHA-1形式https就配置好了

为了更安全 ,可以考虑使用迪菲-赫尔曼密钥交换

$ cd /etc/ssl/certs
$ openssl dhparam -out dhparam.pem 2048

然后在nginx ssl配置的后面加上下面的配置

ssl_prefer_server_ciphers on;
ssl_dhparam /etc/ssl/certs/dhparam.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !RC4";
keepalive_timeout 70;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;

同时,如果是全站 HTTPS 并且不考虑 HTTP 的话,可以加入 HSTS 告诉你的浏览器本网站全站加密,并且强制用 HTTPS 访问

add_header Strict-Transport-Security max-age=63072000;
add_header X-Frame-Options DENY;
add_header X-Content-Type-Options nosniff;

同时也可以单独开一个 Nginx 配置,把 HTTP 的访问请求都用 301 跳转到 HTTPS

server {  listen 80;server_name  www.maketea.loc;return 301 https://www.maketea.loc$request_uri;
}

颁发证书的机构

目前一般市面上针对中小站长和企业的 SSL 证书颁发机构有:

StartSSL

Comodo / 子品牌 Positive SSL

GlobalSign / 子品牌 AlphaSSL

GeoTrust / 子品牌 RapidSSL

其中 Postivie SSL、AlphaSSL、RapidSSL 等都是子品牌,一般都是三级四级证书,所以你会需要增加 CA 证书链到你的 CRT 文件里。

以 Comodo Positive SSL 为例,需要串联 CA 证书,假设你的域名是 example.com

那么,串联的命令是

$ cat example_com.crt COMODORSADomainValidationSecureServerCA.crt COMODORSAAddTrustCA.crt AddTrustExternalCARoot.crt > example_com.signed.crt

在 Nginx 配置里使用 example_com.signed.crt 即可

级联问题

有些时候,由第三方机构签发的证书在浏览器上是OK的,但是到了例如安卓端会不认这个证书,Nginx官方是这样说的

Some browsers may complain about a certificate signed by a well-known certificate authority, while other browsers may accept the certificate without issues. This occurs because the issuing authority has signed the server certificate using an intermediate certificate that is not present in the certificate base of well-known trusted certificate authorities which is distributed with a particular browser. In this case the authority provides a bundle of chained certificates which should be concatenated to the signed server certificate. The server certificate must appear before the chained certificates in the combined file

就是说需要有个中间证书

一般类似godaddy这种机构会提供这个证书给你,你要做的就是把这个串放在crt文件的后面,做成一个新的crt,就可以正常使用了

$ cat nginx.crt bundle.crt > nginx.chain.crt

测试的时候自签证书的方法

$ openssl ca -in nginx.csr -out nginx.crt

参考文献

https://s.how/nginx-ssl/
http://www.cnblogs.com/chjbbs...

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_712966.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大型分布式网站架构技术总结

本文是学习大型分布式网站架构的技术总结。对架构一个高性能,高可用,可伸缩,可扩展的分布式网站进行了概要性描述,并给出一个架构参考。一部分为读书笔记,一部分是个人经验总结。对大型分布式网站架构有很好的参考价值…

服务器网站打开慢跟什么有关系吗,浏览器访问网站的速度很慢,跟服务器的好差有关系吗?跟域名有关系吗?...

满意答案xmm3652013.11.13采纳率:40% 等级:12已帮助:9621人有关,浏览器访问网站的速度很慢。首先是你网速的问题,比如你用单位的网,就会很慢;然后是浏览器的问题,有的浏览器快有的慢&#xf…

我的世界pe开服务器网站,我的世界pe服务器怎么开 开服图文教程

我的世界pe服务器怎么开 开服图文教程由游戏堡小编给大家带来,下面是超级详细的我的世界pe开服图文教程哦,希望能够帮助到大家~我的世界pe服务器怎么开先打开minecraft再打开multiplayer pe点host server再点add其中game mode为游戏模式,左边…

网站SEO域名、URL路径优化

网站SEO域名、URL路径优化http://www.seodt.org/498.html 对SEO新手来说,觉得网站站内优化没有多大必要性,SEO基础教程太原SEO数据处理技术团队与大家进行分享一下,对自学SEO的小伙伴来说希望有所帮助,这也是SEO基础知识中&#x…

VS2010 发布网站总是连同cs文件一起发布了

选择第一个,保存再发布.cs文件 都删除了。 转载于:https://www.cnblogs.com/blue123/p/9667968.html

音乐网站开发建设定制,手机版DJ音乐网站制作

专业定制DJ音乐网站,在线音乐播放网站源码开发建设​‌‌模仿qq音乐网站,虾米音乐网站,网易云音乐网站,酷我音乐网站,酷狗音乐网站开发定制等。承接dj音乐站搭建一条龙服务。本公司专业定制,网站开发建设服…

修改url 参数_SEO优化设计,如何处理网址的动态参数?

在SEO日常工作中,我们经常将,工欲善其事,必先利其器,这里的“器”重点就是指我们的网站自身形态,而在影响网站结构的众多因素中,就是URL的动态参数。 特别是相对于动态网站而言,它显得格外重要&…

Use a production WSGI server instead(搭建web网站出现的问题)

今天使用flask来搭建web网站的时候,出现了以下问题 * Serving Flask app "wt" (lazy loading) * Environment: production WARNING: Do not use the development server in a production environment. Use a production WSGI server instead. Unicode…

Mac上的Safari怎么屏蔽特定网站

小编在这里说的是通过修改系统文件来屏蔽特定网站(当然还有其他方式,比如:1,创立新的登录账户,然后进行家长控制;2,安装第三方的应用软件Self Control;3,其他方式&#x…

wordpress表格筛选_您是否尝试过使用#1 WordPress插件在您的网站上创建表格?

wordpress表格筛选Is there a person who truly enjoys creating tables? Seriously, have you met them?有没有一个真正喜欢创建桌子的人? 说真的,你见过他们吗? If you haven’t worked on tables before, it might seem like an easy t…

火狐浏览器主页被hao123网站劫持

不知道什么时候火狐浏览器的主页被hao123劫持了,而且更改不了。 个人喜欢简洁的界面,通过搜索尝试,通过以下方法解除了hao123的劫持。 step1: 打开火狐浏览器 step2:在网址位置输入 “about:support” ,回车,进入火…

大型网站技术架构(八)网站的安全架构

2019独角兽企业重金招聘Python工程师标准>>> 从互联网诞生起,安全威胁就一直伴随着网站的发展,各种Web攻击和信息泄露也从未停止。常见的攻击手段有XSS攻击、SQL注入、CSRF、Session劫持等。 1、XSS攻击 XSS攻击即跨站点脚本攻击(…

大型网站技术架构(一)大型网站架构演化

2019独角兽企业重金招聘Python工程师标准>>> 看完了有一本书,就应该有所收获,有所总结,最近把《大型网站技术架构》一书给看完了,给人的印象实在深刻,再加上之前也搞过书本上讲的反向代理和负载均衡以及ses…

【Docker】练习-在容器中部署静态网站

创建映射80端口的交互式容器安装Nginx安装文本编辑器vim创建静态页面修改Nginx配置文件运行Nginx验证网页访问1、运行一个待端口映射的交互容器,命名为web docker run -p 80 --name web -i -t ubuntu /bin/bash 2、进入容器, 安装Nginx apt-get install …

IT,互联网,科技,技术博客网站推荐

2019独角兽企业重金招聘Python工程师标准>>> 科技博客很多,但质量高的不多,发现质量高的,但又记不住,所以索性把它们都记下来。 米扑博客,深耕写博客近十年,总结了许多好博客,主要偏…

学以致用六---Centos7.2+python3.6.2+django2.1.1 --搭建一个网站

目的,创建django project,开始django web之旅 一、创建一个project 在opt目录下创建一个project [rootgxc opt]# django-amdin.py startproject report-bash: django-amdin.py: command not found[rootgxc opt]# find / -name django-admin.py/usr/lo…

SEO哪些因素会照成百度排名不稳定

我们做SEO最终目的就是提高网站排名,然而有时候会出现这么一种情况,排名做上去了没过多久又下降了,非常不稳定。一般来说SEO优化的排名都是很稳定的,出现这种情况说明你的优化方式不行,下面讲解一下造成百度排名不稳定…

Asp.net发布网站

1.允许更新此预编辑站点 选中这一项后,编译出来的包括aspx文件和dll,与2003下一样。 不选中这一项,编译出来的aspx中没有界面信息,只有一句静态文本,就是不允许发布后修改页面 为了不让订阅网站的用户在第一次打开页…

干货|设计师都收藏的9个实用灵感网站!

正所谓罗马并非一天建成的,设计师的灵感也总是一刹那的灵光乍现,平常多看多想多做都是积累灵感的好办法,不过有了下面的这9款灵感神器,可以让设计师瞬间获得灵感呦,一起来看一下吧~网址:fubiz.n…

网站地图是什么,怎么制作和查看网站的地图呢?

一些做seo网站优化的朋友经常会听到网站地图这个词,那么网站地图到底是什么呢?,有什么做用,我们应该如果去制作和查看一个网站的地图呢?网站地图通俗的来说其实就是把我们网站所有的链接都打包收集到一个文件中&#x…