iptables总结

简介:
自己写了一个iptables,不知道如何?因为有bind服务,加上ftp服务,加上samba服务,加上httpd服务器端口是允许的。网友们多多提一下意见!
#!/bin/sh
# this is  command for NAT
service iptables restart
#start ip_forward 
echo 1 >/proc/sys/net/ipv4/ip_forward
#clean default set
iptables -F
iptables -X
iptables -F -t mangle
iptables -t mangle -X
iptables -F -t nat
iptables -t nat -X
iptables -Z -t nat
#setup filter table  ruler
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP
#accept protocol
modprobe ip_conntrack_ftp
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state NEW -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j ACCEPT
iptables -A INPUT -p udp --dport 137 -j ACCEPT
iptables -A INPUT -p udp --dport 138 -j ACCEPT
iptables -A INPUT -p tcp --dport 139 -j ACCEPT
iptables -A INPUT -p tcp --dport 445 -j ACCEPT
iptables -A INPUT -i lo -p all -j ACCEPT 
iptables -A OUTPUT -p tcp --sport 31337 -j DROP
iptables -A OUTPUT -p tcp --dport 31337 -j DROP
iptables -A INPUT -p icmp -j ACCEPT

iptables -A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
iptables -A FORWARD -p TCP ! --syn -m state --state NEW -j DROP
iptables -A FORWARD -f -m limit --limit 100/s --limit-burst 100 -j ACCEPT
iptables -A FORWARD -p icmp -m limit --limit 1/s --limit-burst 10 -j ACCEPT
iptables -t nat -A PREROUTING -i eth0 -s 192.168.100.0/24 -j DROP
iptables -A INPUT   -m state --state INVALID -j DROP
iptables -A OUTPUT  -m state --state INVALID -j DROP
iptables -A FORWARD -m state --state INVALID -j DROP
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#start NAT 
iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o eth0 -j SNAT --to-source 192.168.20.xx
 [root@zh888 net]# iptables -L -n
Chain INPUT (policy DROP)
target     prot opt source               destination         
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:21 
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:22 
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:80 
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:53 
ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:137 
ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:138 
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:139 
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:445 
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           
ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0           
DROP       all  --  0.0.0.0/0            0.0.0.0/0           state INVALID 
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
Chain FORWARD (policy DROP)
target     prot opt source               destination         
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           
DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp flags:!0x17/0x02 state NEW 
ACCEPT     all  -f  0.0.0.0/0            0.0.0.0/0           limit: avg 100/sec burst 100 
ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0           limit: avg 1/sec burst 10 
DROP       all  --  0.0.0.0/0            0.0.0.0/0           state INVALID
Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         
DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp spt:31337 
DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:31337 
DROP       all  --  0.0.0.0/0            0.0.0.0/0           state INVALID 
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 
 
[root@zh888 net]# iptables -L -t nat
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         
DROP       all  --  192.168.100.0/24     anywhere           
Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination         
SNAT       all  --  192.168.100.0/24     anywhere            to:192.168.20.xx
Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         
 

本文转自zh888 51CTO博客,原文链接:http://blog.51cto.com/zh888/649572,如需转载请自行联系原作者

相关文章
|
7月前
|
网络协议 Linux 网络安全
iptables 的四表五链
iptables 是 Linux 系统上用于定义防火墙规则的工具,它通过四个表和五个链来进行配置。下面是这些表和链的详细说明: 四个表: 1. filter 表:filter 表是最常用的表,用于过滤数据包。它包含了 INPUT、OUTPUT 和 FORWARD 三个默认的链。 2. nat 表:nat 表用于网络地址转换 (NAT)。它包含了 PREROUTING、POSTROUTING 和 OUTPUT 三个默认的链。nat 表用于修改数据包的 IP 地址和端口。 3. mangle 表:mangle 表用于修改数据包的特定字段,如 TTL(生存时间)、TOS(服务类型)等。它包含了
160 1
|
2天前
|
网络协议 网络安全
Iptables小总结
Iptables小总结
|
安全 网络协议 Linux
扒一下一直不求甚解的 iptables
iptables 是用于配置 Linux 2.4.x 及更高版本包过滤规则集的用户空间命令行程序。它针对系统管理员。 由于网络地址转换 (NAT) 也是从包过滤规则集配置的,iptables 也用于此。 iptables 包还包括 ip6tables。ip6tables 用于配置 IPv6 包过滤器。
扒一下一直不求甚解的 iptables
|
Kubernetes 网络协议 算法
Iptables 介绍与使用
Iptables 介绍与使用
355 0
Iptables 介绍与使用
|
网络协议 Linux 网络安全
|
网络协议 网络安全 网络虚拟化
|
网络协议 算法 网络安全
|
Web App开发 网络协议 网络安全
|
网络协议 网络安全