13.12. 管理防火墙规则
防火墙规则在部署过程中自动应用到 overcloud 节点,并仅公开 OpenStack 正常工作所需的端口。您可以根据需要指定额外的防火墙规则。例如,要为 Zabbix 监控系统添加规则:
注意
如果没有设置 action 参数,则结果将 接受。您只能将 action 参数设置为 drop、insert 或 append。
您还可以添加限制访问的规则。规则定义中使用的数字将决定规则的优先级。例如,Rabx 的规则号默认为 109。如果要 restrainit,请将其切换为使用较低值:
在本例中,098 和 099 是任意选择的数字,这些数字低于 RabbitMQ 的规则编号 109。要确定规则的数字,您可以检查相应节点上的 iptables 规则;对于 RabbitMQ,您要检查控制器:
iptables-save [...] -A INPUT -p tcp -m multiport --dports 4369,5672,25672 -m comment --comment "109 rabbitmq" -m state --state NEW -j ACCEPT
iptables-save
[...]
-A INPUT -p tcp -m multiport --dports 4369,5672,25672 -m comment --comment "109 rabbitmq" -m state --state NEW -j ACCEPT
或者,您还可以从 puppet 定义中提取端口要求。例如,RabbitMQ 的规则存储在 puppet/services/rabbitmq.yaml 中:
可以为规则设置以下参数:
-
dport:与规则关联的目标端口。 -
sport:与规则关联的源端口。 -
proto:与规则关联的协议。默认为 tcp -
action:与规则关联的操作策略。默认为 INSERT,并将 jump 设为 ACCEPTS。 -
State:与规则关联的状态阵列。默认为 [NEW] -
source: 与规则关联的源 IP 地址。 -
接口:与规则关联的网络接口。 -
链:与规则关联的链。默认为 INPUT -
目的地:与规则关联的目的地 cidr。