Neutron 默认的安全组规则会禁止掉全部从外面访问 instance 的流量。linux
本节咱们会修改安全组的配置,容许 ping 和 ssh instance。
有两种方法能够达到这个目的:vim
1. 修改 “default” 安全组。
2. 为 cirros-vm1 添加新的安全组。安全
这里咱们采用第二种方法。ssh
在安全组列表页面点击按钮。tcp
为安全组命名并点击 “Create Security Group”。
新的安全组 “allow ping & ssh” 建立成功。学习
点击按钮,查看 “allow ping & ssh” 的规则。
测试
系统默认定义了两条规则,运行全部的外出流量。
为清晰起见,能够点击按钮删除这两条规则。spa
点击按钮,添加容许 ping 的规则。ip
“Rule” 选择 “All ICMP”,“Direction” 选择 “Ingress”,而后点击 “Add” 按钮。ci
一样的方式添加 ssh 规则。
在列表中查看添加成功的规则。
接下来设置 cirros-vm1,使用新的安全组。
进入 instance 列表页面,点击 cirros-vm1 下拉操做列表中的 “Edit Security Groups”
能够看到 cirros-vm1 当前使用的安全组为 “default”,可选安全组为 “allow ping & ssh”。
点击安全组 “allow ping & ssh” 后面的 “+” 按钮。
点击 “Save” 保存。
iptables 会当即更新,下面经过 vimdiff 查看 iptables 先后的变化。
“allow ping & ssh” 安全组引入了下面两条 iptables 规则。
做用是运行 ingress 的 ssh 和 ping 流量。
-A neutron-linuxbri-i8bca5b86-2 -p tcp -m tcp --dport 22 -j RETURN
-A neutron-linuxbri-i8bca5b86-2 -p icmp -j RETURN
测试一下,如今可以 ping 和 ssh cirros-vm1 了。
安全组有如下特性:
1. 经过宿主机上 iptables 规则控制进出 instance 的流量。
2. 安全组做用在 instance 的 port 上。
3. 安全组的规则都是 allow,不能定义 deny 的规则。
4. instance 可应用多个安全组叠加使用这些安全组中的规则。
安全组学习完了,下节咱们讨论 Neutron 的另外一个安全机制 -- 虚拟防火墙。