RedHat 9上用iptables做NAT网和记录日志

系统 Linux
当大家用RedHat 9时,我们有可能为自己的系统做NAT网和记录日志,这就要用到我们的专业工具iptables,那看看下文是具体是怎么操作的。

RedHat 9上用iptablesNAT网和记录日志,上面两个功能都能用iptables来实现!

  RedHat 9上用iptables做NAT网关- -我使用中的设置

  一、将下列内容加入/etc/rc.local文件中:

  注:eth0绑内网IP eth1绑外网IP

  [root@RHNAT01 root]# vi /etc/rc.local

 

  1.   #!/bin/sh  
  2.  
  3.   # This script will be executed *after* all the other init scripts.  
  4.  
  5.   # You can put your own initialization stuff in here if you don’t  
  6.  
  7.   # want to do the full Sys V style init stuff.  
  8.  

 

  touch /var/lock/subsys/local

  route add -net 0.0.0.0 gw 外网网关 netmask 0.0.0.0 dev eth1

  route add -net 内网网段A gw 内网网关 netmask 255.255.240.0 dev eth0

  route add -net 220.114.128.0 gw 211.162.0.129 netmask 255.255.224.0 dev eth0

  route add -net 内网网段B gw 内网网关 netmask 255.255.255.0 dev eth0

  route add -net 内网网段C gw 内网网关 netmask 255.255.255.0 dev eth0

  route add -net 内网网段D gw 内网网关 netmask 255.255.0.0 dev eth0

  route add -net 内网网段E gw 内网网关 netmask 255.255.0.0 dev eth0

  echo 1048576 > /proc/sys/net/ipv4/netfilter/ip_conntrack_max

  sysctl -w net.ipv4.netfilter.ip_conntrack_tcp_timeout_established=1800

  echo "1" > /proc/sys/net/ipv4/tcp_syncookies

  echo "1" > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses

  echo 268435456 >/proc/sys/kernel/shmall

  echo 268435456 >/proc/sys/kernel/shmmax

  echo "1024 65000" > /proc/sys/net/ipv4/ip_local_port_range

  echo 1 > /proc/sys/net/ipv4/ip_forward

  /sbin/modprobe ip_tables

  /sbin/modprobe iptable_filter

  /sbin/modprobe iptable_nat

  /sbin/modprobe ip_conntrack

  /sbin/modprobe ip_conntrack_ftp

  /sbin/modprobe ip_nat_ftp

  /sbin/iptables --flush INPUT

  /sbin/iptables --flush FORWARD

  /sbin/iptables --flush POSTROUTING --table nat

  /sbin/iptables --policy FORWARD DROP

  /sbin/iptables --table nat --append POSTROUTING --out-interface eth1 --source 内网网段A/19 --jump MASQUERADE

  /sbin/iptables --table nat --append POSTROUTING --out-interface eth1 --source 内网网段B/18 --jump MASQUERADE

  /sbin/iptables --table nat --append POSTROUTING --out-interface eth1 --source 内网网段C/24 --jump MASQUERADE

  /sbin/iptables --table nat --append POSTROUTING --out-interface eth1 --source 内网网段D/24 --jump MASQUERADE

  /sbin/iptables --append FORWARD --in-interface eth1 (此处填外网IP网口)--match state --state ESTABLISHED,RELATED --jump ACCEPT

  /sbin/iptables --append FORWARD --source 内网网段A/19 --jump ACCEPT

  /sbin/iptables --append FORWARD --source 内网网段B/18 --jump ACCEPT

  /sbin/iptables --append FORWARD --source 内网网段C/24 --jump ACCEPT

  /sbin/iptables --append FORWARD --source 内网网段D/24 --jump ACCEPT

  /sbin/iptables -I FORWARD -m state --state NEW -j LOG --log-level debug

  /sbin/iptables --table nat --append POSTROUTING --out-interface eth0(内网口) -j SNAT --to *.*.*.*(外网IP)

  设置完成

#p#

  二、日志保存

  vi /etc/syslog.conf

  在原来不动的基础上添加

 

  1.   #remote net recevie stepup  
  2.  

 

  kern.=debug @*.*.*.X #保存本地就用此句 -/var/log/iptables.log

  *.* @*.*.*.X

  至此完成Iptables Nat的设置和远程日志发送设置

  几个命令

  ################

  service syslog restart

  Syslog服务重新载入

  iptables -L

  这个命令会尽可能地以易读的形式显示当前正在使用的规则集。比如,他会尽量用文件/etc/services里相应的名字表示端口号,用相应的DNS记录表示IP地址。

  但后者可能会导致一些问题,例如,他想尽力把LAN的IP地址(如192.168.1.1)解析成相应的名字。但192.168.0.0/16这个网段是私有的,也就是说,他只能

  用在局域网里,而不能在Internet里使用,所以他不会被Internet上的DNS服务器解析。因此,当解析这个地址时,命令就似乎停在那儿了。为了避免这种情况

  的发生,我们就要使用选项:

  iptables -L -n

  如果你想看看每个策略或每条规则、每条链的简单流量统计,能在上面的命令后再加一个verbose标志,如下:

  iptables -L -n -v

  不要忘了,iptables -L命令还能查看nat表和mangle表的内容哦(更不要忘了,默认的表是filter),只需要使用-t选项,比如我们只想看nat表的规则,就

  用下面的命令:

  iptables -L -t nat

  在/proc里,可能更有一些文件你会感兴趣。比如,你能在连接跟踪记录表里看到当前有哪些连接。这个表包含了当前的所有连接,你还能通过他了解到每个

  连接处于什么状态。要注意,这个表是不能编辑的,即使能,也不应该更改他。能用下面的命令查看这个表:

  cat /proc/net/ip_conntrack | less

  此命令会显示当前所有被跟踪的连接,但要读懂那些记录可是有些难度哦。

  修正和清空iptables的命令 iptables -D INPUT 10

  iptables -F INPUT

  iptables --list查看过滤表

通过阅读上面的文章,我们不难发现在RedHat 9上用iptables做NAT网和记录日志很简单很方便,快跟朋友分享吧!

【编辑推荐】

 

责任编辑:赵鹏 来源: 互联网
相关推荐

2011-03-16 09:05:32

RedhatiptablesNAT

2011-03-17 15:44:21

2011-03-17 13:28:49

iptables na

2011-03-16 16:59:46

iptables 映射

2021-11-22 12:35:14

NATIPv4网络

2011-03-15 16:26:46

iptablesnat

2011-03-17 14:09:03

iptables na

2011-03-16 10:59:57

2011-03-16 09:05:34

iptablesnat

2011-03-21 16:49:53

2011-03-17 10:11:13

2011-11-21 16:39:43

Syslog

2011-03-15 09:10:47

iptablesNAT

2011-03-15 14:26:23

iptablesNAT

2011-09-06 16:31:58

iptablesNAT转发

2011-03-17 13:55:23

iptablesNAT端口映射

2011-03-16 09:05:29

iptablesNAT

2011-03-16 09:05:33

2011-03-16 09:05:53

NATiptables

2011-04-15 09:49:33

NAT
点赞
收藏

51CTO技术栈公众号