AWS 导出SecurityGroup和EC2关联关系至excel

   最近在做安全检查需要整理AWS的securityGroup和ec2的关系到excel管理也算是配置管理的存档了,我的痛点是

   1 AWS不提供excel下载

   2 100多台机器进出站上千条inbound和outbound,还要关联到EC2

   3 安全原因规则不能用http://www.esjson.com/jsontoexcel.html这种json转excel网站,比较数据上传到工具网站是不安全的

好了现在开始一台电脑搞定上面的事情

第一步 利用AWS CLI 下载SecurityGroup

--outbound
aws ec2 describe-security-groups --region cn-north-1 |jq '.SecurityGroups[] | {name:.GroupName,protocl:.IpPermissionsEgress[].IpProtocol,portfrom:.IpPermissionsEgress[].FromPort,portto:.IpPermissionsEgress[].ToPort,ip:.IpPermissionsEgress[].IpRanges[].CidrIp }' > outbound.txt

--inbound
aws ec2 describe-security-groups --region cn-north-1 |jq '.SecurityGroups[] | {name:.GroupName,protocl:.IpPermissionsEgress[].IpProtocol,portfrom:.IpPermissionsEgress[].FromPort,portto:.IpPermissionsEgress[].ToPort,ip:.IpPermissionsEgress[].IpRanges[].CidrIp }' > inbound.txt

AWS 提供了导出securitygroup到json的方法为了方便后面的整理用jquery做了些整理,整理后数据大概的样子是这个样子的

{
  "name": "SG-OOOOO",
  "protocl": "tcp",
  "portfrom": XXX3,
  "portto": XXX3,
  "ip": "10.XXX.10.30/32"
}
{
  "name": "SG-XXXX",
  "protocl": "tcp",
  "portfrom": XX3,
  "portto": XXX3,
  "ip": "10.XXX.110.30/32"
}
..............

然后再NotPad++里做个整理后拷贝到excel里

notePad++整理并拷贝至excel
全选-->编辑-->行操作-->合并行
} 替换为 } \n
{   "name": 和"protocl": 和"portfrom":和 "portto":和"ip":和"和} 都替换为空
, 替换为 \t
拷贝至excel,增加inboud和outbound列

下一步就是整理EC2和SecurityGroup的关系了


#3 aws cli 下载 EC2中SC关系
 aws ec2 describe-instances | jq '.Reservations[] | .Instances[] | {name:.Tags[].Value ,SG:.SecurityGroups[].GroupName}'>map.json  
 下载后为json格式,将json整理至excel,方法同上

第二步 excel安装powerquery
https://www.microsoft.com/zh-CN/download/details.aspx?id=39379

第三步 excel合并
 1 powerquery-->从文件-->excel 分别载入两个sheet
 2 合并-->选择匹配的列-->完全外部
 3 点击table上按钮选择素有列即可
 参考http://www.360doc.com/content/18/0707/06/28740943_768444049.shtml

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

rongyili88

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值