在OpenStack中绕过或停用security group (iptables)
眼下。OpenStack中默认採用了security group的方式。用系统的iptables来过滤进入vm的流量。这个本意是为了安全,可是往往给调试和开发带来一些困扰。
因此,暂时性的禁用它能够排除由于iptables规则错误问题带来的网络不通等情况。
在H版本号中,能够通过改动neutron plugin.ini中的firewall配置来禁用security group。
但在I版本号中。类似的操作仅仅会让vm出来的流量都无法通过安全网桥。
因此,在正常配置启用security group的情况下,我们须要想办法来让流量绕过它。
通过《深入理解OpenStack中的网络实现》中的分析。我们知道。从vm出来的流量被过滤的规则在 neutron-openvswi-o9LETTERID链上。而到vm里面的规则在neutron-openvswi-i9LETTERID链上。
因此,我们仅仅须要相应在链上加入同意通过的规则就可以。
首先。查看vm出来的安全规则链上的规则
iptables -nvL neutron-openvswi-o9LETTERID
普通情况下,类似于以下几条
Chain neutron-openvswi-o4430511a-6 (2 references)
pkts bytes target prot opt in out source destination
6 1968 RETURN
udp -- * *
0.0.0.0/0 0.0.0.0/0
udp
spt:68
dpt:67
1437 121K neutron-openvswi-s4430511a-6 all -- * *
0.0.0.0/0 0.0.0.0/0
0 0 DROP udp -- * *
0.0.0.0/0 0.0.0.0/0
udp
spt:67
dpt:68
0 0 DROP all -- * *
0.0.0.0/0 0.0.0.0/0 state INVALID
278 23352 RETURN all -- * *
0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
1159 97356 RETURN all -- * *
0.0.0.0/0 0.0.0.0/0
0 0 neutron-openvswi-sg-fallback all -- * *
0.0.0.0/0 0.0.0.0/0
可见,默认同意通过的流量仅仅有源port为67而目标port68的dhcp请求流量,另外就是neutron-openvswi-s4430511a-6链中,会对源地址和源mac进行检查,假设跟分配到的一致,则同意通过。
比如,我们让全部的ping包(无论源地址和源mac)都同意从vm发出来,则须要加入
iptables -I neutron-openvswi-o9LETTERID -p icmp -j RETURN
更简单粗暴的,同意全部的从vm出来的流量。不进行不论什么检查。则须要加入
iptables -I neutron-openvswi-o9LETTERID -j RETURN
须要注意的是,这样加入的规则,不在neutron的维护中。因此,过一段时间后会被清理掉,这时候就须要又一次加入。
在OpenStack中绕过或停用security group (iptables)的更多相关文章
- DPDK在OpenStack中的实现
随着云计算与大数据的快速发展,其对数据中心网络的性能和管理提出了更高的要求,但传统云计算架构存在多个I/O瓶颈,由于云平台基本上是采用传统的X86服务器加上虚拟化方式组建,随着40G.100G高速网卡 ...
- Neutron 理解 (9): OpenStack 是如何实现 Neutron 网络 和 Nova虚机 防火墙的 [How Nova Implements Security Group and How Neutron Implements Virtual Firewall]
学习 Neutron 系列文章: (1)Neutron 所实现的虚拟化网络 (2)Neutron OpenvSwitch + VLAN 虚拟网络 (3)Neutron OpenvSwitch + GR ...
- OpenStack中VNC协议实现多屏共享(多屏不踢访问)
OpenStack中VNC协议实现多屏共享 by 无若 libvirt设置基本说明: <devices> <graphics type='sdl' display=':0.0 ...
- OpenStack中Keystone的基本概念理解
原文http://www.kankanews.com/ICkengine/archives/10788.shtml Keystone简介 Keystone(OpenStack Identity Ser ...
- openstack中eventlet使用
openstack中使用eventlet的协程来实现并发. 第一种,使用eventlet.GreenPool来管理绿色线程 如l3-agent在开启了8个绿色线程来处理router消息 def _pr ...
- 探索 OpenStack 之(14):OpenStack 中 RabbitMQ 的使用
本文是 OpenStack 中的 RabbitMQ 使用研究 两部分中的第一部分,将介绍 RabbitMQ 的基本概念,即 RabbitMQ 是什么.第二部分将介绍其在 OpenStack 中的使用. ...
- openstack中彻底删除计算节点的操作记录
在使用openstack的过程中,我们经常会添加好几台计算节点来部署虚拟机,在后续使用中由于某些原因,一些计算节点出现了问题,需要将这些出了问题的计算节点从openstack的控制节点中踢出去!但是很 ...
- OpenStack中给wsgi程序写单元測试的方法
在 OpenStack 中, 针对web应用, 有三种方法来写单元測试 1) 使用webob生成模拟的request from __future__ import print_function imp ...
- openstack中iptables的使用
openstack中nova使用了iptables实现其网络相关功能,乍看openstack的iptables表比较复杂,整理了一下iptables的filter表和nat表的结构,以一个all in ...
随机推荐
- 算法学习记录-图——应用之拓扑排序(Topological Sort)
这一篇写有向无环图及其它的应用: 清楚概念: 有向无环图(DAG):一个无环的有向图.通俗的讲就是从一个点沿着有向边出发,无论怎么遍历都不会回到出发点上. 有向无环图是描述一项工程或者系统的进行过程的 ...
- HTML与XML的区别
什么是HTML HTML的全拼是Hypertext Markup Language, 中文也就是超文本链接标示语言.HTML(HyperTextMark-upLanguage)即超文本标记语言,是WW ...
- JSP标签:jsp内置标签、jstl标签、自定义标签
一.jsp标签的分类: 1)内置标签(动作标签): 不需要在jsp页面导入标签 2)jstl标签: 需要在jsp页面中导入标签 3)自定义标签 : 开发者自行定义,需要在jsp页面导入标签 1 ...
- python3--__call__拦截调用
__call__拦截调用 当实例调用时,使用__call__方法.不,这不是循环定义:如果定义了,Python就会为实例应用函数调用表达式运行__call__方法.这样可以让类实例的外观和用法类似于函 ...
- Leetcode 402.移掉k位数字
移调k位数字 给定一个以字符串表示的非负整数 num,移除这个数中的 k 位数字,使得剩下的数字最小. 注意: num 的长度小于 10002 且 ≥ k. num 不会包含任何前导零. 示例 1 : ...
- Leetcode 392.判断子序列
判断子序列 给定字符串 s 和 t ,判断 s 是否为 t 的子序列. 你可以认为 s 和 t 中仅包含英文小写字母.字符串 t 可能会很长(长度 ~= 500,000),而 s 是个短字符串(长度 ...
- ecmascript6入门
ECMAScript 6 入门 阮一峰
- lvs+keepalive主从和主主架构
下面配置主从 1)关闭SELinux和防火墙 vi /etc/sysconfig/selinux SELINUX=disabled setenforce 临时关闭SELinux,文件配置后,重启生效 ...
- PAT天梯赛练习题——L3-008. 喊山(邻接表+BFS)
L3-008. 喊山 时间限制 150 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 喊山,是人双手围在嘴边成喇叭状,对着远方高山发出“喂—喂喂 ...
- 如何构建一个flink sql平台
在本系列前面的文章中,简单介绍了一下Ignite的机器学习网格,下面会趁热打铁,结合一些示例,深入介绍Ignite支持的一些机器学习算法. 如果要找合适的数据集,会发现可用的有很多,但是对于线性回归来 ...