- 1、本文档共5页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
怎样从外网访问内网服务器
先决条件
1. A机上可访问外网并且可以安装虚拟机。
2. 拥有一个外网的VPS服务器S(运行Debian 7.x)。推荐购买BandWagon的廉价VPS服务器(/),一年100多元。
一、建立从内网机到外网服务器的反向隧道
1.1. 在A机上用虚拟机运行Ubuntu Server。首先安装VirtualBox虚拟机。
下载VirtualBox:/wiki/Downloads
必威体育精装版版的VirtualBox不用配置网络即可从本地可用的网络连接上网。
下载Ubuntu Server:/download/server
在VirtualBox中安装Ubuntu Server,全部默认设置即可。
?
1.2. 由A机发起,建立从A到S的反向隧道连接,命令格式:
-C:允许数据压缩;
NPORT :指定在S机上进行侦听的端口。在S机上发往localhost:NPORT的数据包都将被直接转发到A机的22端口(SSH默认服务端口);
RPORT:S机的SSH服务端口;
SUSER:登录S机的用户名,一般为root;
S_IP:S机的公网IP。
执行此命令后,可能需要输入SUSER在S机的密码。反向隧道连接建立成功以后,即远程登录到S,接下来的操作都是将在S上执行。命令举例:
?
1.3. 建立从S到A的SSH动态转发,可视为从S到A的SOCKS代理服务,命令格式:
-f -N:后台连接而不登录到主机,也不执行任何脚本;
SPORT:指定S机上SOCKS代理服务进行侦听的端口;
NPORT:S机上侦听的反向隧道端口,在第1.2步指定;
LUSER:登录A机的用户名。
执行此命令后,可能需要输入LUSER在A机的密码。至此,我们已将A作为S的SOCKS代理服务器。命令举例:
?
1.4. 用curl命令测试连接,命令格式:
SPORT:S机上SOCKS代理服务进行侦听的端口,在1.3步指定;
URL:任意网址,可指定内网资源。
此命令若执行成功,URL所指向的内容会打印在屏幕上。一般以简短的HTML页面为佳,太大的资源会很慢。命令举例:
如果未安装curl,需先安装:
若未找到curl包,需先更新apt-get:
二、在服务器端用DeleGate实现二级HTTP代理
接下来要将SOCKS代理转换为HTTP代理,使用的软件是DeleGate。这是一个开源软件,但目前并不被apt-get、rpm和yum支持,因此必须先下载编译。
2.1.如果没有g++需要先安装g++,命令:
?
2.2. 下载和解压DeleGate(/),命令:
wget:下载源码包到/home目录下,当然其它具有运行程序权限的目录亦可;
tar -xzf:/home/delegate9.9.13子目录并解压缩到此目录中。
注意,如果DeleGate发布了新版本,上面给出的下载链接和目录名可能不同,请关注DeleGate官方网站。
2.3. 编译DeleGate,命令:
make命令必须在DeleGate解压后的目录中执行。如果未安装make,需先安装:
make执行的过程较慢,其间会提示输入电子邮箱,任意输入,然后按Y即可。
?
2.4. 启动DeleGate,命令格式:
HPORT:指定S机上HTTP代理服务进行侦听的端口;
SPORT:S机上SOCKS代理服务进行侦听的端口,在1.3步指定。
命令举例:
?
2.5. 用curl命令测试连接,命令格式:
HPORT:S机上HTTP代理服务进行侦听的端口,在2.4步指定。
URL:任意网址,可指定内网资源。
命令举例:
三、在服务器端建立端口转发
现在S机上已经有本地的HTTP代理了,接下来要将
3.1 如有必要,先清除已有nat规则,命令:
iptables是一个非常强大的防火墙/路由程序,用法也比较复杂,具体可参考相关文档,此处不做赘述。
3.2 建立http协议的端口转发,命令格式:
HPORT:S机上HTTP代理服务进行侦听的端口,在2.4步指定。
命令执行后,由S机发出的HTTP请求(80端口)都将被转发到HPORT端口上。
命令举例:
?
3.3. 用curl命令测试连接,命令格式:
URL:任意网址,可指定内网资源。
命令举例:
四、在外网机通过SSH隧道连接到外网服务器
1. 在B机安装Bitvise SSH客户端软件
?
2. 配置Bitvise SSH客户端的Login页
Host:S机的服务器IP;Port:SSH服务端口;Username:登录用户名;Initial method:password;Password:登录密码。
?
3. 配置Bitvise SSH客户端的Services页
SOCKS/HTTP Proxy Forwarding:Enabled;Listen interface:;Lis
文档评论(0)