Linux

AWS Lightsail 更换IP脚本

迷失小白菜 · 1月6日 · 2019年 · 352次已读

脚本功能介绍

  • 删除旧静态IP
  • 获取新静态IP
  • 绑定新静态IP
  • 解析CloudFlare的域名IP为新的IP

申请 AWS key

前往 https://console.aws.amazon.com/iam/home?region=us-east-2#/security_credential 获取即可

申请 CloudFlare API

前往 https://www.cloudflare.com 登陆后,右上角选择 My profile,最下面的Global API Key

安装AWS组件

#Ubuntu_Debian
apt update -y
apt install python-pip wget -y
pip install awscli --upgrade
#Centos
yum update -y
yum install python-pip wget -y
pip install awscli --upgrade

获取脚本

wget https://blog.wxlost.com/wp-content/uploads/2019/01/aws.sh && chmod +x aws.sh

编辑 aws.sh 内的参数后.运行脚本

bash aws.sh default

脚本后缀 default 为变量.以备后续添加多个机器调用

其他问题

官方文档
本人出现debian下aws无法执行.所以手动添加环境

export PATH=~/.local/bin:$PATH

内容写入~/.bash_profile
然后读取

source ~/.bash_profile
#查看设置是否成功
aws --version

现存的问题.

同一地区存在2个及以上的机器.会导致脚本过滤出多个IP…能力有限.无法分割识别….有大佬帮助下么….

截至2019年6月4日 脚本使用正常.

如果不能用.请检查自己的aws环境,尤其是aws的机器名字是否变了.静态IP地址是否存在多个名字一样的.请手动删除多余的静态IP

本人测试正常,朋友测试也正常.

感谢支持

2 条回应
  1. larry2019-4-18 · 17:07

    您好 想问下这个问题怎么解决 Centos7
    在另外一台机器里是可以的 这台不知道哪出了问题(

    删除: 旧静态IP
    aws.sh: line 54: /tmp/aws/old_ip.logs: No such file or directory
    添加: 新静态IP
    aws.sh: line 57: /tmp/aws/new_ip.logs: No such file or directory
    绑定: 静态IP到机器
    aws.sh: line 60: /tmp/aws/set_ip.logs: No such file or directory