端口转发

windows系统

包括xp  2003,2008等,都自带portproxy功能。目前只支持tcp协议的端口转发,前提需要作为portproxy的主机需要安装IPV6,安装可以不启用IPV6。

A.配置方法

假定需要通过192.168.1.8的14941端口连接192.168.1.118的1494端口,则需要在192.168.1.8主机的命令行输入如下语句

netsh  interface ipv6 install

netsh interface portproxy add v4tov4  listenaddress=192.168.1.8 listenport=14941 connectaddress=192.168.1.118  connectport=1494

---如果已经安装IPV6,第一条可以不需要

---如果操作系统开启了主机防火墙,需要放行TCP 14941的入站连接

---2008防火墙较以前版本有较大改动,可以参考如下链接:

http://pcedu.pconline.com.cn/soft/virus/safe/0710/1130476.html

如果想取消上面配置的端口转发,可以用如下语句:

netsh interface  portproxy delete v4tov4 listenaddress=192.168.1.8  listenport=33891

如果想查看已经配置了哪些端口转发,可以用如下语句:

netsh interface  portproxy show  v4tov4

B.优点

可以随时根据需要添加或删除端口转发条目,并且重启操作系统仍能自动保存之前的配置并自动启用,不像HAproxy修改完配置文件还需重启HAproxy。

网上有的说xp配置端口转发不起作用,估计是没有安装IPV6的缘故,用xp测试,安装了IPV6后可以实现端口转发,并且不需要开启路由和远程访问服务。

另外考虑到端口转发的冗余,可以多台主机都配置端口转发,且不用指定本地监听地址,这样可以通过操作系统提供浮动地址来实现冗余:

netsh  interface portproxy add v4tov4 listenport=14941 connectaddress=192.168.1.118  connectport=1494

程序实现动态添加的时候,可以telnet到每台都添加条目,也可以只与虚地址联系,每次都检查是否有对应的映射条目(根据ica文件中需要连接的citrix服务器的IP地址来检查),如果没有则命令行添加,添加时要确保本地端口不能被占用,并且还需要考虑防火墙,用netsh添加入站端口访问规则。

----需要citrix主机开启telnet服务,并设置访问控制,只允许特定主机连接。

Linux系统

socat TCP4-LISTEN:188,reuseaddr,fork TCP4:192.168.1.22:123 &

(在本地监听188端口,并将请求转发至192.168.1.22的123端口)

TCP4-LISTEN:在本地建立的是一个TCP ipv4协议的监听端口;
reuseaddr:绑定本地一个端口;
fork:设定多链接模式,即当一个链接被建立后,自动复制一个同样的端口再进行监听

socat启动监听模式会在前端占用一个shell,因此需使其在后台执行。

时间: 05-15

端口转发的相关文章

Linux端口转发的几种常用方法

0x00 背景 端口转发是一个常用的功能,不管是在服务器运维还是在渗透领域,都需要用到.在近期遇到一个问题就是一个服务的端口不能进行配置,但是由于出口硬件防火墙的原因,为了不修改硬件防火墙的策略,所以只能在本地做端口转发.因此尝试和寻找了以下的几种方法. 0x01 iptables和firewall iptables iptables是我第一个想到的方法,但却是最后一个尝试的,因为我对iptables并不熟悉. 1.打开IP转发功能. linux的IP转发功能是默认关闭的,而且根据很多安全加固策

SecureCRT 端口转发连接服务器

场景: 1.日常远程管理服务器,大多是先通过连接接入到公网中的跳板机,再ssh到内网其他服务器中进行管理操作. 2.为了服务器更安全的管理,一般是使用ssh公私钥方式连接linux.而即使SecureCRT开启了session转发,也只能ssh跳转一次(这在传文件的时候不怎么方便). 工具: 1.SecureCRT软件 2.有登录权限的跳板机 方法/步骤: 1.设置连接到跳板机的session. 2.点击端口转发,添加按钮. 3.填上相应的参数. 注: 1)本地IP和端口,即本机监听进程使用的I

iptables 端口转发 实现访问内网的httpd服务

上篇文章写到通过dhcp实现客户机上网功能,由于公网地址只有一个,我想把内部服务发布到外网就需要通过 "端口转发" 来实现 1.公网服务器: eth0:公网IP eth1:内网IP - 192.168.1.1 2.HTTPD服务器: eth0:内网IP -192.168.1.100 3.实现方法: 通过访问公网IP的8080端口来实现到内网MYSQL服务器的3306端口的访问 4.在公网服务器上: iptables -t nat -A PREROUTING -p tcp --dport

通过rinetd实现端口转发来访问内网的服务

一.   问题描述 通过外网来访问内网的服务 二.   环境要求 需要有一台能够外网访问的机器做端口映射,通过数据包转发来实现外部访问阿里云的内网服务 三.   操作方法 做端口映射的方案有很多,Linux下的ssh tunnel和windows下的portmap等等,这里分享一个更稳定和简单的小工具rinetd 四.   下载安装 $ wget http://www.boutell.com/rinetd/http/rinetd.tar.gz $ tar -xvf rinetd.tar.gz $

Windows 和 Linux 平台下的端口转发工具

原文地址: http://unmi.cc/windows-linux-port-forwarding/ 这里记录一下我曾经使用过的几个端口转发工具,即端口映射.端口重定向,和 NAT 也是差不多的概念. Linux 下用过 iptables,rinetd:Windows 下用过某个防火墙的 NAT 功能.RemoteAnywhere 的端口重定向.FPipe,还有最近刚找到的 PassPort.试着去设置一下 Windows 2000 的 NAT  功能,但未成功,还是特定的软件简单易用,下面介

ssh 端口转发实现外网 80 端口映射到内网 80 端口

开发中经常需要外网服务映射到本机内网服务的需要,便于调试. 以前都是同事帮着配,这两天自己也看了一下 ssh 端口转发. 同事分分钟钟搞定的事情,自己折腾了 2 天, 真是弱爆了. 最初老想不明白一件事,为什们外网服务器能够找到我的内网机器,现在才明白原来走的是 ssh 隧道. 需求我的内网机器  192.168.9.100, 我的阿里云外网 123.56.86.52,  现在需要所有对 123.56.86.52  80 端口的访问都映射到  192.168.9.100 的 80 端口. 显然 

端口转发工具lcx使用两类

lcx是一款强大的内网端口转发工具,用于将内网主机开放的内部端口映射到外网主机(有公网IP)任意端口.它是一款命令行工具,当然也可以在有权限的webshell下执行,正因如此lcx常被认为是一款黑客入侵工具,lcx在内网入侵渗透中起着重要的角色.lcx进行端口转发的原理就是使不同端口之间形成一个回路(如图1).它常用于外网连接内网3389端口. 这个工具很早就已经有了,它的全名叫Socket data transport tool,简写做trtool,由红盟联盟的前辈bkbll所写,功能和lio

如何配置virtualBox端口转发

1,第一步登陆虚拟主机,安装openssh-server(这一步非常重要,如果不安装,你在宿主机上怎么链接都是连不上的,我当时就犯了这个错误) apt-get install openssh-server 2,接下来这是虚拟机的端口转发,这个是最简单的. 这样就可以用secureCRT链接到自己的虚拟机里面了. 参考资料:http://www.vimer.cn/2010/09/%E5%9C%A8windows%E4%B8%8B%E7%94%A8virtualbox%E8%99%9A%E6%8B%

使用iptables做端口转发

#!/bin/sh IPT="/sbin/iptables" /bin/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/modprob

设置端口转发来访问Virtualbox里linux中的网站

上一篇中我们讲到怎么设置virtuabox来通过SSH登录机器. 同样,我们也可以按照上一篇内容中的介绍,设置端口转发,来访问虚拟linux系统已经搭建的网站: 1.设置端口转发: 我们设置本地的8888端口来转发给虚拟机的80端口. 虚拟机中的网站简单结构如下: [email protected]:/var/www/php# ll /var/www/php/test.php -rw-rw-r-- 1 zhiguo zhiguo 217 Apr 12 20:59 /var/www/php/tes