前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Web应用实践:如何配置一个完整链路的Web服务

Web应用实践:如何配置一个完整链路的Web服务

原创
作者头像
缪应厅
修改2021-06-21 16:03:12
1.7K0
修改2021-06-21 16:03:12
举报
文章被收录于专栏:腾讯云安全专家服务

背景

常常遇到用户的web服务配置了多个节点的情况下,配置无法访问,根本原因是用户没有理解http(https)的工作原理

问题说明

多个用户遇到配置好了Web服务,但是访问的时候提示400错误

简述http(s)工作原理

https抓包概览

https的工作原理网上资料比较多,这里就不赘述,本文通过抓取网络包的方式,介绍交互过程

https整体交互过程
https整体交互过程

http交互细节

http请求格式
http请求格式

发送的请求包中包含Host字段,用于匹配web服务器中(nginx为例)的server_name字段,同时也带了request相关参数、用户使用的客户端等信息

http跳转https

http跳转https回包格式
http跳转https回包格式

http请求跳转到https时,会回复一个302的包,并带上Location字段说明需要跳转到的地址,http之上携带具体的页面内容。

收到跳转地址后,会跟新地址进行一轮

https客户端发送Client Hello

https无法像http一样携带一个明文的Host,因此需要增加扩展SNI,标识访问的域名,用于web服务器选择对应的server_name

完成https交互后,就开始数据的请求和返回。

如果需要完成Web服务的配置,需要理解访问过程中域名的发送方式

Web服务器配置

nginx默认https配置
nginx默认https配置

服务器接收客户端发送过来的Host或者SNI的server_name字段,选择不同的服务器

常见架构及配置

架构

以下按照常见链路,对配置做说明

CDN配置

CDN配置说明
CDN配置说明

1、源站地址可以填IP或者域名,如果填域名,也会直接解析成IP,不做其他作用,示例中的地址是下一级(WAF)配置完成后的CNAME,见下一章节。

2、回源域名:对应源站Web服务的server_name字段,如果是WAF,则是配置的域名

注意:

①如果有多个节点,每个节点的回源域名,都需要统一,这个也是用户配置过程中出错较多的

②CDN要增加WAF功能,可以使用SCDN,见链接https://console.cloud.tencent.com/cdn/scdn,这里不再赘述

WAF

WAF配置的时候会强制要求输入域名,回源原理与CDN相似,如果接入代理,需要勾选代理情况为是

CLB

CLB配置
CLB配置

CLB需要创建监听器,然后添加转发规则,转发规则域名写waftest.xxx.com

API网关

API网关自定义域名
API网关自定义域名

API网关需要配置自定义域名

COS

cos可以在cdn直接配置回源,也可以自定义,本次案例中使用自定义

COS自定义源站
COS自定义源站

cos可以如果需要通过域名访问,需要自定义源站域名,操作如上图

高防包/高防IP

高防包可以直接选择绑定WAF

高防IP的配置原理相同,不再赘述。

总结

其实配置Web服务,理解了http需要发送Host或者server_name,配置的时候区分好回源地址和域名,基本上所有常见的Web服务配置都大同小异。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 背景
  • 问题说明
  • 简述http(s)工作原理
    • https抓包概览
      • http交互细节
        • http跳转https
          • https客户端发送Client Hello
            • Web服务器配置
            • 常见架构及配置
              • 架构
                • CDN配置
                  • WAF
                    • CLB
                      • API网关
                        • 高防包/高防IP
                        • 总结
                        相关产品与服务
                        Web 应用防火墙
                        腾讯云 Web 应用防火墙(Web Application Firewall,WAF)帮助腾讯云内及云外用户应对 Web 攻击、入侵、漏洞利用、挂马、篡改、后门、爬虫等网站及 Web 业务安全防护问题。企业通过部署腾讯云 WAF 服务,将 Web 攻击威胁压力转移到腾讯云 WAF 防护集群节点,分钟级获取腾讯 Web 业务防护能力,为网站及 Web 业务安全运营保驾护航。
                        领券
                        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档