利用 crontab+ vnstat 监控阿里云ECS流量,防止超过流量包扣费

首页 » 网络资源 » 正文

阿里云国际出了ECS流量包,但是流量只有1T,如果遇到什么DDDOS,CC攻击会导致流量直接耗完,但是阿里云ECS流量扣完后不是停机而是会继续,这点还是比较坑的,有些时候我们会上去控制台看,但是如果有自动完成也是更好的,利用Crontab+vnstat监控vps流量,防止超过自动关机

首先安装vnstat 

centos

yum install -y epel-release   yum install -y vnstat   service vnstat start   chkconfig vnstat on

ubuntu、debian

sudo apt-get install vnstat

2. 列出目前系統可的网卡

vnstat --iflist

3. 以 eth0为例,设定要监控的网卡流量,防止有多个网卡监控出错

vnstat -u -i eth0

4. 启动vnstat

sudo service vnstat start

5. 可以透過以下指令確認使否成功啟動

ps aux | grep "vnstat"

6. 測試監控流量狀況

vnstat

7. 完成,接下來寫個脚本(check.sh) 來執行檢查流量。(其中用到 awk 這個簡單語言,處理 command line的輸出,幫助我們抽取流量資訊)

  1. 利用 awk 抽取出總流量資訊。
    2. 判斷是否大於 999 GiB,如果大於則關閉機器。

  2. vi cheack.sh
#!/bin/bash
ax=`vnstat --oneline | awk -F ";" '{print $11}'`
if [[ "$ax" == *GiB* ]];
then
 if [ $(echo "$(echo "$ax" | sed 's/ GiB//g') > 999"|bc) -eq 1 ]
 then
 shutdown -h now
 fi
fi

8. 完成 脚本,我們將他加入例行性排程並且以root身分執行(一般使用者會無法存取部分資料夾),定時檢查流量

9.加入到crontab中

crontab -e

10  *    *       *        *        root   bash check.sh

未经允许不得转载:作者:admin, 转载或复制请以 超链接形式 并注明出处 夜河资源网
原文地址:《利用 crontab+ vnstat 监控阿里云ECS流量,防止超过流量包扣费》 发布于2019-08-19

分享到:
赞(0) 打赏

评论 2

6 + 2 =
  1. #1
    qq_avatar

    你好 你这个脚本 是只计算出站的流量统计么? 还有就是10 * * * * 的间距没对脚本执行有影响吧

    姐姐囧3周前 (03-16)回复
    • 你好 计算出站和入站的 您把那个命令复制出来之后就没有那么多空格啦

      管理员admin3周前 (03-17)回复

撰写不易~如果您觉得文章对您有帮助的话可以打赏我哦~谢谢亲亲~

支付宝扫一扫打赏

微信扫一扫打赏

外服网游加速器破解版
包含腾讯网游加速器、海豚网游加速器等八款知名加速器,可加速外服游戏,永久包售后包更新,不定时添加新款破解版加速器!
切换注册

登录

忘记密码 ?

切换登录

注册