iptables

mac2022-06-30  71

防火墙的发展版本       机制       命令2.2版本    ipfw         ipfwadm2.4版本   ipchain     ipchains2.6版本   netfilter   iptablesiptables的结构:四张表raw                mangle           nat            filter每张表还包含了链INPUTOUTPUTFORWARDman iptables表里面包含链,链里面写一条一条的规则---->链---->规则规则的应用顺序表的匹配顺序raw-->mangle-->nat-->filter链的匹配顺序 取决于数据流向规则的匹配顺序第一条规则,匹配上就不会再向后如果匹配不到,再匹配第二条如果所有匹配完还没匹配,使用默认规则iptables标准用法iptables [-t 表名] 命令选项 [链名] [条件匹配] [-j目标动作 或 跳转]不写表名代表的是filter表=======命令选项:-A 追加-D 删除表里面链的规则-I 插入一条规则 默认插入到第一个规则-L 罗列-F 清空-X 删除一个链,一般删除自定义链-P  默认规则-E  重命名一个链iptables -t nat -L 查看nat表关于icmp协议进站的都丢弃iptables -t filter -A INPUT -p icmp -j DROPiptables -nL 不做名称解析罗列关于icmp协议的都接收iptables -t fileter -I INPUT -p icmp -j ACCEPT删除filter表里面input链的第一条规则iptables -D INPUT 1清空filter表INPUT链iptables -F INPUTiptables -F 清空filter表iptables -P OUTPUT DROP限定端口号 dport目标端口  sport源端口iptables -A INPUT -p tcp --dport 22 -j ACCEPT========条件匹配:协议匹配地址匹配 -s源地址 -d目标地址  -i网络接口=对应接收数据包 -o网络接口=发送数据包filter表里面来自这个ip地址的进站消息全部丢弃iptables -A INPUT -s 192.168.0.250 -j DROP只要是出站的目标地址是它的就丢弃iptables -I OUTPUT -d 192.168.0.250 -j DROP进站的 eth0接口的进站的全部丢弃iptables -I INPUT -i eth0 -j DROP从etho接口出站的iptables -I OUTPUT -o eth0iptables -I INPUT -p icmp -s 192.168.0.250 -j DROP使用某个协议匹配某个端口来过滤服务iptables -A INPUT -p tcp --dport 22 -j DROPiptables -A INPUT -p tcp --dport 53 -j DROP tcp53端口是DNS服务仅允许 254 和 自己 去访问自己的httpd服务iptables -I INPUT -s 192.168.0.254 -p tcp --dport 80  -j ACCEPTiptables -A INPUT -s 192.168.0.250 -p tcp --dport 80  -j ACCEPTiptables -P INPUT -p tcp --dport 80 DROP或iptables -A INPUT   -s 192.168.0.250 -p tcp --dport 80  -j ACCEPTiptables -I INPUT  ! -s 192.168.0.254 -p tcp --dport 80  -j DROP端口匹配必须和协议匹配结合一起使用man icmp得到icmp的一些参数 0接收包  8回应包iptables -A INPUT -p icmp --icmp-type 8 -j DROP 回应包drop掉=====目标动作和跳转DROP ACCEPT REJECTDROP直接丢弃数据包不会给你任何响应信息,REJECT拒绝数据包通过,不过会给数据发送端响应信息iptables -N Mylan1iptables -nL由源地址过来的都交给Mylan1来处理iptables -A INPUT -s 192.168.0.250 -j Mylan1iptables -A Mylan1 -p icmp -j DROPiptables -X Mylan1 删除自定义的链但是删除前要先清空该链iptables  -F========nat表  网络地址转换snat 源地址转换来自于这个网段的地址 从eth1这个接口出去的 做源地址转换 转换成219地址iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth1 -j SNAT --to-soruce 219.29.30.31dnat 目标地址转换iptables -t nat -A PRTROUTING -d 218.29.30.31 -i eth0 -p tcp --dport 80 -j DNAT --to-destination 192.168.0.254重启生效/etc/init.d/iptables save 保存,自动保存到下面的文件中vim /etc/sysconfig/iptablesiptables-save > /etc/sysconfig/iptablesiptables-restore < /etc/sysconfig/iptableschkconfig iptables ontcp_wrappers tcp被包裹起来的机制ldd  /usr/bin/ssh 查看它是非被wrapp机制包裹/etc/host.allow  允许那些客户端来访问ALL:127.  所有服务自己可以访问sshd: ALL 所有人都可以sshdrpcbind,mountd  192.168.0.0/etc/host.deny   拒绝哪些客户端来访问ALL:ALL 先匹配host.allow,匹配到就允许,匹配不到再去再去deny文件

转载于:https://www.cnblogs.com/augustyang/p/6087240.html

相关资源:JAVA上百实例源码以及开源项目
最新回复(0)