下面是设置网络时的基本状况:

主机3个网卡:

eth0 192.168.0.1/24   内网

eth1 192.168.20.1/24  外网

eth2 192.168.50.1/24  会议室网络

ppp0  ( 设置为 eth1 上拨号上网)

DHCP设置:

192.168.0.1/24      { 192.168.0.100----192.168.0.200 }

192.168.50.1/24   {192.168.50.100---192.168.50.200 }

VPN设置:

localip:    192.168.10.1

remoteip:  192.168.10. 100    192.168.10.150

下面是firewall的具体设置:

[root@yujiagw ~]# cat firewall

#!/bin/sh
iptables -F
iptables -t nat -F
iptables -P FORWARD ACCEPT
iptables -X poweruser
iptables -X qquser
iptables -X httpuser

# NAT
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
#iptables -t nat -A POSTROUTING -o eth2 -j MASQUERADE

iptables -t nat -A PREROUTING -p tcp --dport 53 -j ACCEPT
iptables -t nat -A PREROUTING -p udp --dport 53 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp --dport 25 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp --dport 110 -j ACCEPT
#iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT --to-port 443
#iptables -t nat -A PREROUTING -p udp --dport 443 -j REDIRECT --to-port 443

# Port Forwarding
#iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 3389 -j DNAT --to 192.168.0.4:3389
#iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 80 -j DNAT --to 192.168.0.4:80
#iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 8080 -j DNAT --to 192.168.50.2:8080
#iptables -A FORWARD -d 192.168.50.2 -p tcp --dport 8080 -j ACCEPT
#iptables -t nat -A POSTROUTING -d 192.168.50.2 -p tcp --dport 8080 -j SNAT --to 192.168.0.1

# Basic Port Open
iptables -A FORWARD -p tcp --dport 53 -j ACCEPT
iptables -A FORWARD -p udp --dport 53 -j ACCEPT
iptables -A FORWARD -p tcp --dport 25 -j ACCEPT
iptables -A FORWARD -p tcp --dport 110 -j ACCEPT

# VPN
iptables -A FORWARD -s 192.168.10.0/24 -d 192.168.0.0/24 -j ACCEPT
iptables -A FORWARD -s 192.168.0.0/24 -d 192.168.10.0/24 -j ACCEPT

# Conference Room
iptables -A FORWARD -s 192.168.50.0/24 -d 192.168.0.0/24 -j ACCEPT
iptables -A FORWARD -s 192.168.0.0/24 -d 192.168.50.0/24 -j ACCEPT

# Set Connect WAN
iptables -A FORWARD -d 192.168.50.0/24 -j ACCEPT

# HeQuanXin
#iptables -A FORWARD -m mac --mac-source 00:1A:6B:35:A5:66 -j ACCEPT
#iptables -A FORWARD -m mac --mac-source 44:D8:84:0A:9F:5D -j ACCEPT

#-----------------------------------PowerUser-------define------------------------

iptables -N poweruser

iptables -A poweruser  -j ACCEPT

#---------------------------------httpuser define-----------------

# Set Http User

iptables -N httpuser

iptables -A httpuser -p tcp --dport 53 -j ACCEPT

iptables -A httpuser -p udp --dport 53 -j ACCEPT

# Reject QQZone

iptables -A httpuser -d user.qzone.qq.com -j REJECT

iptables -A httpuser -p tcp --dport 80 -j ACCEPT

iptables -A httpuser -p udp --dport 80 -j ACCEPT

iptables -A httpuser -p tcp --dport 25 -j ACCEPT

iptables -A httpuser -p tcp --dport 110 -j ACCEPT

iptables -A httpuser -p tcp --dport 443 -j ACCEPT

iptables -A httpuser -p udp --dport 443 -j ACCEPT

iptables -A httpuser -j DROP

#-----------------------------------User-------start------------------------

# HeQuanXin

iptables -A FORWARD -m mac --mac-source 00:1A:6B:35:A5:66 -j httpuser

# xiangshude

iptables -A FORWARD -m mac --mac-source 00:E0:4C:41:49:C4 -j httpuser

# shiyayun

iptables -A FORWARD -m mac --mac-source C8:9C:DC:D2:55:7A -j poweruser

# chenmingxiang

iptables -A FORWARD -m mac --mac-source 54:04:A6:58:A3:EE -j poweruser

# wangxiaoping

iptables -A FORWARD -m mac --mac-source 00:B0:C4:04:A1:7E -j httpuser

# chengmeirong

iptables -A FORWARD -m mac --mac-source 90:2B:34:2D:E6:5B -j httpuser

# zhangyinbo

iptables -A FORWARD -m mac --mac-source 14:DA:E9:D2:3F:DF -j httpuser

# luxiaoxiong

iptables -A FORWARD -m mac --mac-source 90:2B:34:CB:31:EE -j httpuser

#-----------------------------------HTTPUser-------end--------------------------

#-----------------------------------------------------------------------------------

# Block Xunlei

iptables -A FORWARD -d 58.61.39.0/24 -j REJECT

iptables -A FORWARD -d 121.9.209.6 -j REJECT

iptables -A FORWARD -d 121.9.209.7 -j REJECT

iptables -A FORWARD -d 121.9.209.3 -j REJECT

iptables -A FORWARD -d 61.183.55.216 -j REJECT

iptables -A FORWARD -d 61.183.55.218 -j REJECT

iptables -A FORWARD -d 61.183.55.222 -j REJECT

iptables -A FORWARD -d 220.172.191.36 -j REJECT

iptables -A FORWARD -d 121.11.69.108 -j REJECT

iptables -A FORWARD -d 125.91.8.77 -j REJECT

iptables -A FORWARD -d 218.6.13.134 -j REJECT

iptables -A FORWARD -d 219.133.48.0/24 -j REJECT

iptables -A FORWARD -d 219.133.49.0/24 -j REJECT

iptables -A FORWARD -d 219.129.83.0/24 -j REJECT

iptables -A FORWARD -d 219.133.60.0/24 -j REJECT

iptables -A FORWARD -d 210.21.118.141 -j REJECT

iptables -A FORWARD -d 210.21.118.147 -j REJECT

iptables -A FORWARD -d 210.21.118.149 -j REJECT

iptables -A FORWARD -d 221.238.251.118 -j REJECT

iptables -A FORWARD -d 221.238.252.127 -j REJECT

iptables -A FORWARD -d 221.238.252.154 -j REJECT

iptables -A FORWARD -d 221.238.252.155 -j REJECT

iptables -A FORWARD -d 221.238.252.233 -j REJECT

iptables -A FORWARD -d 221.238.253.246 -j REJECT

iptables -A FORWARD -d 222.208.156.0/24 -j REJECT

iptables -A FORWARD -d 203.110.168.233 -j REJECT

iptables -A FORWARD -d 208.115.244.194 -j REJECT

iptables -A FORWARD -d 65.19.183.185 -j REJECT

#Block BT

iptables -A FORWARD -p tcp --dport 6880:6881 -j REJECT

iptables -A FORWARD -p udp --dport 6880:6881 -j REJECT

# Invalid connect drop

iptables -A FORWARD -m state --state INVALID -j DROP

# Accept the already establised connection

iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

# Set the FORWARD chain to DENY

iptables -P FORWARD DROP

linux iptable 设置实践的更多相关文章

  1. 通过sed -i ,通过准备好的sh脚本,来设置linux iptable白名单

    通过准备好的sh脚本,来设置linux iptable白名单 特定字符串的行前插入新行 sed -i '/特定字符串/i 新行字符串' file #!/bin/bash del_stdin_buf() ...

  2. 【转载】Linux小白最佳实践:《超容易的Linux系统管理入门书》(连载六)Linux的网络配置

    本篇是Linux小白最佳实践第6篇,目的就是让白菜们了解Linux网络是如何配置的.Linux系统在服务器市场占有很大的份额,尤其在互连网时代,要使用计算机就离不开网络. 想每天能听到小妞的语音播报, ...

  3. Linux及安全实践五——字符集编码

    Linux及安全实践五——字符集编码 一.ASCII码 在表中查找出英文字母LXQ相对应的十六进制数值为: 4c 58 51 在终端中输入命令:vim test1.txt 在vim页面输入命令:%!x ...

  4. linux IPtable防火墙 禁止和开放端口(转)

    linux IPtable防火墙 禁止和开放端口源:http://hi.baidu.com/zplllm/item/f910cb26b621db57c38d5983评: 1.关闭所有的 INPUT F ...

  5. Linux防火墙设置——iptables

    防火墙用于监控往来流量,并根据用户定义的规则来过滤数据包以保证安全.iptables是Linux下设置防火墙规则的常用工具,它可以让你设置.维护以及查看防火墙的规则表.你可以定义多个表,每个表可以包含 ...

  6. Linux scp 设置nohup后台运行

    Linux scp 设置nohup后台运行 1.正常执行scp命令 2.输入ctrl + z 暂停任务 3.bg将其放入后台 4.disown -h 将这个作业忽略HUP信号 5.测试会话中断,任务继 ...

  7. Linux 权限设置chmod

    Linux中设置权限,一般用chmod命令 1.介绍 权限设置chmod 功能:改变权限命令.常用参数: 1=x(执行权execute) 2=w(写权write) 4=r(读权Read) setuid ...

  8. 在linux中设置静态ip地址

    在linux中设置静态ip地址1.在终端中输入:vi /etc/sysconfig/network-scripts/ifcfg-eth0 2.开始编辑,填写ip地址.子网掩码.网关.DNS等[root ...

  9. 第一种SUSE Linux IP设置方法

    第一种SUSE Linux IP设置方法ifconfig eth0 192.168.1.22 netmask 255.255.255.0 uproute add default gw 192.168. ...

随机推荐

  1. 一个意想不到的CDO.Message 错误

    原文:一个意想不到的CDO.Message 错误   几个月之前,写了一个服务从MSMQ取消息发群发邮件的程序,一直也没时间测试,今日一试,出现发送邮件时报错,异常情况如下:   "Syst ...

  2. oracle 存储过程的基本语法

    原文:oracle 存储过程的基本语法 1.基本结构 CREATE OR REPLACE PROCEDURE 存储过程名字(    参数1 IN NUMBER,    参数2 IN NUMBER) I ...

  3. SQL SERVER 2005中如何获取日期(一个月的最后一日、上个月第一天、最后一天、一年的第一日等等)

    原文:[转]SQL SERVER 2005中如何获取日期(一个月的最后一日.上个月第一天.最后一天.一年的第一日等等) 在网上找到的一篇文章,相当不错哦O(∩_∩)O~ //C#本周第一天       ...

  4. MvcPager分页控件以适用Bootstrap

    随笔- 9  文章- 0  评论- 33  修改MvcPager分页控件以适用Bootstrap 效果(含英文版,可下载)   软件开发分页效果必不可少,对于Asp.Net MVC 而言,MvcPag ...

  5. [译]Java 设计模式之适配器

    (文章翻译自Java Design Pattern: Adapter) 适配器模式在现在的Java框架中被频繁的用到. 当你想去使用一个存在的类而且它的接口和你需要的不吻合,或者是你想去创建一个可复用 ...

  6. leetcode Binary Tree Postorder Traversal 二叉树后续遍历

    先给出递归版本的实现方法,有时间再弄个循环版的.代码如下: /** * Definition for binary tree * struct TreeNode { * int val; * Tree ...

  7. 今天用C#做的一个小的注册练习

    下边是实现的代码: using System;using System.Collections.Generic;using System.ComponentModel;using System.Dat ...

  8. Lambda表达式的几种使用方式

    Lambda 的表达式的编写格式如下: x=> x * 1.5 当中 “ => ” 是 Lambda 表达式的操作符,在左边用作定义一个参数列表,右边可以操作这些参数. 例一, 先把 in ...

  9. 昨天面试新浪 java试题

      昨天去了新浪网面试,感觉新浪真的挺不错的,工作环境那叫一个好啊.对于一般屌丝的话进到这种公司就可以呆一辈子了.做了面试之后感觉不管大公司还是小公司都还是注重基础和你平时工作的积累的.所以不能抱怨现 ...

  10. How To Configure Logging And Log Rotation In Apache On An Ubuntu VPS

    Introduction The Apache web server can be configured to give the server administrator important info ...