Answers:
非常简单,首先,您需要在Mac上启用远程登录服务(“ 系统偏好设置” ->“ 共享” ->“ 远程登录”)。这将启动您的ssh服务器。
然后在OS X终端中运行以下命令:
ssh -L 200.234.XXX.XXX:10000:10.211.55.5:80 -N 127.0.0.1
您可能需要最初接受服务器指纹,并输入本地密码以进行ssh登录。(您还可以设置本地到本地的ssh公钥/私钥,以使其不提示输入密码,这将作为练习供读者使用。)
格式为:
ssh -L local_addr:local_port:remote_addr:remote_port -N 127.0.0.1
使用多功能工具ncat非常简单:
sudo ncat --sh-exec "ncat 10.211.55.5 80" -l 1000 --keep-open
从官方网站获取Mac OS X的ncat / nmap的二进制文件:http ://nmap.org/download.html#macosx
编辑:添加了sudo以在<1024的受限端口上进行侦听
好吧,我可以告诉您如何在Mac OS X 10.5.8系统上执行此类操作。
我从关于NAT的答案开始,但是我认为您实际上是想要一个TCP转发器程序(您提到了“代理”和端口转发)。
有几种方法可以执行此操作,尽管您最喜欢的简短方法是Perl脚本tcpforward,但根据您的需要,甚至可以将“ SSH” 强制执行。
如果您需要进行一些HTTP操作(您可能需要调整HTTP重定向,以便在请求URL时不带尾部'/'的情况下,您不会被重定向到真实的,不可访问的服务器),那么Apache可以反向代理的工作。您将要查看mod_proxy,尤其是ProxyPass和ProxyPassReverse。难道不能够将ProxyRequests,这对前锋代理。如果您已经运行了Mac OS的Apache,则应该可以这样做。它确实带有mod_proxy,并且/etc/httpd/httpd.conf是要更新的配置文件。
即使使用Apache,您也需要确保真实服务器内容中的所有链接都是相对的,如果它们引用真实服务器,则可以尝试使用mod_proxy_html模块(我没有经验如何工作)。
您的机器是否直接连接到Internet(IE-没有路由器)?通常,您在路由器上进行端口转发,但是如果您确实使用调制解调器直接连接,则iptables可能是最好的方法。
iptables
来完成所要提出的问题,那将很有用。
这是一篇好文章:http : //www.cyberhq.nl/article/384/port-forwarding-in-macos-x
但是由于您要转发到80,所以我假设您希望它转到Web服务器,所以我只需要更改Web服务器配置以设置反向代理或类似的东西即可。