32

Click here to load reader

美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

Embed Size (px)

Citation preview

Page 1: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

基于Openflow/OpenvSwitch的云主机网络安全实践

美团网

邱剑 ([email protected])https://mos.meituan.com

SDCC 2013 北京

美团开放服务(MOS)

Page 2: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

目录美团开放服务

云主机的网络安全

Openflow与OpenvSwitch

解决方案与实现

小结

美团开放服务(MOS)

Page 3: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

美团开放服务

2012年初规划

基于OpenStack架构,部分组件自主开发

2012年9月开始逐步迁移在线服务系统到云主机

2013年5月推出美团开放服务(https://mos.meituan.com),云主机为第一款产品

美团开放服务(MOS)

Page 4: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

目录美团开放服务

云主机的网络安全

Openflow与OpenvSwitch

解决方案与实现

小结

美团开放服务(MOS)

Page 5: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

云主机的网络安全网络基础服务安全

伪造源IP地址

DHCP欺骗

ARP欺骗

外网防火墙

内网网络隔离

More...

VM VM

VM

VMVM VM VM VM VM

VM VM VM VM

VM VM

Internet

VM

��

��

美团开放服务(MOS)

Page 6: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

云平台内网隔离技术

共享内网 - flat network

安全组(Security group)

虚拟私有网络(VPC) - overlay

VLAN隧道技术,如NV-GRE, VXLAN等

美团开放服务(MOS)

Page 7: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

常规武器:ebtables/iptables宿主机加载ebtables/iptables过滤器伪造源IP

DHCP欺骗

外网防火墙

内网隔离?ARP欺骗?

ebtables -A FORWARD -p IPv4 --ip-src 10.168.44.111 -s ! 40:6c:8f:3c:a8:c8 -j DROP

iptables -A FORWARD -p udp --sport 67 -s ! 10.168.44.160 -j DROP

firwall rules ...

美团开放服务(MOS)

Page 8: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

内网隔离

VM VM

VM

VMVM VM VM

VM VM

VM

Internet

VM

��

��

VM

10.168.44.151 10.168.44.160

10.168.44.161

美团开放服务(MOS)

Page 9: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

内网隔离

VM VM

VM

VMVM VM VM

VM VM

VM

Internet

VM

��

��

VM

iptables -A FORWARD -s 10.168.44.151 -d ! 10.168.44.160,10.168.44.161 -j DROP

10.168.44.151 10.168.44.160

10.168.44.161

美团开放服务(MOS)

Page 10: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

内网隔离

VM VM

VM

VMVM VM VM

VM VM

VM

Internet

VM

��

��

VM

iptables -A FORWARD -s 10.168.44.151 -d ! 10.168.44.160,10.168.44.161 -j DROP

iptables -A FORWARD -s 10.168.44.160 -d ! 10.168.44.151,10.168.44.161 -j DROP

iptables -A FORWARD -s 10.168.44.161 -d ! 10.168.44.151,10.168.44.160 -j DROP

10.168.44.151 10.168.44.160

10.168.44.161

美团开放服务(MOS)

Page 11: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

VM VM

VM

VMVM VM VM

VM VM

VM

Internet

VM

��

��

VM

VM

内网隔离

10.168.44.151 10.168.44.160

10.168.44.161 10.168.44.173

美团开放服务(MOS)

Page 12: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

VM VM

VM

VMVM VM VM

VM VM

VM

Internet

VM

��

��

VM

VM

内网隔离

增/删一台虚拟机,需要更新N个节点!

10.168.44.151 10.168.44.160

10.168.44.161 10.168.44.173

美团开放服务(MOS)

Page 13: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

目录美团开放服务介绍

云主机的网络安全

Openflow与OpenvSwitch

解决方案与实现

小结

美团开放服务(MOS)

Page 14: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

传统网络模型

控制层面

数据层面

转发规则

控制层面

数据层面

转发规则

信令

报文

BGP, OSPFARP,static

routes,...

IP, Ethernet, MPLS,GRE,

...

报文按照TCP/IP规则转发

交换机/路由器 交换机/路由器

美团开放服务(MOS)

Page 15: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

Openflow网络模型

控制节点

交换节点

控制通道

信令

报文

BGP, OSPFARP,static

routes,...

& MORE

IP, MPLS, ...

控制节点

交换节点

控制通道

Openflow实现控制层面和数据层面的分离

Openflow控制器 Openflow控制器

Openflow交换机 Openflow交换机

美团开放服务(MOS)

Page 16: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

OpenFlow如何工作

OpenFlow

Openflow控制器(控制节点)

Openflow交换机(交换节点)

流表(flow entries)

Packets状态变化

Packets修改流表

交换逻辑

美团开放服务(MOS)

Page 17: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

Flow Entrypriority=18000 idle_timeout=900 nw_dst=169.254.169.254 action=mod_dst:1.1.1.2,local

匹配规则(Match) 操作(Actions)优先级(Priority) 有效期(Timeout)

报文到达

找到最高优先级的匹配流表

执行指定操作

美团开放服务(MOS)

Page 18: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

flow匹配与操作匹配字段

Ingress port

src/dst MAC

VLAN ID

VLAN priority code

Network layer protocol

src/dst IPv4 address

Transport layer protocol

src/dst Transport port

操作操作

CONTROLLER 送到控制节点

NORMAL按传统二层交换机规则处理

OUTPUT 从指定端口发送

MODIFY 修改报文指定字段

DROP 丢弃

...

美团开放服务(MOS)

Page 19: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

Openflow的工作场景Openflow控制器(控制节点)

Openflow交换机(交换节点)

流表(flow entries)

交换逻辑

1. 下发初始化流表(静态flow)

美团开放服务(MOS)

Page 20: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

Openflow的工作场景Openflow控制器(控制节点)

Openflow交换机(交换节点)

流表(flow entries)

交换逻辑

2. 静态Flow上报packets

Packets in

美团开放服务(MOS)

Page 21: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

Openflow的工作场景Openflow控制器(控制节点)

Openflow交换机(交换节点)

流表(flow entries)

交换逻辑

3. 下发新流表(动态flow)

Packets in

Packets out

美团开放服务(MOS)

Page 22: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

OpenvSwitchNicira公司主导的开源软件交换机(Hypervisor switch),支持Openflow 1.0规范,07年开始开发,高性能,稳定可靠

Tap0 Tap1 Tap2

eth0

OpenvSwitch

VM0 VM1 VM2

br0(local)

宿主机openflowcontroller OpenFlow

美团开放服务(MOS)

Page 23: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

目录美团开放服务

云主机的网络安全

Openflow与OpenvSwitch

解决方案与实现

小结

美团开放服务(MOS)

Page 24: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

防止伪造源IP地址虚拟机启动后,安装静态flow,只允许从指定端口发出IP和MAC匹配的IP报文,丢弃其他IP报文

优先级 匹配规则 操作

10000 in_port=2 ip dl_src=40:6c:8f:3c:a8:c8 nw_src=10.168.44.111 normal

9000 in_port=2 ip dl_src=40:6c:8f:3c:a8:c8 drop

美团开放服务(MOS)

Page 25: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

内网隔离下发静态flow,将所有从虚拟机发出的目的地址为内网的第一个报文转发到控制器

控制器判断是否该报文应该转发,并下发相应动态flow,转发或丢弃该flow的报文

优先级 匹配规则 操作29000 dl_dst=FF:FF:FF:FF:FF:FF controller

28000 ip nw_dst=224.0.0.0/4 controller

25000 ip nw_src=10.168.44.111 nw_dst=10.168.45.123 normal

25000 ip nw_src=10.168.44.111 nw_dst=10.168.44.123 drop

20000 ip nw_dst=10.0.0.0/8 controller

美团开放服务(MOS)

Page 26: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

实现方案

分布式Openflow控制器

一个控制器服务一台宿主机,消除性能瓶颈和单点

实现Openflow 1.0规范主要内容

使用python tornado异步框架实现

美团开放服务(MOS)

Page 27: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

实现效果

彻底隔离

对用户透明,无需设置

除了初次授权有一定延时,其余报文线速转发,无性能损耗

可扩展性好

美团开放服务(MOS)

Page 28: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

问题与对策(1)问题:虚拟机之间初次建立连接时间较长,需要2-3秒

原因:单播第一个报文需要送到控制器处理,同时控制器访问云控制器获取访问授权

解决方案: 控制器从云控制器预取并缓存授权信息,初次连接延时稳定在1秒左右

美团开放服务(MOS)

Page 29: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

问题与对策(2)问题:用户扫描IP地址段,导致控制器DoS

原因:用户短时间内新建大量连接,导致大量报文发送到控制器

解决方案:对上报控制器报文进行流控,限制每虚拟机端口的packet上报速率,防止单台虚拟机过度占用Openflow控制器的处理能力

美团开放服务(MOS)

Page 30: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

目录美团开放服务

云主机的网络安全

Openflow与OpenvSwitch

解决方案与实现

小结

美团开放服务(MOS)

Page 31: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

小结Openflow/OpenvSwitch提供了一种全新的网络控制的方法和手段

借助动态流表,可以实现云主机内网隔离等高级功能

实践中采用分布式架构、限速、缓存等技术手段克服潜在的性能和可靠性问题

美团开放服务(MOS)

Page 32: 美团网技术部 - 基于OpenvSwitch/Openflow的云平台网络安全实践

Q&A

https://mos.meituan.com

MOS- 高性价比云主机