也想出现在这里? 联系我们

防火墙Firewall设置方法之iptables篇

作者 : 小编 本文共3709个字,预计阅读时间需要10分钟 发布时间: 2021-06-11 共1.26K人阅读
也想出现在这里? 联系我们

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.jb51.net 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之上博客

1. 本站所提供的源码模板(主题/插件)等资源仅供学习交流,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担,有部分资源为网上收集或仿制而来,若模板侵犯了您的合法权益,请来信通知我们(Email: rayer@88.com),我们会及时删除,给您带来的不便,我们深表歉意!
2. 分享目的仅供大家学习和交流,请不要用于商业用途!
3. 如果你也有好源码或者教程,可以到用户中心发布投稿,分享有金币奖励和额外收入!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务 请大家谅解!
5. 如有链接无法下载、失效或广告,请联系站长,可领回失去的金币,并额外有奖!
6. 如遇到加密压缩包,默认解压密码为"www.zyfx8.cn",如遇到无法解压的请联系管理员!
本站部分文章、资源来自互联网,版权归原作者及网站所有,如果侵犯了您的权利,请及时联系我站删除。免责声明
资源分享吧 » 防火墙Firewall设置方法之iptables篇

常见问题FAQ

免费下载或者VIP会员专享资源能否直接商用?
本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
织梦模板使用说明
你下载的织梦模板并不包括DedeCMS使用授权,根据DedeCMS授权协议,除个人非盈利站点外,均需购买DedeCMS商业使用授权。购买地址: http://www.desdev.cn/service-dedecms.html

发表评论

Copyright 2015-2020 版权所有 资源分享吧 Rights Reserved. 蜀ICP备14022927号-1
开通VIP 享更多特权,建议使用QQ登录