
SSH(SecureShell)是一套安全de网络连接程序,它可以实现通过网络远程登录其他系统,它就是加密detelnet协议。但是OPENSSH除了具you远程登录功能以外,更可以建立加密IP隧道。
wo men 这里假设Alice.org服务器位于某个企业网de内网,其IP地址为192.168.2.200,它通过NAT方式可以访问互联网。wo men 现在需要通过位于互联网上de名字为bob.orgde机器里访问Alice,也就是远程登录Alice。这时候wo men 就需要在bob和alice之间建立IP隧道。wo men 首先登录Alice,执行命令:
#ssh-R11022:127.0.0.1:22 ideal@211.1.1.1
该命令表示登录服务器211.1.1.1,并将服务器de11022定向为本地de22号端口。执行完该命令以后,会提示输入ideal用户密码,输入以后就会登录到远程服务器bob。这时在bob上netstat-ln就会发现11022端口监听,保持从alice到bobdessh连接不断开。从互联网任何位置登录服务器bob以后,wo men 可以通过该隧道登录到alice服务器,执行以下命令:
#sshlocalhost-p11022
该命令表示连接本地de11022端口,因为wo men 已经创建了从alice到bobde隧道,因此连接本地de11022端口实际上就是通过隧道访问alicede22端口号。
这样通过这个隧道就可以实现登录位于内部网de服务器alice,但是因为ssh命令中指定了源端口,这种隧道一般只能支持一种协议,对于特定应用则具you加密带来de安全性de优点,但灵活性则不够,而且为了保证隧道畅通,从alice到bobdessh连接不能断开,也就意味着用户不能退出alice,否则隧道就会关闭。
方法二:使用vtun建立IP隧道
VTun(VirtualTUNnel,http://vtun.sourceforge.net)是一个功能很强de软件,可以利用它来建立IP虚拟隧道,而且隧道de数目可以不受限制,完全依照机器de能力而定,并且在此基础上应用上可以实现VPN、移动IP等功能。
Vtun所支持de通道并且具you多种功能特性:
* 加密:支持基于CHAPde认证、并采用BlowFish128bit密钥。
* 压缩:支持zlib、lzo等多种压缩算法。
* 通信整形:平台无关,允许分别限制进入和流出通道de速率。
Vtun支持以下类型通道:
* IPtunnel(tun):支持pppdeIP隧道。
* 以太网隧道(Ethernettunnel):支持可以实现以太网封装de各种协议,如:IPX、Appletalk、Bridge等。
* 串口通道(Serialtunnel,tty):支持串行电缆de传输方式,如:PPP、SLIP等。
* 管道通道(Pipetunnel,pipe):支持所you能使用Unix管道de程序。
Vtun支持多种平台,包括:Linux、BSD以及Solaris。
1、打开VirtualBox,新建一个虚拟机。
2、虚拟机建立好之后,点击设置,按下图设置并保存。
3、启动该虚拟机,下载对应的客户端并安装。启动客户端,登录。
4、按下Win+r建,输入cmd回车。
5、在窗口内输入ipconfig /all回车,然后记下。
6、打开GNU/Linux系统的控制中心,修改当前连接的网络。按照上一步骤记下的内容修改并保存即可。
Win上有好用的Xshell,可以做SSH隧道,但是Linux没有很好用的工具,本来gSTM还可以,但是死活装不上,也很久没更新了。但其实,Linux上直接使用ssh命令就可以创建SSH隧道,非常方便。
1
ssh -L 9000:localhost:5432 user@example.com
-L 后的含义是: -L local-port:host:remote-port,最后面是远程服务器的登录用户名和IP地址。
敲入命令后,提示输入密码,即可创建隧道:通过本机的localhost:9000可以访问远程服务器上的localhost:5432。
此外,还有一些类似的命令:
1
ssh -f user@example.com -L 9000:localhost:5432 -N
这里的-f可以强制使ssh连接在后台保持运行,-N则告诉openSSH不需要在远程服务器上执行任何命令。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)