Iptables

一、Iptables命令管理

1.显示内核三张表的信息

  iptables -nL     ##默认为filter表

Chain INPUT (policy ACCEPT)
Chain FORWARD (policy ACCEPT)
Chain OUTPUT (policy ACCEPT)
Iptables

  iptables -nL -t nat  ##显示nat表

Chain PREROUTING (policy ACCEPT)
Chain INPUT (policy ACCEPT)
Chain OUTPUT (policy ACCEPT)
Chain POSTROUTING (policy ACCEPT)
Iptables

 iptables -nL -t mangle  ##显示mangle表,备用

Chain PREROUTING (policy ACCEPT)
Chain INPUT (policy ACCEPT)
Chain FORWARD (policy ACCEPT)
Chain OUTPUT (policy ACCEPT)
Chain POSTROUTING (policy ACCEPT)

Iptables

2.表格命令编辑  ##默认filter表

  iptables -A INPUT -s 172.25.254.2 -j REJECT  ##添加

Iptables

  iptables -D INPUT 6  ##删除INPUT链的第8条

Iptables

  iptables -I INPUT -s 172.25.254.2 -j REJECT  ##插入至第1条

Iptables

  iptables -R INPUT 1 -j ACCEPT   ##将INPUT第1条规则改为ACCEPT

 【iptables -F   ##刷新(类似删除)配置,但是重启后配置依然存在

  systemctl restart iptables.service】

Iptables

 Iptables

Iptables

【iptables -F   ##刷新后保存,重启后配置为空

Iptables

  service iptables save

  systemctl restart iptables.service】

Iptables

  iptables -P FORWARD DROP  ##将FORWARD链规则改为DROP

Iptables

  iptables -N redhat  ##新建redhat自定义链

Iptables

  Iptables

iptables -E redhat REDHAt  ##修改自定义链的名称

Iptables

 Iptables

iptables -X REDHAt  ##删除自定义链

Iptables

3.服务管理
[[email protected] ~]# iptables -A INPUT -p tcp --dport 22 -j ACCEPT
  ###允许所有主机链接ssh(22)
[[email protected] ~]# iptables -A INPUT -s 172.25.254.8 -p tcp --dport 80 -j ACCEPT
  ###只允许主机8链接http(80)
[[email protected] ~]# iptables -A INPUT ! -s 172.25.254.8 -p tcp --dport 53 -j REJECT
  ###除了主机8都拒链接DNS(53)
[[email protected] ~]# iptables -A INPUT -j REJECT

  ###读取以上规则后,其他所有访问拒绝  (从前到后,逐条读取)

Iptables

##将修改后的配置保存在文件/etc/sysconfig/iptables中

Iptables

Iptables

二、Iptables地址转换

 注意:
  1.一定要刷新filter表

           iptables -F

  2.打开内核路由

  [[email protected] ~]# vim /etc/sysctl.conf

Iptables

  [[email protected] ~]# sysctl -a | grep ip_forward
   net.ipv4.ip_forward = 0
  [[email protected] ~]# sysctl -p  ##和重启服务效果一样

   net.ipv4.ip_forward = 1

     Iptables

  3.主机172.25.66.2配置网络
  IPADDR  = 172.25.66.2   (一块网卡主机)
  GATEWAY = 172.25.66.10 (两块网卡主机IP)

  Iptables

4.设定策略

[[email protected] ~]# iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 172.25.254.1
[[email protected] ~]# iptables -t nat -A PREROUTING -i eth0 -j DNAT --to-dest 172.25.66.2
[[email protected] ~]# iptables -nL -t nat
   Iptables

 Iptables

5.当主机 10 访问链接 1 主机时,转换到66.2主机上

Iptables