Amazon Web Services (AWS)的安全组提供了一种简单而有效的方法来控制进入和离开Amazon Elastic Compute Cloud实例的网络流量。通过定义入站规则,可以允许或拒绝来自不同来源的流量。
以下是定义安全组入站规则的示例代码:
import boto3
# 创建EC2客户端
ec2 = boto3.client('ec2')
# 定义安全组ID
security_group_id = 'sg-0123456789abcdef'
# 定义入站规则
ip_permissions = [
{
'IpProtocol': 'tcp',
'FromPort': 22,
'ToPort': 22,
'IpRanges': [{'CidrIp': '0.0.0.0/0'}]
},
{
'IpProtocol': 'tcp',
'FromPort': 80,
'ToPort': 80,
'IpRanges': [{'CidrIp': '0.0.0.0/0'}]
}
]
# 更新安全组规则
response = ec2.authorize_security_group_ingress(
GroupId=security_group_id,
IpPermissions=ip_permissions
)
在这个例子中,我们使用Python SDK的boto3库创建了一个EC2客户端。然后,我们定义了安全组的ID和两个入站规则,一个允许SSH连接(TCP端口22),另一个允许HTTP连接(TCP端口80)。最后,我们使用EC2 API函数authorize_security_group_ingress来更新安全组规则。
请注意,这里的IPRanges使用了0.0.0.0/0表示来自任何IP地址的流量都被允许进入。在生产环境中,您应该根据需要定义更具体的IP范围。
上一篇:安全组的默认计算值不起作用
下一篇:安全组对所有实例都不起作用