麒麟操作系统服务架构保姆级教程(十一)https配置

  如果你想拥有你从未拥有过的东西,那么你必须去做你从未做过的事情

在运维工作中,加密和安全的作用是十分重要的,如果仅仅用http协议来对外展示我们的网站,过一段时间就会发现网站首页被人奇奇怪怪的篡改了,本来好好的博客论坛,被人篡改的五毒俱全,这个时候我们的网站就需要加密访问了,这个加密不是说要密码才可以查看网站,而是通过https协议进行加密访问,客户端进行访问的时候会进行加密和解密,防止我们的web服务被篡改,今天咱们介绍一下https加密访问~~~~

目录

一、http被劫持演示

1、配置WEB01服务器为正确的网站

​编辑

2、配置WEB02服务器为劫持网站 类似黑客劫持

3、修改网页中的内容 配置劫持内容

二、https的优势

三、配置https

1、配置之前访问一下方便对比不同

​编辑

解决无法识别https,css失效的问题


💬欢迎交流:在学习过程中如果你有任何疑问或想法,欢迎在评论区留言,我们可以共同探讨学习的内容。你的支持是我持续创作的动力!

👍点赞、收藏与推荐:如果你觉得这篇文章对你有所帮助,请不要忘记点赞、收藏,并分享给更多的小伙伴!你们的鼓励是我不断进步的源泉!

🚀推广给更多人:如果你认为这篇文章对你有帮助,欢迎分享给更多对Linux感兴趣的朋友,让我们一起进步,共同提升!

一、http被劫持演示

1、配置WEB01服务器为正确的网站

[root@web01 conf.d]#vim static.conf
server {listen 80;server_name www.static.com;location / {root /code/test;index index.html;}       
}                                               
"static.conf" 9L, 107C written 
[root@web01 conf.d]#nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@web01 conf.d]#systemctl restart nginx
[root@web01 conf.d]#cat /code/test/index.html
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>我是title</title>
</head>
<body>
<article>
<header><h1>小屁的博客</h1><p>创建时间:<time pubdate="pubdate">2020/5/20</time></p>
</header><p><b>Aticle</b>第一次用h5写文章,好他*的紧张...</p><footer><p><small>版权所有!</small></p></footer></article>
</body>
</html>

2、配置WEB02服务器为劫持网站 类似黑客劫持

[root@web02 conf.d]#cat static.conf 
server {listen 80;server_name www.static.com;location / {proxy_pass http://10.0.0.7;proxy_set_header Host $http_host;}
}
[root@web02 conf.d]#nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@web02 conf.d]#systemctl restart nginx

3、修改网页中的内容 配置劫持内容

[root@web02 conf.d]#cat static.conf 
server {listen 80;server_name www.static.com;
location / {proxy_pass http://10.0.0.7;proxy_set_header Host $http_host;sub_filter '<h1>小屁的博客' '<h1>狗屁的博客 ';sub_filter '<b>Aticle</b>第一次用h5写文章,好他*的紧张...' '<img src="https://bbsfiles.vivo.com.cn/vivobbs/attachment/forum/201601/06/113550pg0zwb1yhbewv774.jpg">';sub_filter '<small>版权所有' ' <small>开源';}
}
​
​
小屁为了文章可以过审修改的还是比较含蓄的,有些不法的公司改的特别离谱,五毒俱全

二、https的优势

https和http的区别以及https的优势
区别
协议名称及含义:
HTTP(超文本传输协议):是互联网上应用最为广泛的一种网络协议,用于从万维网服务器传输超文本到本地浏览器,它是一种无状态、无连接的应用层协议,默认使用端口 80。
HTTPS(超文本传输安全协议):是以安全为目标的 HTTP 通道,简单讲是 HTTP 的安全版,在 HTTP 的基础上通过传输加密和身份认证保证了传输过程的安全性,默认使用端口 443。
数据传输安全性:
HTTP:数据传输是明文的,这意味着在客户端(如浏览器)和服务器之间传输的数据,比如登录密码、账户信息等敏感内容,很容易被第三方截获并解读,安全性较差。
HTTPS:采用了 SSL/TLS(安全套接层协议 / 传输层安全协议)加密技术,对传输的数据进行加密处理,即使数据被截取,第三方在没有解密密钥的情况下也无法获取其中的真实内容,极大地保障了数据的保密性和完整性。
身份认证方面:
HTTP:没有提供有效的身份认证机制,客户端难以确认与之通信的服务器是否是真正合法的目标服务器,容易遭受中间人攻击等安全威胁,攻击者可以伪装成服务器来获取用户信息。
HTTPS:在建立连接时,服务器会向客户端提供由权威证书颁发机构(CA)颁发的数字证书,通过验证该证书,客户端可以确认服务器的真实身份,确保是和合法的目标服务器进行通信,防止中间人冒充服务器的情况出现。
性能表现:
HTTP:由于不需要进行加密、解密以及证书验证等额外操作,在数据传输时相对来说性能开销较小,传输速度理论上可能更快一些,但在如今安全要求高的环境下,其安全性缺陷限制了它的使用场景。
HTTPS:加密和解密过程以及证书验证等操作会消耗一定的计算资源,导致其性能相比 HTTP 会稍低一点,比如会增加一定的响应时间、占用更多的服务器资源等,但随着计算机性能的提升以及相关技术的优化,这种性能影响在很多情况下是可以接受的。
HTTPS 的优势
安全性高:通过加密传输数据和身份认证,能有效防止数据被窃取、篡改以及中间人攻击等,保护用户的隐私信息(如账号、密码、交易记录等),特别适用于涉及敏感信息传输的场景,像网上银行、电子商务平台、在线支付等领域。
提升信任度:网站使用 HTTPS 协议,浏览器地址栏会显示安全锁图标等标识,让用户直观地感受到网站是安全可靠的,有助于提升用户对网站的信任程度,进而提高用户的留存率和参与度,对于商业网站来说这一点尤为重要。
符合搜索引擎优化(SEO)要求:主流搜索引擎(如谷歌、百度等)都更倾向于将采用 HTTPS 协议的网站排名靠前,这意味着网站使用 HTTPS 有助于提升在搜索引擎结果页面中的排名,从而获得更多的流量和曝光机会。
满足合规需求:在很多行业领域,如金融、医疗、政务等,有严格的安全法规和数据保护条例要求,使用 HTTPS 协议是满足这些合规性要求的必要条件之一,能避免因违反相关规定而面临的法律风险。

三、配置https

1、配置之前访问一下方便对比不同

1.生成证书
[root@web01 ~]#mkdir -p /etc/nginx/ssl_key
[root@web01 ~]#cd /etc/nginx/ssl_key
[root@web01 ssl_key]#
[root@web01 ssl_key]#openssl genrsa -idea -out server.key 2048
Generating RSA private key, 2048 bit long modulus
..................+++
................+++
e is 65537 (0x10001)
Enter pass phrase for server.key:    
# 输入1234
Verifying - Enter pass phrase for server.key: # 输入1234
2.配置证书
[root@web01 ssl_key]#openssl req -days 36500 -x509 \
> -sha256 -nodes -newkey rsa:2048 -keyout server.key -out server.crt
Country Name (2 letter code) [XX]:CN
State or Province Name (full name) []:BJ
Locality Name (eg, city) [Default City]:bj
Organization Name (eg, company) [Default Company Ltd]:yunzhongzi
Organizational Unit Name (eg, section) []:etiantian
Common Name (eg, your name or your server's hostname) []:www.wp.com
Email Address []:123@qq.com
[root@web01 ssl_key]#pwd
/etc/nginx/ssl_key
[root@web01 ssl_key]#ll
total 8
-rw-r--r-- 1 root root 1379 Apr 25 10:08 server.crt     
-rw-r--r-- 1 root root 1704 Apr 25 10:08 server.key     
[root@web01 conf.d]#cat wp.conf 
server {listen 443 ssl;ssl_certificate   ssl_key/server.crt;ssl_certificate_key  ssl_key/server.key;server_name www.wp.com;root /code/wp;location / {index index.php index.html;
}location ~ \.php$ {fastcgi_pass 127.0.0.1:9000;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;include fastcgi_params;}
}
server {listen 80;server_name www.wp.com;return 302 https://$server_name$request_uri;
}
[root@web01 conf.d]#nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@web01 conf.d]#systemctl restart nginx
​
配置lb01
主机名 外网IP(NAT)   内网IP(LAN)   角色
lb01    
10.0.0.5    
web02   
10.0.0.8    
172.16.1.5  负载均衡    
配置证书 https172.16.1.8  web服务器   httpweb03   
10.0.0.9    
172.16.1.9  web服务器   http# 需要还原WEB01的https的配置为http
负载均衡配置:
[root@lb01 conf.d]#cat wp.conf 
upstream web {server 10.0.0.7;server 10.0.0.8;
}
server {listen 443 ssl;ssl_certificate   ssl_key/server.crt;ssl_certificate_key  ssl_key/server.key;server_name www.wp.com;location / {proxy_pass http://web;include proxy_params;}
}
server {listen 80;server_name www.wp.com;return 302 https://$server_name$request_uri;
}
[root@lb01 conf.d]#scp -r 172.16.1.7:/etc/nginx/ssl_key ../
[root@lb01 conf.d]#ll ../ssl_key/
total 8-rw-r--r-- 1 root root 1379 Apr 25 10:24 server.crt-rw-r--r-- 1 root root 1704 Apr 25 10:24 server.key
[root@lb01 conf.d]#nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@lb01 conf.d]#systemctl restart nginx

解决无法识别https,css失效的问题

[root@web02 conf.d]#vim wp.conf 
server {listen 80;server_name www.wp.com;root /code/wordpress;location / {index index.php index.html;}location ~ \.php$ {fastcgi_pass 127.0.0.1:9000;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;include fastcgi_params;fastcgi_param HTTPS on;}
}
#注:web01,web02都进行修改,然后nginx -t验证语法问题,systemctl restart nginx重启服务|nginx -s reload重载nginx
搞定lb01的代码之后,web01web02的代码重定向取消;代码恢复到原来

https配置成功~~~~

今天的https就介绍到这里,明天介绍keepalived高可用~~~


想成为大佬,就要从小白开始,从0开始,一点一点的积累,慢慢成长,明天你就是大佬!!想学习更多麒麟操作系统的知识,关注小屁,让你成为运维老鸟~~~~~ 

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

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

相关文章

RabbitMQ---消息确认和持久化

&#xff08;一&#xff09;消息确认 1.概念 生产者发送消息后&#xff0c;到达消费端会有以下情况&#xff1a; 1.消息处理成功 2.消息处理异常 如果RabbitMQ把消息发送给消费者后就把消息删除&#xff0c;那么就可能会导致&#xff0c;消息处理异常想要再获取这条消息的时…

Linux:System V - 共享内存

1.System V共享内存的原理 通过为用户提供系统调用接口&#xff0c;让用户可以申请一块空间&#xff0c;进程A/B也可以通过系统调用接口将创建好的内存通过页表映射进进程的地址空间。完成让不同的两个进程看见同一份资源的目的。如果未来不想继续通信&#xff0c;取消进程和内…

SpringBoot错误码国际化

先看测试效果&#xff1a; 1. 设置中文 2.设置英文 文件结构 1.中文和英文的错误消息配置 package com.ldj.mybatisflex.common;import lombok.Getter;/*** User: ldj* Date: 2025/1/12* Time: 17:50* Description: 异常消息枚举*/ Getter public enum ExceptionEnum {//…

道旅科技借助云消息队列 Kafka 版加速旅游大数据创新发展

作者&#xff1a;寒空、横槊、娜米、公仪 道旅科技&#xff1a;科技驱动&#xff0c;引领全球旅游分销服务 道旅科技 &#xff08;https://www.didatravel.com/home&#xff09; 成立于 2012 年&#xff0c;总部位于中国深圳&#xff0c;是一家以科技驱动的全球酒店资源批发商…

Solidity01 Solidity极简入门

一、Solidity 简介 Solidity 是一种用于编写以太坊虚拟机&#xff08;EVM&#xff09;智能合约的编程语言。我认为掌握 Solidity 是参与链上项目的必备技能&#xff1a;区块链项目大部分是开源的&#xff0c;如果你能读懂代码&#xff0c;就可以规避很多亏钱项目。 Solidity …

如何使用WPS的JS宏实现Word表格的自动编号

如何使用WPS的JS宏实现Word表格的自动编号&#xff1f;如下图&#xff0c;想要给表格的编号列中添加序号。 使用WPS的JS宏可以实现自动编号&#xff0c;代码如下&#xff1a; n Selection.Tables.Item(1).Rows.Count;for(i 2;i<n;i){Selection.Tables.Item(1).Cell(i,1).…

Python在多个Excel文件中找出缺失数据行数多的文件

本文介绍基于Python语言&#xff0c;针对一个文件夹下大量的Excel表格文件&#xff0c;基于其中每一个文件内、某一列数据的特征&#xff0c;对其加以筛选&#xff0c;并将符合要求与不符合要求的文件分别复制到另外两个新的文件夹中的方法。 首先&#xff0c;我们来明确一下本…

【Linux】应用层自定义协议与序列化

&#x1f308; 个人主页&#xff1a;Zfox_ &#x1f525; 系列专栏&#xff1a;Linux 目录 一&#xff1a;&#x1f525; 应用层 &#x1f98b; 再谈 "协议"&#x1f98b; 网络版计算器&#x1f98b; 序列化 和 反序列化 二&#xff1a;&#x1f525; 重新理解 read、…

数字化贷款管理:助贷系统软件为贷款中介带来的五大改变

随着金融行业的数字化转型&#xff0c;贷款中介的业务模式也在不断创新。助贷系统作为数字化管理的核心工具&#xff0c;正在为贷款中介带来深刻的变革。本文将从五个方面探讨助贷系统软件如何改变贷款中介行业的管理模式&#xff0c;提升业务效率&#xff0c;降低运营成本。乐…

MIAOYUN信创云原生项目亮相西部“中试”生态对接活动

近日&#xff0c;以“构建‘中试’生态&#xff0c;赋能科技成果转化”为主题的“科创天府智汇蓉城”西部“中试”生态对接活动在成都高新区菁蓉汇隆重开幕。活动分为成果展览、“中试”生态主场以及成果路演洽谈对接三大板块。在成果展览环节&#xff0c;成都元来云志科技有限…

一文简要了解为什么需要RAG、核心原理与应用场景

欢迎来到AI应用探索&#xff0c;这里专注于探索AI应用。 一、为什么需要RAG&#xff0c;它解决了哪些问题 在自然语言处理领域&#xff0c;生成式预训练模型&#xff08;如GPT&#xff09;已经展示了强大的文本生成能力。然而&#xff0c;这些模型有以下局限性&#xff1a; 知…

gametime

gametime 一、查壳 无壳&#xff0c;32位 二、IDA分析 先看看main 妈呀&#xff0c;好多函数&#xff0c;脑子有点乱 先运行下EXE看看有什么突破口没 可以看出是游戏&#xff0c;明显是看你的输入对不对&#xff0c;来通关的&#xff0c;所以有关判定的条件或者函数是解题…

基于机器学习随机森林算法的个人职业预测研究

1.背景调研 随着信息技术的飞速发展&#xff0c;特别是大数据和云计算技术的广泛应用&#xff0c;各行各业都积累了大量的数据。这些数据中蕴含着丰富的信息和模式&#xff0c;为利用机器学习进行职业预测提供了可能。机器学习算法的不断进步&#xff0c;如深度学习、强化学习等…

【Linux】Socket编程-TCP构建自己的C++服务器

&#x1f308; 个人主页&#xff1a;Zfox_ &#x1f525; 系列专栏&#xff1a;Linux 目录 一&#xff1a;&#x1f525; Socket 编程 TCP &#x1f98b; TCP socket API 详解&#x1f98b; 多线程远程命令执行&#x1f98b; 网络版计算器&#xff08;应用层自定义协议与序列化…

C++(二十一)

前言&#xff1a; 本文承接上文&#xff0c;将详细讲解指针概念。 一&#xff0c;通过指针了解变量的数值。 在将变量地址存入指针后&#xff0c;从指针反推也可以知道原变量的值&#xff0c;若想进行反退&#xff0c;就需要使用间接引用运算符&#xff1a;*。 语法&#x…

Windows图形界面(GUI)-QT-C/C++ - Qt List Widget详解与应用

公开视频 -> 链接点击跳转公开课程博客首页 -> ​​​链接点击跳转博客主页 目录 QListWidget概述 使用场景 常见样式 QListWidget属性设置 显示方式 (Display) 交互行为 (Interaction) 高级功能 (Advanced) QListWidget常见操作 内容处理 增加项目 删除项目…

一文了解如何使用 DBeaver 管理 DolphinDB

在日常的数据开发、分析和数据库运维中&#xff0c;一款优秀的 IDE 能够极大地提升工作效率。DBEaver 是一款由 Java 编写的一站式跨平台连接器&#xff0c;其社区版本已能支持连接近百种数据库&#xff0c;受到广大开发者的喜爱。近期。DolphinDB 与 DBeaver 团队共同努力&…

CSRF攻击XSS攻击

概述 ​在 HTML 中&#xff0c;<a>, <form>, <img>, <script>, <iframe>, <link> 等标签以及 Ajax 都可以指向一个资源地址&#xff0c;而所谓的跨域请求就是指&#xff1a;当前发起请求的域与该请求指向的资源所在的域不一样。这里的域指…

【机器学习实战入门】使用 Pandas 和 OpenCV 进行颜色检测

Python 颜色检测项目 今天的项目将非常有趣和令人兴奋。我们将与颜色打交道&#xff0c;并在项目过程中学习许多概念。颜色检测对于识别物体来说是必要的&#xff0c;它也被用作各种图像编辑和绘图应用的工具。 什么是颜色检测&#xff1f; 颜色检测是检测任何颜色名称的过程…

vue2 web 多标签输入框 elinput是否当前焦点

又来分享一点点工作积累及解决方案 产品中需要用户输入一些文字后按下回车键生成标签来显示在页面上&#xff0c;经过尝试与改造完成如下&#xff1a; <template><div class"tags-view" click"beginInput"><el-tag :key"index" …