给自己的网站装上SSL证书
给网站装上SSL证书
前言
主要是因为自己的阿里云快过期了,自己的博客也重新用了一下Halo,重新安装SSL的时候有些地方忘了,所以在此留个记录!
关于SSL
阮一峰《图解图解SSL/TLS协议》:https://www.ruanyifeng.com/blog/2014/09/illustration-ssl.html
SSL证书是什么?
SSL 证书是一个数字证书,用于认证网站的身份并启用加密连接。SSL 代表安全套接字层,这是一个安全协议,可在 Web 服务器和 Web 浏览器之间创建加密链接。
公司和组织需要在其网站上添加 SSL 证书,以保护在线交易并保持客户信息的私密性和安全性。
简而言之:SSL 可确保互联网连接的安全,并防止犯罪分子读取或修改两个系统之间传输的信息。如果您在地址栏中的 URL 旁看到一个挂锁图标,则表示 SSL 在保护您正在访问的网站。
自 SSL 协议在约 25 年前发布以来,已经有多个版本问世,所有这些版本在某些时候都会遇到安全性方面的难题。随后出现了经过修改和重命名的版本 - TLS(传输层安全性),至今仍在使用。但是,首字母缩写 SSL 早已深入人心,因此该协议的新版本通常仍在使用这一旧名称
为什么需要 SSL 证书
网站需要 SSL 证书来确保用户数据的安全,验证网站的所有权,防止攻击者创建虚假网站版本,以及将信任传达给用户。
如果网站要求用户登录、输入个人详细信息(例如其信用卡号)或查看机密信息(例如,健康福利或财务信息),则必须对数据保密。SSL 证书有助于保持在线互动的私密性,并向用户保证该网站是真实可靠的,可以与其共享私密信息。
与企业更相关的事实是,HTTPS Web 地址需要 SSL 证书。HTTPS 是 HTTP 的安全形式,这意味着 HTTPS 网站的流量通过 SSL 进行了加密。大多数浏览器将 HTTP 网站(没有 SSL 证书的网站)标记为“不安全”。这向用户发出了一个明确的信号,即该网站可能不值得信任,这有助于敦促尚未迁移到 HTTPS 的企业执行迁移。
SSL 证书有助于保护信息,例如:
登录凭据
信用卡交易或银行账户信息
个人身份信息 - 例如全名、地址、出生日期或电话号码
法律文档和合同
病历
专有信息
SSL 证书如何工作?
SSL 的原理是确保用户和网站之间或两个系统之间传输的任何数据始终无法被读取。它使用加密算法对传输中的数据进行加密,从而防止黑客读取通过连接发送的数据。该数据包括潜在的敏感信息,例如姓名、地址、信用卡号或其他财务详细信息。
该过程如下所示:
浏览器或服务器尝试连接到使用 SSL 保护的网站(即 Web 服务器)。
浏览器或服务器请求 Web 服务器证明自己的身份。
作为响应,Web 服务器向浏览器或服务器发送它的 SSL 证书的副本。
浏览器或服务器检查以了解是否信任 SSL 证书。如果信任,它将向 Web 服务器发出信号。
然后,Web 服务器返回经过数字签名的确认,以启动 SSL 加密会话。
加密数据在浏览器或服务器与 Web 服务器之间共享。
此过程有时称为“SSL 握手”。虽然这个过程听起来似乎很漫长,但实际发生时只有几毫秒。
当网站具备 SSL 证书保护时,首字母缩写 HTTPS(代表安全超文本传输协议)会显示在 URL 中。如果没有 SSL 证书,则只会显示字母 HTTP(即没有代表安全的 S)。URL 地址栏中也会显示一个挂锁图标。这表示信任,并向那些访问该网站的人提供了保证。
要查看 SSL 证书的详细信息,可以单击浏览器栏中的挂锁符号。SSL 证书中通常包括的详细信息包括:
针对其颁发证书的域名
颁发给哪个人、组织或设备
哪个证书颁发机构颁发了证书
证书颁发机构的数字签名
关联的子域
证书的颁发日期
证书的到期日期
公钥(不公开私钥)
引用:《什么是 SSL 证书 – 定义和解释》:https://www.kaspersky.com.cn/resource-center/definitions/what-is-a-ssl-certificate
开始安装
参考自水哥的公众号:https://mp.weixin.qq.com/s/IaIGnFmfRZ8ODOCJuiLciQ
B站搜“不高兴就喝水”,水哥的公众号中的文章还是很肝的!目前没有沦陷!
1、进入阿里云点击立即购买,选择免费的
对于购买可以参考官方文档:https://help.aliyun.com/document_detail/156645.html
2、审核通过后,进入控制台下载
得到两个文件
3、上传文件
#进入Nginx默认安装目录。如果您修改过默认安装目录,请根据实际配置进行调整。
cd /usr/local/nginx/conf
#创建证书目录,命名为cert。然后把证书丢里头
mkdir cert
4、在nginx.conf中加入以下内容
(不要改原有的sever,这只不过是新加的一个模块,注意看原有文件中注释的内容,方便理解),输入“vim nginx.conf”进行编辑,写完后按键盘“ESC”健输入“:wq”即完成保存退出。
关于Vim可以看一下我以前做的一些记录:
https://www.cnblogs.com/yuyueq/p/14022693.html (文末有一些vim操作)
https://www.cnblogs.com/yuyueq/p/13193852.html (Vim设置行号)
server {
listen 443 ssl;
#配置HTTPS的默认访问端口为443。
#如果未在此处配置HTTPS的默认访问端口,可能会造成Nginx无法启动。
#如果您使用Nginx 1.15.0及以上版本,请使用listen 443 ssl代替listen 443和ssl on。
server_name www.yzfree.com;
#把www.yzfree.com替换成你自己的域名
#需要将yourdomain.com替换成证书绑定的域名。
root html;
index index.html index.htm;
ssl_certificate cert/5452872_www.yzfree.com.pem; #需要将cert-file-name.pem替换成已上传的证书文件的名称。
ssl_certificate_key cert/5452872_www.yzfree.com.key; #需要将cert-file-name.key替换成已上传的证书密钥文件的名称。
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
#表示使用的加密套件的类型。
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #表示使用的TLS协议的类型。
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://localhost;
}
}
5、进行编译重启
如果最后失败,要注意nginx.conf配置文件的正确性,以及下面1到5的步骤,不成功则重复1到5这个步骤
1.切换到源码包下
# cd /usr/local/src/nginx-1.18.0
2.生成makefile(如果你的目录下没有“configure”是不成功的):
# ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
3.配置完成后,运行命令编译:
# make
make命令执行后,不要进行make install,否则会覆盖安装。
4.备份原有已安装好的nginx:
# cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
5.停止nginx状态:
# /usr/local/nginx/sbin/nginx -s stop
6.将编译好的nginx覆盖掉原有的nginx:
# cd /usr/local/src/nginx-1.18.0
# cp ./objs/nginx /usr/local/nginx/sbin/
7.提示是否覆盖,输入yes即可。
8.然后启动nginx:
# /usr/local/nginx/sbin/nginx
9.进入nginx/sbin目录下,通过命令查看模块是否已经加入成功:
# cd /usr/local/nginx/sbin/
# ./nginx -V
10.显示以下信息,则证明已经编译成功:
nginx version: nginx/1.6.2
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC)
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
6、最后
网站改用https便可成功访问,至于以上步骤对于初学者来说一般会有问题,所以可以参考一些这些文章
nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module in /usr/loc:https://www.cnblogs.com/ghjbk/p/6744131.html
jar包后台启动:
https://cloud.tencent.com/developer/article/1722069
window和Linux关闭端口:
https://www.cnblogs.com/yuyueq/p/14787857.html
我的网站
给自己的网站装上SSL证书的更多相关文章
- OV SSL证书有哪些功能?网站安装OV SSL证书的好处
OV SSL证书英文名称为Organization Validation SSL Certificate,申请OV SSL证书需要审核申请者对域名是否拥有控制权,同时审核申请者是否为一个合法登记.真实 ...
- Nginx 通过 certbot 为网站自动配置 SSL 证书并续期
一.背景知识 1.1.http 和 https 是什么? 简单来说,http 是一个传输网页内容的协议,比如你看到的 http 开头的网站 http://www.163.com ,其网页上的文字.图片 ...
- Mozilla新特性只支持https网站,再次推动SSL证书普及
Mozilla的官方博客2015.4.30正式宣布了淘汰HTTP的方案. 其中包括:设定一个日期,所有的新特性将只提供给HTTPS网站:HTTP网站将逐步被禁止访问浏览器功能,尤其是那些与用户安全和隐 ...
- 哪些网站需要HTTPS(SSL证书)
很多站长似乎不了解https站点是怎么回事,这就要从传统站点说起:传统的站点的http超文本传输协议,采用明文传输模式,存在着大量的灰色中 间环节,明文信息在中间代理服务器.路由器.wifi热点.通信 ...
- 我是如何将网站全站启用Https的?-记录博客安装配置SSL证书全过程
评论» 文章目录 为什么要Https 如何选择Https 安装部署SSL证书 平滑过渡Https 搜索引擎的响应 启用Https小结 正如大家所看到的,部落全站已经启用了Https访问了,连续几天 ...
- [从零开始搭网站六]为域名申请免费SSL证书(https),并为Tomcat配置https域名所用的多SSL证书
点击下面连接查看从零开始搭网站全系列 从零开始搭网站 由于国内的网络环境比较恶劣,运营商流量劫持的情况比较严重,一般表现为别人打开你的网站的时候会弹一些莫名其妙的广告...更过分的会跳转至别的网站. ...
- SSL证书没有绿锁您与此网站建立的连接并非完全安全解决办法
为什么我新建的网站配置好SSL后,网站https旁边提示不安全,没有小绿锁了? 不少国内空间的新手站长,当使用了SSL证书之后,发现浏览器有https效果了,但是没有绿锁,谷歌浏览器提示“您与此网站建 ...
- 免费SSL证书(https网站)申请
如何拥有一个自己的免费的SSL证书,并且能够长期拥有.这篇文章让你找到可用的免费证书o(* ̄︶ ̄*)o 各厂商提供的免费SSL基本是Symantec(赛门铁克),申请一年,不支持通配符,有数量限制. ...
- WDCP上传SSL证书
1.在线申请SSL证书 2.网站管理>SSL证书上传 3.将key文件直接上传,cert文件内容复制到crt文件中,再上传 4.开启https 注意:同一个域名下解析的若干域名,只能走主域名的证 ...
随机推荐
- JAVA匹配html中所有img标签
public static List<String> getImg(String htmlStr) { List<String> list = new ArrayList< ...
- 痞子衡嵌入式:把玩i.MXRT1062 TencentOS Tiny EVB_AIoT开发板(2) - 在Flash调试及离线启动
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT1062 TencentOS Tiny EVB_AIoT开发板在Flash调试与离线启动. 腾讯 TencentOS 团队于 ...
- 分布式系统(二)——GFS
分布式存储系统的难点 在存储系统中,为了获得巨大的性能加成,一个很自然的想法就是采用分片(sharding),将数据分割存储到多台服务器上,这样获得了更大的存储容量,而且可以并行地从多台服务器读取数据 ...
- Codeforces 913C:Party Lemonade(贪心)
C. Party Lemonade A New Year party is not a New Year party without lemonade! As usual, you are expec ...
- MCU变量加载过程
前言 在开发mcu代码的时候经常会有些疑惑,变量是怎么在编译之后进入单片机的ram区的呢,特别是在使用keil开发的时候.后来在接触gcc编译器和自研的mcu后,终于明白了这个问题.实际上变量编译后被 ...
- A New Defense Against Adversarial Images: Turning a Weakness into a Strength
目录 概 主要内容 准则1 准则2 总策略 Hu S, Yu T, Guo C, et al. A New Defense Against Adversarial Images: Turning a ...
- 一文搞懂Google Navigation Component
一文搞懂Google Navigation Component 应用中的页面跳转是一个常规任务, Google官方提供的解决方案是Android Jetpack的Navigation componen ...
- PostgreSQL数据库安装Version10.5
PostgreSQL数据库安装,基于版本10.5安装, 在Linux系统上使用*.gz二进制压缩包手动安装. 操作系统:Red Hat Enterprise Linux Server release ...
- Windows下安装配置ant
1.ant安装 请从官网下载ant的*.zip格式的安装包, Windows建议下载*.zip版本, Linux建议下载*.gz版本. 2.配置环境变量 解压之后,在Windows中配置环境变量, 在 ...
- xxd命令转换二进制十六进制文件
Linux下的xxd命令,可以把文件在二进制和十六进制之间互相转换. 1.准备需要转换的二进制文件 这个二进制文件可以是任意格式的, 示例中我们创建一个txt格式的二进制文件, vi demo.txt ...