iptables 网络管理

1、作为根用户打开/etc/sysconfig/network文件,在文件增加以下一行: GATEWAYDEV=PPP0 这句话的作用是设定默认路由,有时没有也可

2、打开IP转发功能:打开/etc/sysctl.conf文件,修改net.ipv4.ip_forward=0一行,改0改为1

3、重启系统 第三步,设置iptables防火墙,决定那些IP能通过linux主机上网。 下面以允许 192.168.0.0网段为例:

(1)、打开终端在#字提示符下输入以下命令:

iptables -t nat -I POSTROUTING -o ppp0 -j MASQUERADE #这句意思是伪装从pppo出去的

IP iptables -A FORWARD -s 192.168.0.0/24 -j ACCEPT #这句意思是转发来自192.168.0.0网段的通讯

iptables -A FORWARD -d 192.168.0.0/24 -j ACCEPT #这句意思是转发到达192.168.0.0网段的通讯

iptables -A FORWARD -s ! 192.168.0.0/24 -j DROP #这句意思是拒绝转发非192.168.0.0网段的通讯。

(2)、保存以上防火墙规则,以保证重启后还有效 输入下面命令 iptables-save > /etc/sysconfig/iptables 这样,你的linux路由器应该就能跑起来了。

PS: 所有命令都要区分大小写。限速的实现:在linux中有专门限速的软件--tc,但TC的语法新手难以掌握,我们可以在防火墙上通过限定某个IP或某段IP在一秒内通过的数据包的数量来限速。 下面以限制192.168.0.2这个IP的网速为例说说。 在桌面环境下打开/etc/syscofngi/iptables 有没有发现,刚才的设定全记录在这个文件里,现在做的就在这个文件里添加规则就得了。

1、先要找到filter

2、在filter下面一行增加以下两行

-A FORWARD -m limit -d 192.168.0.2 --limit 30/sec -j ACCEPT # 这句意思是限定每秒只转发30个到达192.168.0.2的数据包(约每秒45KB 一个数据包是1.5KB)

-A FORWARD -d 192.168.0.2 -j DROP #这句作用是超过限制的到达192.168.0.2的数据包不通过)

(3)、重启系统,限速就实现了。

(4)、限制上传速度也一样,把上面两条中的d 改为s就得了。 限制每ip连接数 ,内核 2.3以上,否则要打conlimit补丁,重编译内核。

iptables -I FORWARD -p tcp -s 192.168.0.0/24 -m connlimit --connlimit-above 20 -j REJECT

iptables -I INPUT -p tcp -s 192.168.0.0/24 -m connlimit --connlimit-above 20 -j REJECT

 

网络分析与限速
网络现状: 允许所有的数据通信。网络可管理,需手动进行。租用的线路下载速度是 2M ,上传 512K
目的: 达到网络检测的自动化,智能管理,保证网络畅通无阻塞。
方法: 根据 IP 地址进行数据包分析,通过脚本实现
要求: 充分利用带宽,对合理数据需要通过,不合理数据通信进行拒绝。
一:现在网络存在以下弊端
P2P 类软件主要有:
下载类工具:迅雷, TT Flashget, BT, 电骡, youtub ……。
在线播放工具: PPLIVE ,PPS, 沸点,酷我音乐盒,酷狗音乐……。
1 .用户下载过程若不用 P2P 下载,速度相对较慢。
网内若运行 P2P 下载软件,没有及时关闭,数据上传功能会耗尽上传带宽,导致整个网络速度变慢。
2 .现在检测网络的方法是每天上班时间定时检查四次,将网络状态发信到管理员信箱,
管理方法:发现网络异常后,分析通信的数据,逐步筛选,一步步定位到通信量较大的 IP ,整个过程用时较长。
二:网络管理常用的方法
1 .对端口进行限制。
通过对端口进行封闭,来达到屏蔽 P2P 软件的目的。
方法存在问题:
通过代理可绕过限制。
P2P 软件很多,需知道每个软件所使用的端口号并逐个进行屏蔽。
P2P 软件越来越智能,可以自定义端口号,通过 UPnp 技术可以使用允许的端口进行上传下载。
2 .分析通信协议和数据包大小
通过对网络进行查看,得到以下结论:
网络变慢的原因大部分是由于 P2P 软件在运行。
P2P 软件通信有一个共性:使用 UDP 协议,且每秒钟发送的数据包都很大(每个数据包大小均超过 100 )每秒发送 10 个以上。
方案:
现在使用第二种方式,通过分析数据包协议和大小进行限制,对内网,校网间的通信进行允许策略。
针对对外网的通信,分析局域网用户所使用的通信协议及单个数据包的大小。限制使用 UDP 协议的 IP 数据包大小为 40
保证:
为保证“限制脚本”的运行不会引起网络故障(虽然之前已经分析过不会,为以防万一)同时编写了删除“限制脚本”,恢复网络正常运行的程序。
此限制有效的对 P2P 软件进行的限制,不对 IP 进行限速,最大程度利用带宽,根据 P2P 软件的上传数据包耗尽带宽,进行包大小限制。
结论:
经检测,达到的预期目的,内网,校网通信不受限制。可以都大程度利用带宽。当有 P2p 软件在运行时,不会造成网络阻塞情况,达到了预期的目的。
脚本如下:
#!/bin/bash
#limit network upload speed
for ((i=253;i>4;i--));
do
/sbin/iptables -I FORWARD -s 192.168.1.$i -j DROP
/sbin/iptables -I FORWARD -s 192.168.1.$i -m limit --limit 40/s -j ACCEPT
done
/sbin/iptables -D FORWARD -s 192.168.1.40 -j DROP
/sbin/iptables -D FORWARD -s 192.168.1.40 -m limit --limit 40/s -j ACCEPT
#accept inside network speed
/sbin/iptables -I FORWARD -d 192.168.1.0/24 -j ACCEPT
/sbin/iptables -I FORWARD -d 192.168.10.0/24 -j ACCEPT
/sbin/iptables -I FORWARD -d 192.168.3.0/24 -j ACCEPT
/sbin/iptables -I FORWARD -d 10.0.0.0/8 -j ACCEPT
/sbin/iptables -I FORWARD -d 210.32.0.0/20 -j ACCEPT
/sbin/iptables -I FORWARD -d 210.32.128.0/18 -j ACCEPT
/sbin/iptables -I FORWARD -d 222.205.0.0/17 -j ACCEPT

你可能感兴趣的:(职场,iptables,网络管理,休闲)