Skip to main content

Shadowsocks端口流量统计-CentOS

Shadowsocks端口流量统计

添加端口到流量统计规则中

添加单个端口

iptables -I INPUT -p tcp --dport 1234
iptables -I INPUT -p udp --dport 1234
iptables -I OUTPUT -p tcp --sport 1234
iptables -I OUTPUT -p udp --sport 1234

添加多个连续端口

shell脚本
#!/bin/sh
for ((i = 1234; i <= 1243; i++))
do 
    iptables -I INPUT -p tcp --dport $i
    iptables -I INPUT -p udp --dport $i
    iptables -I OUTPUT -p tcp --sport $i
    iptables -I OUTPUT -p udp --sport $i
done

将流量数据写入文件

shell脚本:check.sh
#!/bin/sh
# 分割线
echo "*******************************************************************" >> flow.txt
# 时间戳
date >> flow.txt
# 写入流量数据
iptables -n -v -t filter -L INPUT >> flow.txt
iptables -n -v -t filter -L OUTPUT >> flow.txt

将流量数据清零,记录文件清空

shell脚本:set-zero.sh
#!/bin/sh
iptables -Z
var=`date "+%Y-%m-%d %H:%M:%S"`
echo "Flow set to zero at ${var}." > flow.txt

添加例行任务

目的:每周二20点记录一次数据,每月1号19点清零
在/etc/crontab文件中添加下面两行
00 20 * * 2 root bash check.sh
00 19 1 * * root bash set-zero.sh

Comments

Popular posts from this blog

[转]一些第三方库

赞叹开源、共享的伟大 在工作和学习中,借助第三方开源代码库是常见的事情,“站在巨人的肩膀上”嘛,相信大家都不会陌生,赞叹开源、共享的伟大。 一方面为了做个总结,另一方面,就是好东西要与大家分享,我在 Github 上维护了一个页面 http://ift.tt/1QxQddX ,包含了个人比较关注的第三方代码库,如下(持续更新中) Google 开源库 zh-google-styleguide - Google 开源项目风格指南. protobuf - Protocol Buffers - Google’s data interchange format. gflags - Commandline flags module for C++. glog - Logging library for C++. gtest - Google C++ Testing Framework. googlemock - Google C++ Mocking Framework. leveldb - A fast and lightweight key/value database library by Google. cpy-leveldb - Python bindings for LevelDB using leveldb c api. The Chromium Projects - The Chromium projects include Chromium and Chromium OS, the open-source projects behind the Google Chrome browser and Google Chrome OS, respectively. C++ base 库 toft - C++ Base Library for Linux server side development. thirdparty - Put thirdparty library here for toft ant foxy. chen3feng folly - Folly is an open-source C++ library developed and used at Facebook. 算法和数据

MatLab中patch函数的基本用法

patch是用来构建多边形的一个基本函数。 用法一 patch(X,Y,C) patch(X,Y,Z,C) patch( 'XData' ,X, 'YData' ,Y) patch( 'XData' ,X, 'YData' ,Y, 'ZData' ,Z) 1.1 说明 patch(X,Y,C)用来构建一个或者多个可填充的多边形,其使用X和Y作为每个点的坐标值,patch将会按顺序连接每个点。如果要得到一个多边形,将X和Y设置为向量;如果要得到多个多边形,将X和Y设置为矩阵,没一列对应一个多边形。C决定多边形的颜色,可以是系统认定的字符,也可以是一个数值,也可以是RGB向量。 patch(X,Y,Z,C)用来构建三维坐标下的多边形。 patch(‘XData’,X,’YData’,Y)和patch(‘XData’,X,’YData’,Y,’ZData’,Z)的用法与patch(X,Y,C)和patch(X,Y,Z,C)的用法类似,只是不设定颜色。 1.2 例子 1.2.1 x = [ 0 1 1 0 ] ; y = [ 0 0 1 1 ] ; patch(x,y, 'red' ) x和y都是1*4的向量,表示将四个点(0,0)、(1,0)、(1,1)和(0,1)依次连接,最后闭合形成一个四边形,设定颜色为红色。 1.2.2 x2 = [ 2 5 ; 2 5 ; 8 8 ] ; y2 = [ 4 0 ; 8 2 ; 4 0 ] ; patch(x2,y2, 'green' ) x2和y2都是3*2的向量,两列表示画两个多边形。第一个多边形连接的点依次是(2,4)、(2,8)和(8,4),第二个多边形连接的点依次是(5,0)、(5,2)和(8,0),颜色设定为绿色。 1.2.3 如果上例的三角形第一个是红色,第二个是绿色,那么patch代码修改为 x2 = [ 2 5 ; 2 5 ; 8 8 ] ; y2 = [ 4 0 ; 8 2 ; 4 0 ] ; patch(x2(:, 1 ),y2(:, 1 ), 'red' ) pat

使用PHP Webhook方式打造Telegram Bot

一、找BotFather拿到bot token     在telegram中私聊BotFather建立自己的bot,给bot取名,名字必须要以bot结尾。建好后自己的bot就有一个唯一的token,类似下面的一串字符 164354723:AAEjT6-IyNoXjt7miD0dwa-P5VmDTtHQC8 二、确认bot响应文件的位置     在写好bot响应文件后,要把bot放在网络上的一个位置,并且这个位置必须要加密的,即以https开头的一串网址。比如响应文件的名称为telbot.php,把它放在下面这个网址的位置: https://my.webhost.com/ 164354723:AAEjT6-IyNoXjt7miD0dwa-P5VmDTtHQC8 /telbot.php 上面网址中的红色设置和bot的token一样是为了确定这个唯一的位置,当然也可以任意设置。 三、告诉Telegram响应文件的位置 Telegram用下面网址的形式来设定webhook响应方式 https://api.telegram.org/bot [myauthorization-token] /setwebhook?url= [myboturl] 按照上面的网址形式,把自己创建的bot的token以及响应文件的位置填入,然后在浏览器中运行一下即可设置成功。比如: https://api.telegram.org/bot164354723:AAEjT6-IyNoXjt7miD0dwa-P5VmDTtHQC8/setwebhook?url=https://my.webhost.com/164354723:AAEjT6-IyNoXjt7miD0dwa-P5VmDTtHQC8/telbot.php 设置成功后,页面会显示下面的内容: {"ok":true,"result":true,"description":"Webhook is already set"} 四、在Telegram中给自己的bot发消息进行验证 php响应文件例子 <?php  define('BOT_TOKEN', 'YOURBOT:TOK