powershell 管理更新AWS安全组

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/shrekz/article/details/51094647
#导入亚马逊云模块
import-module "C:\Program Files (x86)\AWS Tools\PowerShell\AWSPowerShell\AWSPowerShell.psd1"
#获取最新外网地址
$WebClient=new-object System.Net.WebClient
$uri="http://myip.dnsomatic.com/"
$ipaddr=$WebClient.DownloadString($uri)
$ipaddr=$ipaddr+"/32"

#取得安全组信息
$ipgroup=Get-EC2SecurityGroup sg-82a074e7

#获得原地址
$lodIpRanges=($ipgroup.IpPermissions|?{$_.IpProtocol -eq 47}).IpRanges

#获取原地址相关列表
$IpPermissions=$ipgroup.IpPermissions|?{$_.IpRanges -match $lodIpRanges[0]}

#初始化新地址
$ip = New-Object Amazon.EC2.Model.IpPermission
$ip.IpRanges.add($ipaddr)

#删除老地址相关的规则
foreach($Permissions in $IpPermissions){
$Permissions.IpRanges=$lodIpRanges
}
Revoke-EC2SecurityGroupIngress -GroupId sg-82a074e7 -IpPermission $IpPermissions

#添加新规则
foreach($Permissions in $IpPermissions){
$Permissions.IpRanges=$ip.IpRanges
}
Grant-EC2SecurityGroupIngress -GroupId sg-82a074e7 -IpPermission $IpPermissions

猜你喜欢

转载自blog.csdn.net/shrekz/article/details/51094647