首页 > 代码库 > iptables和ssh实现目标地址转换

iptables和ssh实现目标地址转换

在某台机器(Centos 5.8)上部署虚拟机vmware workstation for Linux,部署多个xp系统,公司192.168.1.0/24网段的ip不是很多,希望可以给虚拟机一个专门的网段192.168.2.0/24;要求在1.0网段可以正常访问虚拟机2.0的3389


1.安装虚拟机等忽略


2.配置虚拟机网卡设置为桥接模式,虚拟机网卡配置192.168.2.0段,网关192.168.2.1

在实体机增加eth0:0,ip配置为192.168.2.1/24

ifconfig eth0:0 192.168.2.1/24 up


也可以配置虚拟机网卡为nat模式,设置实体机vmnet8的ip为192.168.2.1/24


3.通过iptables的目标地址转换实现(DNAT)

1)开启内核转发参数

vim /etc/sysctl.conf

修改

net.ipv4.ip_forward = 0

net.ipv4.ip_forward = 1

2)

iptables -t nat -I PREROUTING -i eth0 -d 192.168.1.230 -p tcp --dport 33891 -j DNAT --to-destination 192.168.2.2:3389


访问192.168.1.230:33891 相当于访问192.168.2.2:3389

依此类推。。。


还可以借助ssh隧道

比如xshell的

在连接192.168.1.230的shell中添加如下规则

类型:local(Outgoing)

源主机:localhost

侦听端口:33891

目标地址:192.168.2.2

目标端口:3389


访问localhost:33891 相当于访问192.168.2.2:3389

这种方式可以实现外网访问,个人觉得更安全些(将192.168.1.230的22发布出去)

也有直接通过ssh命令建立隧道的,后期补上


本文出自 “红色石头” 博客,请务必保留此出处http://heishi317.blog.51cto.com/4301036/1530793