Iptables模块
docker>Evan2017年8月4日 (五) 12:39的版本
pre
为SALT开启防火墙配置 http://docs.saltstack.cn/topics/tutorials/firewall.html http://yango.iteye.com/blog/2264641 在主控端添加(所有 minion)TCP 4505,TCP 4506 的规则,而在被控端无须配置防火墙,原理是被控端直接与主控端的zeromp建立链接。 接收 #20161021 写错端口 4050 哈哈 ## is me ab iptables -I INPUT -s 192.168.1.199 -p tcp -m multiport --dports 4505,4506 -j ACCEPT #这个平时一般为了删除而查看 哈哈 iptables -L -n --line-number |grep 21 # //--line-number可以显示规则序号,在删除的时候比较方 iptables -D INPUT 3 # //删除input的第3条规则 iptables -R INPUT 3 -j DROP # //将规则3改成DROP
iptables模块
功能:被控主机的iptables支持 示例: #在所有被控主机端追加(append)、插入(insert)iptables规则,其中INPUT为输入链 ##append salt '*' iptables.append filter INPUT rule='-m state --state RELATED,ESTABLISHED -j ACCEPT' ##insert salt '*' iptables.insert filter INPUT position=3 rule='-m state --state RELATED,ESTABLISHED -j ACCEPT' #good salt '*' iptables.insert filter INPUT position=3 rule='-p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT' # 注意 一定要有 position 不然 Error: Position needs to be specified or use append (-A) salt '*' iptables.insert filter INPUT rule='-p tcp -m state --state NEW -m tcp --dport 222 -j ACCEPT' iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT #在所有被控主机删除指定链编号为3(position=3)或指定存在的规则 salt '*' iptalbes.delete filter INPUT position=3 salt '*' iptables.delete filter INPUT rule='-m state --state RELATEC,ESTABLISHED -j ACCEPT' #保存所有被控主机端主机规则到本地硬盘(/etc/sysconfig/iptables) salt '*' iptables.save /etc/sysconfig/iptables 复制代码 API调用: client.cmd('*','iptables.append',['filter','INPUT','rule=\'-p tcp --sport 80 -j ACCEPT\'']) Saltstack系列3:Saltstack常用模块及API http://www.cnblogs.com/MacoLee/p/5753640.html
也可以基于state管理
mkdir -p /srv/salt/base/iptables init.sls内容如下,也是官网的例子 httpd: iptables.append: - table: filter - chain: INPUT - jump: ACCEPT - match: state - connstate: NEW - dport: 1:65535 - proto: tcp - sport: 1:65535 - save: True top.sls内容如下: base: '*': - iptables salt '' state.sls iptables