035-OpenStack 关闭安全组

OpenStack Neutron的安全组默认会对每个网口开启MAC/IP过滤功能(防arp欺骗),不是该网口的MAC/IP发出的包会被宿主机丢弃。这种限制会导致vNF的上行网口转发的数据包被丢弃,无法到达vRouter。关闭安全组有两种方法

第一种是整体关闭

# /etc/neutron/plugins/ml2/openvswitch_agent.ini
# /etc/neutron/plugins/ml2/linuxbridge_agent.ini
firewall_driver=None

整体关闭的弊端是所有的端口不在受安全组保护,私有云尚且可以,公有云会带来安全隐患

局部关闭

OpenStack Neutron的MAC/IP过滤是利用宿主机的iptables实现的,因此可以通过修改iptables配置来达到局部关闭的效果,具体步骤如下:

为每个租户创建完毕vNF后,从后台进入宿主机,找到对应网口的tap设备,记下tap后面的id,例如sc5695d00-9。

iptables --line-numbers -nvL | grep ${id}

查看对应的条目

利用iptables -D ...删除掉对应条目

另一种比较优雅的局部关闭方法是使用OpenStack Cli,可以关闭指定的port的安全组:

opnestack port set --no-security-group <port>
openstack port set --disable-port-security <port>

也可以为port添加允许通过的MAC/IP

openstack port set --allowed-address ip=address=<ip-address>, mac-address=<mac-address> <port>

原文地址:https://www.cnblogs.com/xuefy/p/11229831.html