#警告:在运行脚本后,勿必单独运行 iptables -F
#因为脚本包含的默认规则为“禁止所有访问”
#当其它规则被清除后,系统表现为无法访问状态,需要重启系统恢复
#iptables -L 查看当前已应用的规则

#eth0 外网网卡
#eth1 内网网卡
#lo 本地环路

#加载模块
modprobe ip_tables

#清除规则
iptables -F
iptables -t nat -F
iptables -t mangle -F

#默认规则:禁止所有数据出入
#当没有匹配规则时生效
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

#允许本地访问
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

#允许内网
iptables -A INPUT -i eth1 -j ACCEPT
iptables -A OUTPUT -o eth1 -j ACCEPT

#允许ping
iptables -A INPUT -p icmp -j ACCEPT

#开放WEB服务
iptables -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT

#接收外部网站的接口数据
iptables -A INPUT -i eth0 -p tcp --sport 80 -j ACCEPT

#外网非法TCP限制
iptables -A INPUT -i eth0 -p tcp --tcp-flags ALL FIN,URG,PSH -j DROP
iptables -A INPUT -i eth0 -p tcp --tcp-flags ALL ALL -j DROP
iptables -A INPUT -i eth0 -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -j DROP
iptables -A INPUT -i eth0 -p tcp --tcp-flags ALL NONE -j DROP
iptables -A INPUT -i eth0 -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
iptables -A INPUT -i eth0 -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP

#启用DNS端口,不开启会导致访问缓慢
iptables -I INPUT -i eth0 -p udp --sport 53 -j ACCEPT
iptables -I INPUT -i eth0 -p tcp --sport 53 -j ACCEPT

#开启时间同步端口
iptables -A INPUT -i eth0 -p tcp --sport 123 -j ACCEPT
iptables -A INPUT -i eth0 -p udp --sport 123 -j ACCEPT

#防洪水攻击,目前不生效
#iptables -N synfoold
#iptables -A synfoold -p tcp --syn -m limit --limit 100/s -j RETURN
#iptables -A synfoold -p tcp -j REJECT --reject-with tcp-reset
#iptables -A INPUT -p tcp -m state --state NEW -j synfoold

#保存至文件
/etc/rc.d/init.d/iptables save

#重启服务
#service iptables restart

#结束

#以下是额外的访问规则

#开放外网的管理端口
Allow_ip="222.222.222.222"
#iptables -A INPUT -i eth0 -s $Allow_ip -j ACCEPT

iptables -A INPUT -i eth0 -s $Allow_ip -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -i eth0 -s $Allow_ip -p tcp --dport 20 -j ACCEPT
iptables -A INPUT -i eth0 -s $Allow_ip -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -i eth0 -s $Allow_ip -p tcp --dport 8888 -j ACCEPT

#允许外部的数据访问
#iptables -A INPUT -i eth0 -p tcp --dport 3306 -j ACCEPT

linux 的一个防火墙策略的更多相关文章

  1. Linux中的iptables防火墙策略

    0x01 简介 iptables其实不是真正的防火墙,我们可以把它理解成一个客户端代理,用户通过iptables这个代理,将用户的安全设定执行到对应的"安全框架"中,这个" ...

  2. Linux下iptables防火墙用法规则详解

    管理网络流量是系统管理员必需处理的最棘手工作之一,我们必需规定连接系统的用户满足防火墙的传入和传出要求,以最大限度保证系统免受×××.很多用户把 Linux 中的iptables当成一个防火墙,从严格 ...

  3. LINUX中IPTABLES防火墙使用

    对于有公网IP的生产环境VPS,仅仅开放需要的端口,即采用ACL来控制IP和端口(Access Control List). 这里可以使用Linux防火墙netfilter的用户态工具 iptable ...

  4. Linux网络——配置防火墙的相关命令

    Linux网络——配置防火墙的相关命令 摘要:本文主要学习了如何在Linux系统中配置防火墙. iptables命令 iptables准确来讲并不是防火墙,真正的防火墙是运行于系统内核中的netfil ...

  5. Linux基础之防火墙

    Linux基础之防火墙 Iptables   最初认识iptables还是在安卓手机上玩tiny的时候知道的,什么扫地僧.Jume等防跳脚本都基于iptables原理,一直觉得iptables的命令很 ...

  6. Linux中的防火墙(Netfilter、Iptables、Firewalld)

    目录 Netfilter Iptables iptables做本地端口转发 Firewalld Netfilter Netfilter是Linux 2.4内核引入的全新的包过滤引擎,位于Linux内核 ...

  7. Linux下系统防火墙的发展历程和怎样学好防火墙(iptalbes和firewalld)

    有关firewalld和iptables详细使用的文章 iptables详解 firewalld详解 =====================================华丽的分割线====== ...

  8. 9.Linux之iptables防火墙

    Linux之iptables防火墙 目录 Linux之iptables防火墙 iptables防火墙概述 netfilter和iptables之间的关系 netfilter iptables ipta ...

  9. Linux 7.x 防火墙&端口

    Linux 7.x 防火墙&端口 查看当前防火墙的状态: # firewall-cmd --state 也可以使用指令:systemctl status firewall.service 启动 ...

随机推荐

  1. [LeetCode] Minimum Size Subarray Sum 解题思路

    Given an array of n positive integers and a positive integer s, find the minimal length of a subarra ...

  2. 【ACM/ICPC2013】线段树题目集合(一)

    前言:前一段时间在网上找了一个线段树题目列表,我顺着做了一些,今天我把做过的整理一下.感觉自己对线段树了解的还不是很深,自己的算法能力还要加强.光练代码能力还是不够的,要多思考.向队友学习,向大牛学习 ...

  3. SRM 447(1-250pt, 1-500pt)

    DIV1 250 水题...略. DIV1 500 抽象题意:有一个图,指定其中亮点p1和p2,删掉途中其他的一些点,使得p1和p2最短路大于3. 解法:使得p1和p2最短路为2的点一定要删掉.然后, ...

  4. Java集合类操作优化经验总结

    本文首先针对 Java 集合接口进行了一些介绍,并对这些接口的实现类进行详细描述,包括 LinkedList.ArrayList.Vector.Stack.Hashtable.HashMap.Weak ...

  5. 找回linux丢失的磁盘空间

    最近一台服务器空间总是报警,磁盘空间不足. 使用 df 命令查看,磁盘空间耗用接近 100%,将机器上过期的数据以及日志清理掉,但是空间很快又是接近 100%. 使用 du 查看,想找出磁盘空间被耗用 ...

  6. Linux下常用I/O模型

    Linux异步I/O是Linux内核中提供的一个相当新的增强.它是2.6版本内核的一个标准特性,异步非阻塞I/O背后的基本思想是允许进程发起很多I/O操作,而不用阻塞或等待任何操作完成.稍后或在接收到 ...

  7. hdoj 2647 N!Again

    N!Again Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Sub ...

  8. js去除空格

    function trim(str){ return str.replace(/(^\s*) | ( \s*$ )/g,"" ); }

  9. WEB DYNPRO SAP HELP

    http://help.sap.com/saphelp_nw70ehp1/helpdata/EN/43/70d83e8cb23d67e10000000a114084/content.htm

  10. I2C和SCCB协议的小区别和误区

    I2C采用的是7位地址数据,首字节最低位代表读写位,第二字节SUB寄存器高位为1表示自动加subaddress SCCB采用的是8位地址数据,比如0x42,B01000010 使用I2C协议时,第一次 ...