A-A+

iptables路由转发与地址伪装的简单实现

2015年11月20日 站长资讯 暂无评论

三台虚拟机模拟架设一个防火墙应用

一:在Vmware软件上建立3台虚拟机A、B、iptables,分别当做客户机A、架设防火墙的路由iptables、服务器B。

在路由iptables上配置增添一块网卡eth1,并且设置IP:1.2.3.4/16,eth0的IP 172.16.10.1/16

A的IP-1.2.3.5/16

B的IP—172.16.10.2/16

修改机器iptables的配置文件,让它能够转发,充当路由。

echo 1 > /proc/sys/net/ipv4/ip_forward #此文件不能直接被编辑修改,修改之后不必重启

测试:

设置完成之后,可以简单的通过PING命令来测试A与iptables、B与iptables、A与B能否相互通信

AB、A与iptables、B与iptables互ping都是可以的。

我们要实现的是在A访问B的时候,隐藏A主机的IP地址,机器B查看自己主机的访问日志的时候看到的是iptables机器的IP。怎么样?很神奇吧,赶紧往下看吧。

听到这里,你可能想到要隐藏自己的IP去做一些不想被别人知道的事儿。确实,这是iptables能做的。iptables能做的远远不止这一点,它最关键的还是在于提高安全。

下面是具体的做法,已经熟悉做法的,可以略过。

3台机器的分配:

A机器:

1更改网卡设置:

2修改IP

vim /etc/sysconfig/network-scripts/ifcfg-eth0

IPADDR=1.2.3.5 #修改IPADDR的值

vim /etc/sysconfig/network
GATAWAY=1.2.3.4 #A的网关为iptables的eth1的IP

service network restart #重启服务让修改生效

iptables机器:

1,更改网卡设置:

第二块网卡的此项设置要与A网卡一致,让他们在同一个网段内,如果不设的话,两者是不能相互通信的哦

2,修改IP

vim /etc/sysconfig/network-scripts/ifcfg-eth0

IPADDR=172.16.10.1 #修改IPADDR的值

vim /etc/sysconfig/network-scripts/ifcfg-eth1

IPADDR=1.2.3.4 #修改IPADDR的值

vim /etc/sysconfig/network

service network restart

iptables机器与A机器的两块网卡完成,可以试验看一下,两者能否相互ping通

ping 1.2.3.5 #在iptables上面ping机器A

ping 1.2.3.4 #在iptables上面ping 机器iptables

1,更改网卡设置:

更改机器B的选项为Vmnet2

2,修改IP http://www.luyouqiwang.com/14790/

vim /etc/sysconfig/network-scripts/ifcfg-eth0

IPADDR=172.16.10.2 #修改IPADDR的值

vim /etc/sysconfig/network
GATAWAY=172.16.10.1 #B的网关为iptables的eth0的IP

service network restart

二:此方法不仅能做路由转发。还可以比如A访问B,但给B显示的是机器iptables的eth0网卡的IP地址。

iptables –t nat –A POSTROUTING –o eth0 17216.10.1 –j SNAT –to-source 172.16.10.2 #在机器(iptables)上添加以下规则

再查看B的日志

ssh 172.16.10.2 #再查看ssh能否连接

ifconfig eth0 #通过查看IP以确认当前主机

就通过这样一条简单的命令,就可以实现转换IP的功能。

标签:

给我留言