我一直在阅读Pyboto documentation,虽然我知道如何将基于IP的规则添加到安全组,但我无法找到方法删除基于IP的规则。安全组对象上的方法remove_rule不会更新ec2实例上的安全组 - 所以我不确定这对我有帮助。
有没有人之前完成过这个?
答案 0 :(得分:2)
boto中的SecurityGroup
对象有两个重要的方法; authorize
和revoke
。向组添加和删除规则的最简单方法是使用这些方法。因此,要添加基于IP的规则:
import boto.ec2
conn = boto.ec2.connect_to_region('us-west-2') # or whatever region you want
sg = conn.get_all_security_groups('my_security_group')[0]
sg.authorize('tcp', 22, 22, cidr_ip='0.0.0.0/0')
这将为所有主机授权端口22。要撤销该规则(你应该!):
sg.revoke('tcp', 22, 22, cidr_ip='0.0.0.0/0')
它的论点相同。