首先,要明白所谓的默认OpenStack安全组是什么意思,实际上每个项目都有自己的默认组,这是在云管理员在启动新项目时创建的。

 

这些安全组带有标准规则,不允许对该项目中的实例进行访问。 默认OpenStack安全组始终以采用这种方式,因为它直接从OpenStack软件生成。

默认安全组中的标准规则将自动应用于新项目。但是,在应用安全组时,云管理员可以通过命令行界面更改组规则。举例来说,管理员可以使用openstack security group rule create –protocol tcp –dst-port 22 default命令为允许外来Secure Socket Shell的默认安全组添加规则。

在多租户OpenStack环境中,存在多个名为“default”的安全组。在这种情况下,请使用安全组ID而不是安全组名称。云管理员可以使用OpenStack安全组列表来显示所有安全组及其当前分配的名称,见下图。

 

为了以更自动化的方式来管理OpenStack安全组内容,云管理员可以使用Heat模板。如果你通常使用Heat来将配置部署到OpenStack,请使用包含以下示例内容的模板:

 

resources:

default:

type: OS:Neutron:SecurityGroup

properties:

rules:

- protocol: tcp

remote_ip_prefix: 0.0.0.0/0

port_range_min: 22

port_range_max: 22

 

创建一个如上所示的堆栈后,你可以使用openstack stack create -t命令来用它。