给网站添加安全措施 -- http -> https

2024-03-31 08:28
文章标签 网站 http https 安全措施

本文主要是介绍给网站添加安全措施 -- http -> https,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

快速上手

1、准备:腾讯云http域名、SSL证书、Nginx服务器。
2、在腾讯云平台内-我的域名,找到指定域名后添加解析映射IP。
3、腾讯云上搜索SSL证书,然后申请免费证书(1个工作日内通过)。
4、证书通过后,下载证书(nginx)类型,然后上传到服务器。
总体步骤就是 购买域名->域名解析(映射到服务器IP)->申领ssl证书 ->证书上传到服务器 -> 通过Nginx部署证书 > 然后重启配置即可完成。

	server {#SSL 默认访问端口号为 443listen 443 ssl;#请填写绑定证书的域名server_name www.baidu.com;#请填写上传证书文件的相对路径或绝对路径ssl_certificate /usr/local/www.baidu.com.crt;#请填写上传私钥文件的相对路径或绝对路径ssl_certificate_key /usr/local/www.baidu.com.key;ssl_session_timeout 5m;#请按照以下协议配置ssl_protocols TLSv1.2 TLSv1.3;#请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;ssl_prefer_server_ciphers on;location / {root /home/ruoyi/dist;try_files $uri $uri/ /index.html;index index.html index.htm;}location /my/ {proxy_set_header Host $http_host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header REMOTE-HOST $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_pass http://localhost:8080/;}error_page 500 502 503 504 /50x.html;location = /50x.html {root html;}}

在 CentOS 上生成 SSL 证书,你可以使用 OpenSSL 这个开源库。以下是详细的步骤:

  1. 安装 OpenSSL
    如果你的 CentOS 发行版尚未预装 OpenSSL,你可以使用包管理器来安装它。你可以使用以下命令:
	sudo yum install openssl
  1. 生成私钥
    首先,你需要生成一个私钥。这是一个非常重要的文件,因为它包含了用于加密和解密的密钥。你可以使用以下命令来生成一个 2048 位的 RSA 私钥:
	sudo openssl genrsa -out private.key 2048
  1. 生成证书签名请求(CSR)
    接下来,你需要生成一个证书签名请求(CSR)。CSR 包含了关于你的组织和域名的信息,以及你想要在证书中包含的其他信息。你可以使用以下命令来生成 CSR:
	sudo openssl req -new -key private.key -out certificate.csr
  1. 生成自签名证书
    最后,你可以使用自己的 CSR 来生成一个自签名证书。这意味着你没有提交 CSR 到一个公共的证书颁发机构(CA),而是自己签名了它。你可以使用以下命令来生成自签名证书:
	sudo openssl x509 -req -days 365 -in certificate.csr -signkey private.key -out public.crt

在上面的命令中,-days 365 指定了证书的有效期(一年),-in certificate.csr 指定了 CSR 文件,-signkey private.key 指定了私钥文件,-out public.crt 指定了公钥证书文件的名称和位置。

  1. 测试证书
    你可以使用以下命令来检查证书是否正确生成:
	sudo openssl verify -CAfile public.crt public.crt

如果证书没有问题,你应该看到一条消息表明它已经被成功验证。

以上就是在 CentOS 上使用 OpenSSL 生成 SSL 证书的步骤。记住,虽然自签名证书可以工作,但是它们不被浏览器认为是可信的,因此对于生产环境来说,最好还是向一个公共的 CA 提交 CSR 以获得一个真正的 SSL 证书。

nginx知识

如何确保Nginx配置文件的语法正确性?

	nginx -t

这篇关于给网站添加安全措施 -- http -> https的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/863876

相关文章

使用Python实现快速搭建本地HTTP服务器

《使用Python实现快速搭建本地HTTP服务器》:本文主要介绍如何使用Python快速搭建本地HTTP服务器,轻松实现一键HTTP文件共享,同时结合二维码技术,让访问更简单,感兴趣的小伙伴可以了... 目录1. 概述2. 快速搭建 HTTP 文件共享服务2.1 核心思路2.2 代码实现2.3 代码解读3.

Go语言中最便捷的http请求包resty的使用详解

《Go语言中最便捷的http请求包resty的使用详解》go语言虽然自身就有net/http包,但是说实话用起来没那么好用,resty包是go语言中一个非常受欢迎的http请求处理包,下面我们一起来学... 目录安装一、一个简单的get二、带查询参数三、设置请求头、body四、设置表单数据五、处理响应六、超

如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件

《如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件》本文介绍了如何使用Docker部署FTP服务器和Nginx,并通过HTTP访问FTP中的文件,通过将FTP数据目录挂载到N... 目录docker部署FTP和Nginx并通过HTTP访问FTP里的文件1. 部署 FTP 服务器 (

Qt实现发送HTTP请求的示例详解

《Qt实现发送HTTP请求的示例详解》这篇文章主要为大家详细介绍了如何通过Qt实现发送HTTP请求,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1、添加network模块2、包含改头文件3、创建网络访问管理器4、创建接口5、创建网络请求对象6、创建一个回复对

springMVC返回Http响应的实现

《springMVC返回Http响应的实现》本文主要介绍了在SpringBoot中使用@Controller、@ResponseBody和@RestController注解进行HTTP响应返回的方法,... 目录一、返回页面二、@Controller和@ResponseBody与RestController

nginx生成自签名SSL证书配置HTTPS的实现

《nginx生成自签名SSL证书配置HTTPS的实现》本文主要介绍在Nginx中生成自签名SSL证书并配置HTTPS,包括安装Nginx、创建证书、配置证书以及测试访问,具有一定的参考价值,感兴趣的可... 目录一、安装nginx二、创建证书三、配置证书并验证四、测试一、安装nginxnginx必须有"-

nginx部署https网站的实现步骤(亲测)

《nginx部署https网站的实现步骤(亲测)》本文详细介绍了使用Nginx在保持与http服务兼容的情况下部署HTTPS,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值... 目录步骤 1:安装 Nginx步骤 2:获取 SSL 证书步骤 3:手动配置 Nginx步骤 4:测

详解Java如何向http/https接口发出请求

《详解Java如何向http/https接口发出请求》这篇文章主要为大家详细介绍了Java如何实现向http/https接口发出请求,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 用Java发送web请求所用到的包都在java.net下,在具体使用时可以用如下代码,你可以把它封装成一

Node.js 中 http 模块的深度剖析与实战应用小结

《Node.js中http模块的深度剖析与实战应用小结》本文详细介绍了Node.js中的http模块,从创建HTTP服务器、处理请求与响应,到获取请求参数,每个环节都通过代码示例进行解析,旨在帮... 目录Node.js 中 http 模块的深度剖析与实战应用一、引言二、创建 HTTP 服务器:基石搭建(一

Python如何实现 HTTP echo 服务器

《Python如何实现HTTPecho服务器》本文介绍了如何使用Python实现一个简单的HTTPecho服务器,该服务器支持GET和POST请求,并返回JSON格式的响应,GET请求返回请求路... 一个用来做测试的简单的 HTTP echo 服务器。from http.server import HT