Day65-企业级防火墙iptables精讲1
- 补充:
- 1.什么是防火墙?
- 2.防火墙种类
- 2.1 商用防火墙介绍
- 2.2 Linux下防火墙介绍
- 3.选择何种防火墙?
- 4.企业级架构最佳防火墙场景
- 5.学好iptables的技术栈基础
- 6.Iptables是什么?
- 7.Iptables企业常用场景
- 8.Iptables工作流程
- 9.iptables的表(tables)和链(chains)
- 10.iptables工作原理见图
- 11.iptables实践:
- 12.安装iptables web01
- 13.启动和查看iptables状态
- 14.检查内核模块:
- 15.iptables命令使用
- 15.1 需求1:禁止所有主机访问22端口:
- 15.2 需求2:禁止对10.0.0.1(vnet8)访问
- 15.3 需求3:只允许办公网的IP段访问服务器SSH。
- 15.4 需求4:封单个IP:
- 15.5 需求5:自己的人可以ping,其他人不能ping
- 15.6 需求6:让10.0.0.7和SSH客户端(10.0.0.1)服务器可以Ping,其它的不能Ping
- 16. 企业级防护墙项目:部署一个最安全的企业级防火墙(案例)
- 17. 生产场景维护iptables:
补充:
1.部署bbs产品(www.discuz.net)
URL实现伪静态,理解rewrite规则。
# 论坛主题列表页 {fid}, {page} forum-{fid}-{page}.html# 帖子列表页:
http://bbs.etiantian.org/forum.php?mod=forumdisplay&fid=2# 伪静态:
http://bbs.etiantian.org/forum-2-1.html
rewrite ^([^\.]*)/forum-(\w+)-([0-9]+)\.html$ # \w 任意单词字符 [_0-9a-zA-Z]$1/forum.php?mod=forumdisplay&fid=$2&page=$3 last;
http://bbs.etiantian.org/forum.php?mod=forumdisplay&fid=2&page=1# 帖子页:
http://bbs.etiantian.org/forum.php?mod=viewthread&tid=1&extra=page%3D1# 论坛主题内容页 {tid}, {page}, {prevpage} thread-{tid}-{page}-{prevpage}.htmlhttp://bbs.etiantian.org/thread-1-1-1.html
rewrite ^([^\.]*)/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ $1/forum.php?mod=viewthread&tid=$2&extra=page%3D$4&page=$3
http://bbs.etiantian.org/forum.php?mod=viewthread&tid=1&extra=page%3D1&page=1rewrite ^([^\.]*)/forum-(\w+)-([0-9]+)\.html$ $1/forum.php?mod=forumdisplay&fid=$2&page=$3 last;
rewrite ^([^\.]*)/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ $1/forum.php?mod=viewthread&tid=$2&extra=page%3D$4&page=$3 last;
if (!-e $request_filename) {return 404;
}
链接: http://www.netfilter.org/projects/iptables/index.html
iptables哲学:
学习防火墙的最高境界就是不使用防火墙,服务器还能更安全! ——老男孩
使用iptables的最高境界,永远都不使用哲学
1)服务器不给外网IP。
2)大并发网站不开Iptables,使用硬件防火墙。
1.什么是防火墙?
放在企业网站或应用的前部,用来阻挡异常攻击、渗透,保护企业网站或应用的安全
2.防火墙种类
2.1 商用防火墙介绍
华为
深信服
思科
H3C
Juniper
天融信
飞塔
网康
绿盟科技
金盾
2.2 Linux下防火墙介绍
ipfwadm,ipchains,是iptables祖先。
iptables火了20年。。
firewalld
3.选择何种防火墙?
有条件选择硬件无疑
iptables和firewalld
4.企业级架构最佳防火墙场景
架构在网站最前端上联口交换机前。
5.学好iptables的技术栈基础
1.OSI7层模型以及不同层对应常用协议?
2.熟练掌握TCP/IP三次握手,四次断开原理。
3.熟悉TCP头及11种状态转换。
4.熟练掌握OSI7层模型封包解包流程。
5.熟练掌握局域网通信原理及广域网通信原理。
6.常用的服务端口要了如指掌。
推荐阅读:【tcp/ip协议卷1】
6.Iptables是什么?
是Linux下自带(C7以前)的开源的一款免费的基于包过滤的防火墙工具,
可以对流入、流出、流经服务器的数据包进行精细的控制
Iptables主要工作在OSI七层的二、三、四层,如果重新编译内核,
Iptables也可以支持7层控制(squid代理+iptables)。
7.Iptables企业常用场景
1、场景1:做主机防火墙功能(filter表的INPUT链)。
2、场景2:局域网共享上网,做网关(nat表的POSTROUTING链)。半个路由器,NAT功能,zebra+squid。
3、场景3:端口及IP映射(nat表的PREROUTING链),硬防的NAT功能。
4、场景4:实现IP一对一映射(DMZ)。
8.Iptables工作流程
iptables是采用数据包过滤机制工作的,所以它会对请求的数据包的包头数据进行分析,并根据我们预先设定的规则进行匹配来决定是否可以进入主机。
iptables工作流程小结:
1、防火墙是一层层过滤的。实际是按照配置规则的顺序从上到下,从前到后进行过滤的。
2、如果匹配上了规则,即明确表明是阻止还是通过,此时数据包就不在向下匹配新规则了。
3、如果所有规则中没有明确表明是阻止还是通过这个数据包,也就是没有匹配上规则,向下进行匹配,
直到匹配默认规则得到明确的阻止还是通过。
4、防火墙的默认规则是对应链的所有的规则执行完以后才会执行的(最后执行的规则)。
问题:有人恶意刷网站,如何封IP?
9.iptables的表(tables)和链(chains)
链:对进、出、经过起一个称呼区别下就叫表
表:按照功能区分,起一个称呼
包含关系
iptables(用户空间)==>netfilter(内核空间)
==>4个表(tables)===>5个链=(chains)==>规则(policy)
5表:
filter(作用:主机防火墙) ,iptables默认的表。*****
nat(作用:端口或IP映射或共享上网)*****
mangle(配置路由标记ttl\tos\mark),忽略
raw(忽略)
security:(忽略)
不同的表包含的链:
filter:INPUT,OUTPUT,FORWARD *****
NAT:POSTROUTING,PREROUTING,OUTPUT *****
mangle:INPUT,OUTPUT,FORWARD,POSTROUTING,PREROUTING
raw(忽略)
security:(忽略)
帮助:man iptables
链:
*INPUT:进入主机的数据包。主机防火墙(filter表的INPUT链)
OUTPUT:流出主机的数据包。
FORWARD:流经主机的数据包。
*PREROUTING:进入服务器最先经过的链,NAT端口或IP映射(导向)。(nat表的PREROUTING链)
*POSTROUTING:在流出服务器最后经过的链,NAT共享上网。局域网共享上网(nat表的POSTROUTING链)
面试题:精通4表5链及工作原理流程
10.iptables工作原理见图
Centos6 iptables()
Centos7 firewalld(用的很少)
11.iptables实践:
链接: https://www.cnblogs.com/fengzhilaoling/p/12454424.html
iptables,是Linux下自带的一款免费的基于包过滤的防火墙工具,
可以对流入、流出、流经服务的数据包进行精细的控制,而在centos7中将iptables给取消掉了,我们需要自行安装
12.安装iptables web01
1)关闭selinux
不关闭selinux,iptables不读取配置文件
# 临时关闭selinux
setenforce 0# 查看selinuxgetenforce
## Permissive# 永久关闭
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config #修改完成后需要重启才能生效
2)关闭firewalld并关闭开机自启
centos7中默认的防火墙是firewalld,使用iptables需要先关闭firewalld防火墙
#关闭防火墙
systemctl stop firewalld#关闭开机自启
systemctl disable firewalld#查看防火墙状态
systemctl status firewalld
3)安装iptables
rpm -qa iptables iptables-services
yum install iptables-services -y[root@web01 ~]# rpm -qa iptables iptables-services
iptables-services-1.4.21-35.el7.x86_64
iptables-1.4.21-35.el7.x86_64
13.启动和查看iptables状态
[root@web01 ~]# systemctl start iptables
[root@web01 ~]# systemctl enable iptables
[root@web01 ~]# cat /etc/sysconfig/iptables
# sample configuration for iptables service
# you can edit this manually or use system-config-firewall
# please do not ask us to add additional ports/services to this default configuration
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMITiptables -L -n 或iptables -L -n -v -x
查看启动状态命令:
iptables -nL --line-number
-n #<==以数字的形式显示规则
-L #<==列表链里的所有规则--line-number #<==打印规则序号
-t 指定表(default: `filter')
14.检查内核模块:
lsmod |egrep "nat|filter|ip"
[root@web01 ~]# lsmod |egrep "nat|filter|ip"
ipt_REJECT 12541 0
nf_reject_ipv4 13373 1 ipt_REJECT
nf_conntrack_ipv4 19149 0
nf_defrag_ipv4 12729 1 nf_conntrack_ipv4
nf_conntrack 143411 2 xt_conntrack,nf_conntrack_ipv4
iptable_filter 12810 0
ip_tables 27126 1 iptable_filter[root@web02 ~]# lsmod |grep ip
ip_tables 27126 0 ###真正处理规则的。
加载如下模块到linux内核
modprobe ip_tables
modprobe iptable_filter
modprobe iptable_nat
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
modprobe ipt_state[root@web01 ~]# cat /etc/rc.local
modprobe ip_tables
modprobe iptable_filter
modprobe iptable_nat
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
modprobe ipt_state[root@web01 ~]# lsmod |egrep "nat|filter|ipt"
nf_nat_ftp 12809 0
nf_conntrack_ftp 18478 1 nf_nat_ftp
iptable_nat 12875 0
nf_nat_ipv4 14115 1 iptable_nat
nf_nat 26583 2 nf_nat_ftp,nf_nat_ipv4
nf_conntrack 139264 6 nf_nat_ftp,nf_nat,xt_state,nf_nat_ipv4,nf_conntrack_ftp,nf_conntrack_ipv4
iptable_filter 12810 0
ip_tables 27126 2 iptable_filter,iptable_nat
libcrc32c 12644 3 xfs,nf_nat,nf_conntrack[root@web01 ~]# lsmod |egrep "nat|filter|ip"
nf_nat_ftp 12809 0
nf_conntrack_ftp 18448 1 nf_nat_ftp
iptable_nat 12875 0
nf_nat_ipv4 14115 1 iptable_nat
nf_nat 26583 2 nf_nat_ftp,nf_nat_ipv4
ipt_REJECT 12541 0
nf_reject_ipv4 13373 1 ipt_REJECT
nf_conntrack_ipv4 19149 1
nf_defrag_ipv4 12729 1 nf_conntrack_ipv4
nf_conntrack 143411 7 nf_nat_ftp,nf_nat,xt_state,nf_nat_ipv4,xt_conntrack,nf_conntrack_ftp,nf_conntrack_ipv4
iptable_filter 12810 0
ip_tables 27126 2 iptable_filter,iptable_nat
libcrc32c 12644 3 xfs,nf_nat,nf_conntrack
15.iptables命令使用
iptables -h
table 表
chain 链
rule 规则
[root@web01 ~]# iptables -h
iptables v1.4.21
Usage: iptables -[A] chain rule-specification [options] # 添加规则到链iptables -I chain [rulenum] rule-specification [options] # 插入规则到链iptables -D chain rulenum [options] # 根据规则号删除规则iptables -[FZ] [chain] [options] # 清除规则清除计数器iptables -[X] chain # 删除用户自定义的链。iptables -P chain target [options] # 针对链设置默认规则iptables -h # 帮助
Commands:
Either long or short options are allowed.--append -A chain # 添加规则到链--delete -D chain # 删除规则从链里--delete -D chain rulenum # 根据规则号删除--insert -I chain [rulenum] # 插入规则默认到第一条--list -L [chain [rulenum]] # 列表规则--flush -F [chain] # 清空所有规则--zero -Z [chain [rulenum]] # 计数器--policy -P chain target # 改默认规则Options:
--protocol -p proto # 针对协议过滤,例如`tcp'
--source -s address[/mask][...] # 基于源地址
--destination -d address[/mask][...] # 基于目的地址
--in-interface -i input name[+] # 指定进入接口
--jump -j target # 跳转
--numeric -n # 数字输出地址和端口
--out-interface -o output name[+] # 指定出去接口
--table -t table # 指定表(default: `filter')
--line-numbers # 显示规则号
命令:
iptables [-t table] -A chain rule-specification
iptables [-t table] -I chain [rulenum] rule-specification
iptables [-t table] -D chain rulenum #<==根据规则号删除。
iptables [-t table] -D chain rule-specification
注释:
-t # 指定表d(efault: `filter')
-A #<==把规则添加到指定的链上,默认添加到最后一行。
-I #<==插入规则到指定的链上,默认插入到第一行(封IP)。
-D #<==删除链上的规则
根据规则号删除:
iptables -D INPUT 4 #<==4是规则号。
-F #<==清除一个链或所有链上的规则
-Z #<==链的记数器清零
-X #<==删除用户自定义的链。
实践:针对默认的表filter操作
[root@web01 ~]# iptables -Z
[root@web01 ~]# iptables -X
[root@web01 ~]# iptables -F
[root@web01 ~]# iptables -nL
Chain INPUT (policy ACCEPT)
target prot opt source destination Chain FORWARD (policy ACCEPT)
target prot opt source destination Chain OUTPUT (policy ACCEPT)
target prot opt source destination
15.1 需求1:禁止所有主机访问22端口:
[root@web02 ~]# iptables -t filter -A INPUT -p tcp --dport 22 -j DROP
# 规则注释:
-p #<==指定过滤的协议-p(tcp,udp,icmp,all)
--dport #<==指定目标端口(用户请求的端口)。
-j #<==对规则的具体处理方法(ACCEPT,DROP,REJECT,SNAT,DNAT)
--sport #<==指定源端口。
# 恢复,从虚拟机平台进入,执行
[root@web01 ~]# iptables -nL
[root@web01 ~]# iptables -nL --line-numbers
[root@web01 ~]# iptables -D INPUT 1
15.2 需求2:禁止对10.0.0.1(vnet8)访问
[root@web01 ~]# iptables -I INPUT -p tcp -s 10.0.0.1 -i eth0 -j DROP
[root@web01 ~]# iptables -nL
Chain INPUT (policy ACCEPT)
target prot opt source destination
DROP tcp -- 10.0.0.1 0.0.0.0/0 ####增加的规则
取反:
[root@web01 ~]# iptables -A INPUT -p tcp ! -s 10.0.0.1 -i eth0 -j DROP
-s #<==指定源地址或网段(10.0.0.0/24)。 ! 取反。
-d #<==指定目的地址(nat表prerouting)。
-i #<==进入的网络接口(eth0,eth1)。
-o #<==出去的网络接口(eth0,eth1)。
15.3 需求3:只允许办公网的IP段访问服务器SSH。
iptables -I INPUT -p tcp -s 10.0.0.0/24 -i eth0 -j ACCEPT
iptables -I INPUT -p tcp -s 203.81.19.0/24 -i eth0 -j ACCEPT
办公网地址:10.0.0.0/24
所有机房公网局域网地址:203.81.19.0/24
15.4 需求4:封单个IP:
iptables -I INPUT -p tcp -s 10.0.0.1 -j DROP
为什么要封单个IP?
[root@web01 ~]# netstat -an|awk '/^tcp/'|grep -i est|wc -l
4
[root@web01 ~]# netstat -an|awk '/^tcp/'|grep -i est|awk -F "[: ]+" '{print $6}'|sort|uniq -c|head -10
4 10.0.0.1
如果第一列连接数大于100,把第二列封了
shell项目
匹配端口范围:
iptables -I INPUT -p tcp -m multiport --dport 21,23,24,80,3306 -j DROP #同时封21,23,24,80,3306端口
iptables -I INPUT -p tcp --dport 23:8809 -j DROP ##从23端口到8809端口
匹配ICMP类型
iptables -A INPUT -p icmp --icmp-type 8
iptables -A INPUT -p icmp --icmp-type 8 -j DROP
ICMP:
链接: http://www.cnitblog.com/yang55xiaoguang/articles/59581.html
内核参数:禁止PING
net.ipv4.icmp_echo_ignore_all=0
15.5 需求5:自己的人可以ping,其他人不能ping
默认规则是禁止的:
iptables -A INPUT -p icmp -s 192.168.1.0/24 --icmp-type 8 -j ACCEPT
15.6 需求6:让10.0.0.7和SSH客户端(10.0.0.1)服务器可以Ping,其它的不能Ping
iptables -I INPUT -p icmp --icmp-type 8 -s 10.0.0.51 -j ACCEPT
iptables -I INPUT -p icmp ! -s 10.0.0.1 --icmp-type 8 -j DROP
是有顺序的
匹配上:
1.丢弃
2.通过
匹配网络状态
-m state --stateNEW:已经或将启动新的连接ESTABLISHED:已建立的连接RELATED:正在启动的新连接INVALID:非法或无法识别的
#允许关联的状态包(ftp协议)
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
限制指定时间包的允许通过数量及并发数
-m limit --limit n/{second/minute/hour}:
指定时间内的请求速率"n"为速率,后面为时间分别为:秒、分、时
iptables -I INPUT -p icmp --icmp-type 8 -m limit --limit 6/min -j DROP
–limit-burst [n]
在同一时间内允许通过的请求"n"为数字,不指定默认为5
iptables -I INPUT -s 10.0.0.0/24 -p icmp --icmp-type 8 -m limit --limit 6/min --limit-burst 2 -j ACCEPT
链接: http://blog.csdn.net/gnicky/article/details/51334793
16. 企业级防护墙项目:部署一个最安全的企业级防火墙(案例)
1)两种思想:针对默认规则而言。
逛公园:黑名单 #部署企业网关
1、默认规则默认是允许的状态。
2、看谁不顺眼禁止。
看电影:白名单 更安全。 主机防火墙
1、默认规则默认是不允许的状态。
2、看谁顺眼让他通过。
看电影的思想更安全。部署主机防火墙 清一色看电影模式。
部署主机防火墙默认禁止模式
实战部署:
1)各种清零
[root@web02 ~]# iptables -F
[root@web02 ~]# iptables -X
[root@web02 ~]# iptables -Z
2)允许自己的网段及22端口通过。
[root@web02 ~]# iptables -A INPUT -s 10.0.0.0/24 -j ACCEPT
[root@web02 ~]# iptables -A INPUT -s 203.81.18.0/24 --dport 22 -j ACCEPT
[root@web02 ~]# iptables -A INPUT -p tcp --dport 22 -j ACCEPT ##演示,工作不用。
3)设置默认规则
[root@web02 ~]# iptables -P INPUT DROP
[root@web02 ~]# iptables -P FORWARD DROP
[root@web02 ~]# iptables -P OUTPUT ACCEPT
[root@web01 ~]# iptables -nL
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT all -- 10.0.0.0/24 0.0.0.0/0
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:22Chain FORWARD (policy DROP)
target prot opt source destination Chain OUTPUT (policy ACCEPT)
target prot opt source destination
4)设置其他允许
[root@web02 ~]# iptables -A INPUT -i lo -j ACCEPT
[root@web02 ~]# iptables -A INPUT -p tcp -m multiport --dport 80,443 -j ACCEPT
[root@web02 ~]# iptables -A INPUT -s 172.16.1.0/24 -j ACCEPT
[root@web02 ~]# iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
到目前为止,所有的操作都只在内存中生效。
操作过的命令集合:
iptables -F
iptables -X
iptables -Z
iptables -A INPUT -s 10.0.0.0/24 -j ACCEPT
iptables -A INPUT -s 203.81.18.0/24 --dport 22 -j ACCEPT
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
iptables -nL
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -p tcp -m multiport --dport 80,443 -j ACCEPT
iptables -A INPUT -p icmp -s 10.0.0.0/24 -m icmp --icmp-type any -j ACCEPT
iptables -A INPUT -s 172.16.1.0/24 -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
扫描测试最佳方法:使用云主机部署,用笔记本虚拟机扫描
[root@db01 ~]# nmap 10.0.0.7 -p 1-10000
Starting Nmap 6.40 ( http://nmap.org ) at 2021-08-05 18:15 CST
Nmap scan report for 10.0.0.7
Host is up (0.00020s latency).
Not shown: 9996 closed ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
111/tcp open rpcbind
3306/tcp open mysql
MAC Address: 00:0C:29:16:5F:D9 (VMware)
永久生效:/etc/sysconfig/iptables
[root@web01 ~]# iptables-save >/etc/sysconfig/iptables
[root@web01 ~]# cat /etc/sysconfig/iptables
# Generated by iptables-save v1.4.21 on Thu Aug 5 18:21:28 2021
*nat
:PREROUTING ACCEPT [14048:622306]
:INPUT ACCEPT [10215:450635]
:OUTPUT ACCEPT [59:4581]
:POSTROUTING ACCEPT [59:4581]
COMMIT
# Completed on Thu Aug 5 18:21:28 2021
# Generated by iptables-save v1.4.21 on Thu Aug 5 18:21:28 2021
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [85:6676]
-A INPUT -s 10.0.0.0/24 -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m multiport --dports 80,443 -j ACCEPT
-A INPUT -s 10.0.0.0/24 -p icmp -m icmp --icmp-type any -j ACCEPT
-A INPUT -s 172.16.1.0/24 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
COMMIT
# Completed on Thu Aug 5 18:21:28 2021
17. 生产场景维护iptables:
封掉一个IP,封掉端口
1、日常改/etc/sysconfig/iptables配置,添加到你想要的位置永久生效
-A INPUT -p tcp -m tcp --dport 3306 -j DROP
#封掉规则,要放在里面其他允许规则的上面才能生效。
#允许规则,要放在里面其他允许规则上面才能生效。
#重新加载:systemctl reload iptables
2、临时封Ip(-I),重启就没了。
iptables -I INPUT -s 203.71.78.10 -j DROP
3、常用的规则放在前面生效
把防火墙规则写成脚本:
#!/bin/bash
#this is a server firewall created by oldboy 17:03 2006-7-26
#updated by oldboy on 10:30 2009-6-23
#http://blog.etiantian.org
#qq:49000448
#define variable PATH
IPT=/sbin/iptables#Remove any existing rules
$IPT -F
$IPT -X
$IPT -Z#setting default firewall policy
$IPT --policy OUTPUT ACCEPT
$IPT --policy FORWARD DROP
$IPT -P INPUT DROP#setting for loopback interface
$IPT -A INPUT -i lo -j ACCEPT#setting access rules
#one,ip access rules,allow all the ips of
$IPT -A INPUT -s 202.81.17.0/24 -p all -j ACCEPT
$IPT -A INPUT -s 202.81.18.0/24 -p all -j ACCEPT
$IPT -A INPUT -s 124.43.62.96/27 -p all -j ACCEPT
$IPT -A INPUT -s 192.168.1.0/24 -p all -j ACCEPT
$IPT -A INPUT -s 10.0.0.0/24 -p all -j ACCEPT#icmp
$IPT -A INPUT -p icmp -m icmp --icmp-type any -j ACCEPT#others RELATED
$IPT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
重点:
1、iptables包过滤流程。
2、iptables4表5链作用和关系。
3、iptables工作原理(4表5链)。
4、iptables常用命令参数。
5、部署一个企业级主机防火墙案例。
??
此时其它表和链什么状态?
部署iptables防火墙的最高境界?
不用防火墙,服务器照样安全。
1、尽可能不给服务器配置外网IP。可以通过代理转发或者通过防火墙映射。
2、并发不是特别大情况再外网IP的环境,要开启iptables防火墙。
如果并发量很大,不能开iptables,影响性能,买硬件防火墙。
其他链接: http://edu.51cto.com/course/course_id-772.html