谷歌云防火墙,ping域名,自动放行IP实现脚本

概要:由于公司的IP是动态IP,经常会变化,而谷歌云防火墙又限制某个IP能访问服务器。于是通过谷歌云防火墙官网了解,用命令添加放行IP,然后通过Python脚本定时ping公司域名获取到当时的静态IP,然后对比谷歌云防火墙放行的IP,如果相同则不变,变化了,则删掉原来的IP,加入新获取的IP。

谷歌云防火墙命令详解:

1 列出当前防火墙规则:
 gcloud compute firewall-rules list

2 创建一个防火墙规则,允许TCP通信通过端口80,允许ICMP流量:
gcloud compute firewall-rules create MY-RULE --allow tcp:80 icmp
gcloud compute firewall-rules create cs --allow tcp:22 icmp --source-ranges 110.86.69.1

模板:gcloud compute firewall-rules create NAME --allow PROTOCOL[:PORT[-PORT]],[PROTOCOL[:PORT[-PORT]],…] [--description DESCRIPTION] [--network NETWORK; default="default"]
[--source-ranges CIDR_RANGE,[CIDR_RANGE,…]] [--source-tags TAG,[TAG,…]] [--target-tags TAG,[TAG,…]] [GLOBAL-FLAG …]

3 删除一个防火墙规则
模板:gcloud compute firewall-rules delete NAME [NAME …] [GLOBAL-FLAG …]
gcloud compute firewall-rules delete cs -q (q代表不用提示直接删除)

4更新一个防火墙规则
模板:gcloud compute firewall-rules update NAME [--allow [PROTOCOL[:PORT[-PORT]],…]] [--description DESCRIPTION] [--source-ranges [CIDR_RANGE,…]] [--source-tags [TAG,…]] [--
target-tags [TAG,…]] [GLOBAL-FLAG …]
gcloud compute firewall-rules update cs --allow tcp:22 icmp --source-ranges 110.86.69.1

 

脚本更改防火墙规则(python):
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os
import subprocess
#ip=ping www.test.com域名获取到新的ip
#sip=代表谷歌云防火墙规则放行的ip
ip=os.popen('ping -c1 www.test.com |awk -F\'[(|)]\' \'NR==1{print $2}\'').readlines()[0]
ip=ip.replace('\n','') #替换掉多出来的空格行
sip=os.popen('/usr/local/bin/gcloud compute firewall-rules list | grep cs | awk \'{print $3}\'').readlines()[0]  #cs代表上面创建的云防火墙规则名
sip=sip.replace('\n','')
if ip==sip:
        pass #代表空语句,是为了保持程序结构的完整性
else:
        out=subprocess.call(" /usr/local/bin/gcloud compute firewall-rules update cs --allow tcp:1-65535 udp:1-65535 icmp --source-ranges %s"%ip,shell=True)

转载于:https://my.oschina.net/lovetyh/blog/812115

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值