Linux iptables

1)、查看 iptables 规则
# iptables -t nat -nvL

-t 指定查看的表,如果不加,默认查看 filter 表
-n 表示不针对 IP 反解析主机名
-L 表示列出
-v 更详细

显示内容为:
num – 指定链中的规则编号
target – 前面提到的target的特殊值
prot – 协议:tcp, udp, icmp等
source – 数据包的源IP地址
destination – 数据包的目标IP地址

filter 表是过滤包的,包括 INPUT, OUTPUT, FORWARD
nat 表是网络地址转换的,包括 PREROUTING, OUTPUT, POSTROUTING
mangle 表是用于给数据包打标记,然后根据标记去操作哪些包,包括 PREROUTING, OUTPUT, POSTROUTING,INPUT,FORWARD
2)、清空 iptables 
iptables --flush
或者
iptables -F

这两条命令是等效的。但是并非执行后就万事大吉了。你仍然需要检查规则是不是真的清空了,因为有的linux发行版上这个命令不会清除NAT表中的规则,此时只能手动清除:

iptables -t NAT -F

3)、保存与启动 iptables 
# 保存iptables规则
service iptables save

# 重启iptables服务
service iptables stop
service iptables start

查看当前规则:

cat  /etc/sysconfig/iptables

4)、包以及流量计数器置零
# iptables -Z

5)、增加/删除一条规则
# iptables -A INPUT -s 10.72.11.12 -p tcp --sport 1234 -d 10.72.137.159 --dport 80 -j DROP  (添加到规则的下面)
# iptables -I INPUT -s 10.72.11.12 -p tcp --sport 1234 -d 10.72.137.159 --dport 80 -j DROP  (添加到规则的上面)
# iptables -D INPUT -s 10.72.11.12 -p tcp --sport 1234 -d 10.72.137.159 --dport 80 -j DROP  (删除一条规则)

注:位于上面的规则先生效

6)、备份恢复 iptables
#iptables-save >1.ipt
#iptables-restore <1.ipt


7)、例子:
# 1.清空所有iptables规则 iptables -F
# 2.接收目标端口为22的数据包 iptables -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT
# 3.拒绝所有其他数据包 iptables -A INPUT -j DROP

Linux的下面部署了apache,为了安全我们使用非root用户进行启动,但是在域名绑定时无法直接访问80端口号。众所周知,在unix下,非root用户不能监听1024以下的端口号,这个apache服务器就没办法绑定在80端口下。所以这里需要使用linux的端口转发机制,把到80端口的服务请求都转到8080端口上。 
在root账户下面运行一下命令:
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080

如果指定了 ip 
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-destination IP:8080



vim iptables.sh
#!/bin/bash
ipt="/sbin/iptables"
$ipt -F
$ipt -P INPUT ACCEPT
$ipt -P OUTPUT ACCEPT
$ipt -P FORWARD ACCEPT

$ipt -A INPUT -s 192.168.0.0/24 -p tcp --dport 22 -j ACCEPT
$ipt -A INPUT -p tcp --dport 80 -j ACCEPT
$ipt -A INPUT -p tcp --dport 21 -j ACCEPT
$ipt -A INPUT -p tcp --dport 22 -j DROP
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值