http/https 网络安全应用分析

本文涉及的产品
云防火墙,500元 1000GB
简介:

web服务器是企业中最常受到攻击的对象,关于web服务器的在公司网路的设计与部署是个很值得探讨的话题,我们这这就好好说下。先看图

 

这个是简单的2层web设计,我们先从攻击的角度看主web服务器和应用数据服务器在同一个网段,这意味这攻击者必须首先攻下防火墙或者web服务器,才能与应用数据进行直接通信,也就是说攻击者只要控制了web服务器不费力气就可以控制应用数据服务器(在同一个网段)即使是pvlan也不起作用。我们显然丢失了服务器分段带来的好处,最好的做法是我们把服务器放在防火墙分割的接口上,这样即使是控制了web服务器,他也需要返回防火墙攻击到应用数据服务器,这就是这张拓扑图的设计意义。

内部接口的入站方向

access-list 101 deny   tcp any host 192.0.3.10 eq www
access-list 101 permit tcp 192.168.100.0 0.0.0.255 any eq www
access-list 101 permit tcp 192.168.100.0 0.0.0.255 any eq 443

外部接口的入站方向

access-list 102 permit tcp any host 192.0.2.55 eq www
access-list 102 permit tcp any host 192.0.2.55 eq 443
access-list 102 deny   tcp any host 192.0.3.10 eq www
access-list 102 deny   tcp any host 192.0.3.10 eq 443

p1的入站方向

access-list 103 permit tcp host 192.0.2.55 host 192.0.3.10 eq www
access-list 103 permit tcp host 192.0.2.55 host 192.0.3.10 eq 443
access-list 103 deny   tcp any any
access-list 103 deny   tcp any any eq www
access-list 103 deny   tcp any any eq 443

 

 

p2的入站方向

access-list 104 permit tcp host 192.0.3.10 host 192.0.2.55 eq www
access-list 104 deny   tcp any any eq www
access-list 104 deny   tcp any any eq 443

我们再看下3层web设计案例

 

设计要求:1.只允许外部网络访问web服务器

                   2.允许web服务器访问应用数据服务器

                  3. 应用服务器只响应web服务器的请求

                  4. 允许应用服务器向数据库服务器发送请求

                  5. 数据库服务器只响应应用服务器

                  6.内部网络只可以访问web服务

FW-1外部接口的 in方向

access-list 101 permit tcp any host 192.0.2.53 eq 80
access-list 101 permit tcp any host 192.0.2.53 eq 443
access-list 101 deny tcp  any any eq 80   
access-list 101 deny tcp  any any eq 443 

FW-1边界接口 in 方向
access-list 102 permit tcp host 192.0.2.53 host 192.0.3.3 eq 80
access-list 102 deny tcp any any any  eq 80
access-list 102 deny tcp any any any  eq 443

FW-1内部边界接口的in方向

access-list 103 permit tcp host 192.0.3.3 host 192.0.2.53  eq 80
access-list 103 deny tcp any any eq 80
access-list 103 deny tcp any any eq 80

 

access-list 104 permit tcp host 192.0.3.3 host 192.0.4.25 eq 80
access-list 104 permit tcp host 192.0.3.3 host 192.0.4.25 eq 443
access-list 104 deny tcp  any any eq 80   
access-list 104 deny tcp  any any eq 443

FW-2边界接口的in方向

access-list 105 permit tcp host 192.0.4.25 host 192.0.3.3 eq 80
access-list 105 permit tcp host 192.0.4.25 host 192.0.3.3 eq 443
access-list 105 deny tcp  any any eq 80   
access-list 105 deny tcp  any any eq 443

FW-2内部接口的in方向
access-list 106 permit tcp 10.0.2.0 0.0.0.255 host 192.0.2.5. eq 80
access-list 106 permit tcp 10.0.2.0 0.0.0.255 host 192.0.2.5. eq 443
access-list 106 deny tcp  any any eq 80   
access-list 106 deny tcp  any any eq 443

由于防火墙的自适应性我们在FW-1内部接口,FW-2的外部接口只需打上

access-list 10*deny tcp  any any eq 80   
access-list 10* deny tcp  any any eq 443

上面两个例子只是对http安全的一些设置一个公司或者一个网络不可能只有一台服务器,还有邮件服务器,DNS服务器等,我们只需记住这个方法明白我们需要设置的目的,极其我们需要开设那些服务为那些用户。列出目的条目,我们可以编写出相应的安全策略,这点是作为网络安全工程师所必备的!



本文转自q狼的诱惑 51CTO博客,原文链接:http://blog.51cto.com/liangrui/502760,如需转载请自行联系原作者

相关文章
|
3月前
|
存储 网络协议 算法
从HPACK到多路复用,揭秘HTTP/2如何终结网络拥堵
HTTP/2通过HPACK压缩头部冗余信息,提升传输效率;并利用多路复用技术,在单个TCP连接上并行处理多个请求,避免队头阻塞,显著提升性能。同时支持服务器推送和流优先级设置,优化资源加载体验。
202 7
|
4月前
|
运维 网络协议 安全
为什么经过IPSec隧道后HTTPS会访问不通?一次隧道环境下的实战分析
本文介绍了一个典型的 HTTPS 无法访问问题的排查过程。问题表现为 HTTP 正常而 HTTPS 无法打开,最终发现是由于 MTU 设置不当导致报文被丢弃。HTTPS 因禁止分片,对 MTU 更敏感。解决方案包括调整 MSS 或中间设备干预。
|
6月前
|
JSON 中间件 Go
Go 网络编程:HTTP服务与客户端开发
Go 语言的 `net/http` 包功能强大,可快速构建高并发 HTTP 服务。本文从创建简单 HTTP 服务入手,逐步讲解请求与响应对象、URL 参数处理、自定义路由、JSON 接口、静态文件服务、中间件编写及 HTTPS 配置等内容。通过示例代码展示如何使用 `http.HandleFunc`、`http.ServeMux`、`http.Client` 等工具实现常见功能,帮助开发者掌握构建高效 Web 应用的核心技能。
342 61
|
5月前
|
网络协议 安全 API
WebSocket、Socket、TCP 和 HTTP 的差别与应用场景
WebSocket、Socket、TCP 和 HTTP 是网络通信中的四大“使者”,各具特色:HTTP 适合短时请求,TCP 稳定可靠,Socket 灵活定制,WebSocket 实现实时双向通信。本文用通俗语言解析它们的区别与应用场景,助你为项目选择最合适的通信方式。
1955 3
|
4月前
|
缓存 网络协议 API
HTTP/1.1相较于HTTP/1.0所实现的性能提升点分析。
通过以上的技术改进,HTTP/1.1显著提升了Web的性能和可靠性,同时减少了带宽的使用和服务器的负载。这些特性直到今天仍然是现代Web通信的基础。尽管如今HTTP/2和HTTP/3逐渐取代了旧的协议,以上所述的HTTP/1.1性能提升对所有后续版本仍然有着深远影响。
145 0
|
6月前
|
JSON 编解码 API
Go语言网络编程:使用 net/http 构建 RESTful API
本章介绍如何使用 Go 语言的 `net/http` 标准库构建 RESTful API。内容涵盖 RESTful API 的基本概念及规范,包括 GET、POST、PUT 和 DELETE 方法的实现。通过定义用户数据结构和模拟数据库,逐步实现获取用户列表、创建用户、更新用户、删除用户的 HTTP 路由处理函数。同时提供辅助函数用于路径参数解析,并展示如何设置路由器启动服务。最后通过 curl 或 Postman 测试接口功能。章节总结了路由分发、JSON 编解码、方法区分、并发安全管理和路径参数解析等关键点,为更复杂需求推荐第三方框架如 Gin、Echo 和 Chi。
|
7月前
|
网络协议 API 开发者
分析http.client与requests在Python中的性能差异并优化。
合理地选择 `http.client`和 `requests`库以及在此基础上优化代码,可以帮助你的Python网络编程更加顺利,无论是在性能还是在易用性上。我们通常推荐使用 `requests`库,因为它的易用性。对于需要大量详细控制的任务,或者对性能有严格要求的情况,可以考虑使用 `http.client`库。同时,不断优化并管理员连接、设定合理超时和重试都是提高网络访问效率和稳定性的好方式。
162 19
|
7月前
|
安全 网络协议 Linux
Linux网络应用层协议展示:HTTP与HTTPS
此外,必须注意,从HTTP迁移到HTTPS是一项重要且必要的任务,因为这不仅关乎用户信息的安全,也有利于你的网站评级和粉丝的信心。在网络世界中,信息的安全就是一切,选择HTTPS,让您的网站更加安全,使您的用户满意,也使您感到满意。
197 18
|
8月前
|
XML JSON 网络协议
利用HTTP POST协议实现简单的RPC协议:WireShark抓包分析
通过这种方式,我们可以使用HTTP POST实现简单的RPC协议,并使用WireShark进行抓包分析。这不仅可以帮助我们理解RPC协议的工作原理,也可以帮助我们调试和优化我们的代码。
384 30
|
5月前
|
Web App开发 缓存 数据安全/隐私保护
Django全栈实战:HTTP状态码与业务状态码的分层设计与实战应用
HTTP状态码是服务器响应请求的3位数字代码,分为1xx(信息)、2xx(成功)、3xx(重定向)、4xx(客户端错误)、5xx(服务器错误)。业务状态码则用于描述具体业务逻辑结果,常在响应体中返回。二者在前后端交互中有不同用途和处理方式。本文还介绍了如何在Django项目中设计并使用业务状态码。
436 0