Firewall防火墙,工作在网络或主机的边缘,对进出本网络或主机的数据包根据事先设置好的规则进行检查并且能够在数据包匹配到之后由预置的动作进行处理的组件的组合
Firewall 防火墙,工作在网络或主机的边缘,对进出本网络或主机的数据包根据事先设置好的规则进行检查并且能够在数据包匹配到之后由预置的动作进行处理的组件的组合,有规则(符合条件,就有规则指定的动作进行处理);
主机防火墙:管理本主机;
网络防火墙:管理整个网络;
防火墙的分类:
1、包过滤型防火墙:工作在TCP/IP层,根据tcp首部或ip首部数据进行判断,安全性较
低,效率较高;
1、简单包过滤;
2、带状态检测的包过滤;
1)NEW状态;-建立连接;
2)ESTABLISHED状态;-建立连接并传输数据;
3)INVALID状态(无法识别的状态);
4)RELATED(相关联的状态);
2、应用层网关防火墙:工作在应用层,根据数据包传输的实际数据进行判断,安全性较高,效率较低;
防火墙工作在内核空间,需要在内核空间开口子去定义规则(只有管理员可以定义规则,命令是否正确等),在内核上开的口子称为Netfilter(网络过滤器);
地址转换功能:NAT 网络地址转换;
1)SNAT 源网络地址转换;在POSTROUTING上做转换;
连接跟踪;
2)DNAT目标地址转换;在PREROUTING上做转换;
mangle 数据包每经过一次路由减1然后将ip首部打开修改TTL值加1,让访问用户不知
道有防火墙;
raw----没多做解释;
filter过滤在INPUT,OUTPUT和FORWARD接口上;
nat地址转换在PREROUTING,POSTROUTING,OUTPUT接口上;
mangle在PREROUTING,INPUT,FORWARD,OUTPUT,POSTROUTING接口上;
raw在PREOUTING和OUTPUT接口上;
优先级排序:raw--->mangle--->nat--->filter
iptables命令用法:
iptables [-t TABLE] COMMAND CHAIN [creteria] -j ACTION
-t {raw|mangle|nat|filter},默认filter
COMMAND的分类:
规则管理类:
-A 追加到最后一条(append);
-I # 插入第几条(insert);
-D # 表示删除第几条(delete);
-R # 表示替换某条规则;
链接管理类:
-F 清空(flush)链中规则,加链表示清空某条链;
-N 新建链(new),可以用-j跳转到这个链上;
-X 删除自己定义的空链;
-E 重命名(rename);
默认策略:
-P (policy);
清空计数器:
-Z (zero);
每条规则(包括默认策略)都有两个计算器;
1)被此规则匹配到的所有数据包的个数;
2)被此规则匹配到的所有数据包的大小之和;
查看类:
-L (list)列表的格式显示;
-L的子选项:-n (以纯数字的格式显示numeric);
-v 详细的信息(verbose),-vv或-vvv更详细;
-x 显示精确信息不做单位换算(exactly);
--line-numbers 规则显示行号;
匹配条件creteria:
基本匹配:
-s SOURCE:(IP,NETWORK)或加!表示取反(例:! -s NETWORK);(可以省略表示多有主机)
-d DESTIONIP(目标地址);
-p {tcp|udp|icmp};
-i INTERFACE 表示从哪个网卡流进来;(仅用于INPUT,FORWARD,POSTROUTING)
-o INTERFACE 表示从哪个网卡去;(仅用于OUTPUT,FORWARD,PRETROUTING)
扩展匹配:指的是调用iptables的模块,以便扩展iptables的匹配功能;
隐含扩展
-p tcp
--sport PORT
--dport PORT
--tcp-flags 检查tcp的标志位;
只检查ACK,SYN,RST,FIN
SYN的简写--syn
-p udp
--sport PORT
--dport PORT
-p icmp
--icmp-type
ping命令的TYPE:
echo-request请求用8代替; www.lovean.com
echo-reply 回应用0代替;
3----自己查看TCP/IP详解书;
显示扩展(必须用-m指定检测状态);
-m state --state 检测状态
-m multiport这个模块匹配一组源或目标端口,可以指定多达15个端口;
--source-ports 22,53,80
--destination-ports 22,53,80
--ports 22,53,80
-m iprange(指定ip范围)
--src-range ip-ip
--dst-range ip-ip
-m connlimit(并发连接限定)
--connlimit-above # (超过#个)
-m limit
--limit rate 限定速率;
--limit-burst number 限定峰值;
-m string 字符串匹配;
--algo bm|kmp(算法);
--string “STRING”
-m time 时间限制;
--timestart value(10:00);
--timestop value
--days lsitofday
--datestart date
--datestop date
-j ACTION(ACTION的选项);
ACCEPT 允许;
DROP 拒绝(悄悄的丢弃);
REJECT 拒绝(直接拒绝);
SNAT 源地址转换;
DNAT 目标地址转换;
REDIRECT 重定向端口;
RETURN 返回INPUT链;
如何开放FTP服务:
模式下:
tcp 20(数据),21(命令);
被动模式下:
tcp 21,>1023的端口;
上述需要将RELATED(相关联的状态)打开;
modprobe ip_nat_ftp
lsmod | grep tcp
redhat中iptables的脚本文件为/etc/rc.d/init.d/iptables
service iptables start 启用保存的规则;
service iptables stop 清空链;
/etc/sysconfig/iptables 保存规则的文件;
/etc/sysconfig/iptables-config 向iptables脚本提供配置文件的文件;
将规则保存到配置文件中的方法:
1)service iptables save 将规则保存到配置文件中的命令;
2)iptables-save > /etc/sysconfig/iptables-test (将生效的规则保存至自己指定文件中);
iptables-restore < /etc/sysconfig/iptables-test (从另外自己指定的规则文件启用规则);
地址转换:
源地址转换:
-j SNAT --to-source 192.168.100.1 指定源地址转换成其它地址;
-j MASQUERADE(地址伪装,比SNAT占用更多的资源,当ADSL拨号上网做转换时比较常用);
目标地址转换:一般要限定协议和端口;
-j DNAT --to-destination 192.168.100.2
PNAT端口转换:
-j DNAT --to-destination 192.168.100.2[:port]请求的和转发的相同可省略,不相
同不省略;
-j LOG 转发日志;
--log-prefix “DNAT for web”可以与-m limit --limit 3/minute --limit-burst 3合用;
利用iptables的recent模块来抵御DOS攻击;(以拒绝服务的方式实现,很有限)
-m recent
--set --name SSH
--update --seconds 300 --hitcount 3
利用iptables的recent模块来抵御DOS攻击示例;
ssh: 远程连接,
iptables -I INPUT -p tcp --dport 22 -m connlimit --connlimit-above 3 -j DROP
iptables -I INPUT -p tcp --dport 22 -m state --state NEW -m recent --set --name SSH
iptables -I INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 300 --hitcount 3 --name SSH -j DROP
1.利用connlimit模块将单IP的并发设置为3,会误杀使用NAT上网的用户,可以根据实际情况增大该值;
2.利用recent和state模块限制单IP在300s内只能与本机建立3个新连接,被限制一分钟后即可恢复访问;
下面对最后两句做一个说明:
1.第一句是记录访问tcp 22端口的新连接,记录名称为SSH;
--set 记录数据包的来源IP,如果IP已经存在将更新已经存在的条目;
2.第三句是指SSH记录中的IP,300s内发起超过3次连接则拒绝此IP的连接;
--update 是指每次建立连接都更新列表;
--seconds必须与--rcheck或者--update同时使用;
--hitcount必须与--rcheck或者--update同时使用;
3.iptables的记录:/proc/net/ipt_recent/SSH
摘自 凌驾于linux之上博客
最新资讯
苹果或曾计划发布金色款iPhone X

苹果或曾计划发布金色

据该文件送审的时间推测,苹果本来计划在去年九月份发布
从什么时候起,你玩游戏开始考虑时间成本了?

从什么时候起,你玩游戏

于是,虽然现在游戏已经是消费成本最低的娱乐之一,但玩游
印度创企Milkbasket,靠什么在杂货电商领域脱颖而出

印度创企Milkbasket,靠

当你打开冰箱发现第二天需要喝的牛奶已经没有了或者你
中美贸易战升级,对哪国CPI影响更大?

中美贸易战升级,对哪国

就通胀影响而言,特朗普挑起的中美贸易战如果全面开打,真
美团买摩拜买的是什么?

美团买摩拜买的是什么

美团买的是街头的自行车吗?
Facebook 深陷泥潭,扎克伯格打不好的广告牌

Facebook 深陷泥潭,扎

每一个在互联网世界里走过一遭的人,谁都别想全身而退。
最新文章
电脑磁碟机病毒如何彻底查杀?如何规避电脑磁碟机病毒?

电脑磁碟机病毒如何彻

磁碟机木马最近成为安全领域的热门话题,“磁碟机”木
四招让你的电脑裸奔也不会中毒

四招让你的电脑裸奔也

大家都知道在自己的电脑上必须安装一个杀毒软件,这样使
U盘Ripper病毒无法删除的解决方法

U盘Ripper病毒无法删

昨天我发现的这个毒,用的是Nod32,不过清除不了,便写了这
ESET不能卸载怎么办?

ESET不能卸载怎么办?

为什么我的ESET卸载不干净,安装卡巴时提示,下面教你手动
1KB文件夹快捷方式病毒清除软件

1KB文件夹快捷方式病

1KB文件夹快捷方式病毒清除专用附件包含三部分。
 彻底消灭gggdu.com修复IE无法搜索的问题

彻底消灭gggdu.com修

突然发现IE7的搜索框不能用了,以为是IE出了问题,几次修