如何使用服务器SSH“跨栏”

源地址:http://www.williamlong.info/archives/2057.html
       虽然我们的网络在公开场合下自称是“开放”的互联网,但实际情况却不是这样的,例如前几天,已经有两个同事咨询过我,如何使用代理服务访问Facebook,我发现其过程还是挺多的,与其我一步步讲给他们听,不如写一个教程,这样他们也更能理解和操作。下面我就介绍一下我是怎么使用代理服务器的,算是一篇科普教程吧。
  前面一段是科普教程,如果你只关心如何使用代理,可以直接跳到“如何使用SOCKS代理服务器”这一段。
  什么是代理服务器  
代理服务器(Proxy Server)是网上提供转接功能的服务器,在一般情况下,我们使用网络浏览器直接去连接其他Internet站点取得网络信息时,是直接联系到目的站点服务器,然后由目的站点服务器把信息传送回来。代理服务器是介于客户端和Web服务器之间的另一台服务器,有了它之后,浏览器不是直接到Web服务器去取回网页而是向代理服务器发出请求,信号会先送到代理服务器,由代理服务器来取回浏览器所需要的信息并传送给你的浏览器。
  比如你想访问的目的网站是A,由于某种原因你不能访问到网站A或者你不想直接访问网站A(这样通过代理服务器网站A,对网站A而已可以隐藏你自己的身份,也就是不知道是谁访问的网站,而认为是代理服务器访问的),此时你就可以使用代理服务器,在实际访问网站的时候,你在浏览器的地址栏内和你以前一样输入你要访问的网站,浏览器会自动先访问代理服务器,然后代理服务器会自动给你转接到你的目标网站。
  代理服务器的作用  提高访问速度:通常代理服务器都设置一个较大的缓冲区,当有外界的信息通过时,同时也将其保存到缓冲区中,当其他用户再访问相同的信息时,则直接由缓冲区中取出信息,传给用户,以提高访问速度。
  隐藏真实身份:上网者也可以通过代理服务器隐藏自己的真实地址信息,还可隐藏自己的IP,防止被黑客攻击。
  突破限制:有时候网络供应商会对上网用户的端口,目的网站,协议,游戏,即时通讯软件等的限制,使用代理服务器都可以突破这些限制。
  代理服务器主要类型
  HTTP代理:做简单的一种代理形式,能够代理客户机的HTTP访问,上网浏览网页使用的都是HTTP协议,通常的HTTP代理端口为80、3128或8080端口。
  SOCKS代理:SOCKS代理与HTTP等其他类型的代理不同,它只是简单地传递数据包,而并不关心是何种应用协议,既可以是HTTP协议,也可以是FTP协议,或者其他任何协议,所以SOCKS代理服务器比其他类型的代理服务器速度要快得多。SOCKS代理又分为SOCKS4和 SOCKS5,二者不同的是SOCKS4代理只支持TCP协议(即传输控制协议),而SOCKS5代理则既支持TCP协议又支持UDP协议(即用户数据包协议),还支持各种身份验证机制、服务器端远程域名解析(解决DNS污染就靠这个了)等。SOCK4能做到的SOCKS5都可得到,但SOCKS5能够做到的SOCKS则不一定能做到。目前SOCKS5是最常用的一种SOCKS代理。
  如何使用HTTP代理服务器
  HTTP代理服务器的设置方法,对于IE和FireFox设置略有不同。设置前需要先找一些可用的免费代理服务器地址
  IE的设置是这样的,打开IE浏览器,选择菜单栏的“工具/Internet选项…”。
  这时候分两种情况,对于ADSL拨号用户来说,选择一个网络连接后,点“设置”,如下图所示,选中代理服务器,填入地址和端口号。

  对于局域网用户来说,需要点“局域网设置”,如下图所示,选中代理服务器,填入地址和端口号。

  FireFox的设置和IE类似,打开FireFox浏览器,选择菜单栏的“工具/选项…”。
  这时选择“高级/网络”,点设置,就出现下面的界面,就可以进行代理服务器的设置了,选中“手动配置代理”,然后填写代理服务器的地址和端口。
 
  如何使用SOCKS代理服务器
  这里就到重点内容了,SOCKS代理是目前功能最为全面,使用最为稳定的代理服务器,我目前上网就只用SSH搭建SOCKS代理服务器上网,访问网络没有任何限制。下面我就着重讲一下如何使用SOCKS代理服务器。
  用SSH搭建SOCKS代理上网,建议使用Firefox浏览器,因为Firefox支持SOCKS代理远程域名解析,而IE只能通过类似SocksCap这样的第三方软件实现,不是很方便。
  配置Firefox浏览器
  在Firefox设置SOCKS远程域名解析,主要是为了防止DNS污染,具体设置方法是,在Firefox地址栏中,输入 about:config ,按确认,修改里面的一项数值,改成 network.proxy.socks_remote_dns=true 就可以了。

  然后,打开FireFox浏览器,选择菜单栏的“工具/选项…”。选择“高级/网络”,点设置,就出现下面的界面,就可以进行代理服务器的设置了,选中“手动配置代理”,然后在SOCKS主机上,填写代理服务器的地址127.0.0.1,端口1080,SOCKS类型选择“SOCKS V5”,这时Firefox就配置结束。

  设置SSH
  配置好了Firefox,就该配置SSH了,安全外壳协议(Secure Shell Protocol / SSH)是一种在不安全网络上提供安全远程登录及其它安全网络服务的协议。常用的SSH工具有开源软件PuTTY,支持SSH远程登录的主机可以实现socks5代理服务器的功能,不过在PuTTY中没有配置文件,需要手动设置才能实现,且无法保存,而PuTTY完整版自带的pLink可以实现命令行方式调用PuTTY实现SSH的加密通道。
  具体的方法是,去PuTTY官方网站下载pLink这个文件,pLink的调用参数是:plink -C -v -N -pw 密码 -D 本地端口 远程用户@IP或域名:远程希望打开的端口。
  新建一个文件,写入以下内容,另存为pLink.bat批处理文件,并放在Putty的安装目录内。
  plink -N Username@sshServer -pw Password -D 127.0.0.1:1080
  请将Username sshServer Password三处改为用户自己登陆SSH服务器的用户名、服务器地址和密码。这个SSH帐号可以通过多种方法获得,例如用户购买了某些国外主机空间或VPS就会有SSH帐号,或者在淘宝网也有SSH帐号出售,我自用的SSH帐号是用每年100美元购买虚拟主机时赠送的,通常SSH帐号的价格大约是每年几十元人民币左右,也有少量国外网站提供免费的SSH帐号。
  执行这个批处理文件,保持其窗口开启,一旦关闭窗口代理便失效。然后打开已经配置好127.0.0.1:1080的Socks5代理的Firefox浏览器,就可以使用SOCKS代理服务器上网了。
  其他设置技巧
  为了方便代理服务器的快速切换,我建议安装一个名为QuickProxyFireFox代理服务器扩展,可以实现一键切换代理功能,QuickProxy安装后在状态栏有一个按钮,点击后可以启用、关闭Firefox浏览器的默认代理设置,可以快速在代理和非代理之间切换,很方便。界面如下图所示。

  设置完成了之后,你就可以自由自在地在开放的互联网上傲游了。根据我的使用经验,基于SSH的SOCKS代理稳定、快速、功能全面,是值得推荐的代理方法,使用过程中流量需要自己把控,我个人觉得其浏览体验要远远高于其他代理软件。
  随着这次Google退出中国市场,本文可能会成为未来网民常用的上网技巧之一。
 

2 Replies to “如何使用服务器SSH“跨栏””

  1. 补遗篇
    DreamHost的SSH代理服务器设置
    2009年7月31日
    发表评论
    阅读评论
    话说很多人都在用SSH代理跨栏,我看了下我购买的 DreamHost 空间里也是有一个SSH账号的,可不能浪费了,我也要来享受一下自建SSH代理的方便和乐趣。建立方法自然少不了去Google上百度一下。使用方法倒也非常简单:
    1、SSH帐号设置:进入DreamHost的Web Panel,点击左侧的“Users – Manage Users”,选择需要自定义php配置的站点的FTP用户名对应的“Edit”链接,在“User Account Type”中,勾选“Shell account – allows SFTP/FTP plus ssh access.”,然后点击“Save Changes”保存。
    2、SSH代理的建立:
    到这里地址 http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html 下载Plink,或者直接点这里下载。
    打开记事本粘贴如下代码:plink [email protected] -pw password -N -D 127.0.0.1:7070,另存为以.bat为后缀的批处理文件,例如ssh.bat,保存时保存类型选所有文件,将文件放在Pink.exe所在的相同文件夹下。其中将user改为SSH账号的用户名,demo.dreamhost.com 改为SSH服务器地址,password为SSH账号的密码,7070为端口号。
    运行.bat批处理文件,如果用户名和密码都正确的话,命令行窗口会显示Using username “****”. 这时SSH服务器已经连接,可以在浏览器中设置sock5代理上网了,代理服务器设置为127.0.0.1,端口为7070。使用代理过程中不要关闭命令行窗口。
    为方便使用代理上网,建议使用Firefox浏览器,安装 AutoProxy 等代理扩展,使用 4t Tray Minimizer 、TrayIt! 等工具将命令行窗口缩小到系统托盘图标,以减小任务栏的空间占用。
    更新:有位 sshgfw 同学留言说,使用MyEnTunnel软件更加方便,我下载试了一下,图形界面确实方便,可以省略第2步的 Plink 命令行连接方式,还能隐藏到系统托盘,推荐使用。

  2. 下载并安装MyEntunnel,该软件全名为My Encrypted Tunnel。
    一键下载:https://dl.getdropbox.com/u/398/myentunnel.exe
    按照上图将第一步收到的帐号信息填写到相应的地方后,点击按钮,再点击按钮。
    第一次连接过程中会出现一个认证对话框,按照提示确认即可。以后的自动连接中将不再出现此认证对话框。
    最后点击按钮,使对话框隐藏到系统任务栏中。
    提示:
    为MyEntunnel创建一个快捷方式,将其复制到系统的【启动】(C:Documents and Settings当前用户名(需要修改成你自己的)「开始」菜单程序启动)文件夹中,今后开机便可自动启动软件,并自动连接服务器。
    绿色代表连接成功且稳定;黄色代表正在连接或重新连接;红色代表连接失败。
    第三步:配置Firefox浏览器
    假设你正使用Firefox浏览器阅读本文。
    一键安装:https://dl.getdropbox.com/u/398/autoproxy.xpi
    点击立即安装,安装后,重新启动Firefox。然后你会看到如下对话框,选择gfwlist (P.R.China)后,点击确定。
    接着你会看到Firefox主界面右上角出现有一个“福”字图案,点击“福”。
    点击“代理服务器——编辑代理服务器”。
    随即出现如下画面,你会看到如GAppProxy、Tor和Your Freedom这样一系列代理服务器名称。
    将GAppProxy一栏的参数修改为如下图所示。
    修改完毕后,点击确定。至此配置已全部就绪。
    获取更多帮助,请参与反馈:https://friendfeed.com/rooms/fuckgfw-feedback
    第四步:支持fuckGFW
    获取详情,请关注捐赠与推广中心:https://friendfeed.com/rooms/fuckgfw-donation-and-marketing
    版权信息:您可以自由复制、传播、演绎本作品且无需署名、无需注明原始出处。
    本文为转载!

Leave a Reply

Your email address will not be published. Required fields are marked *


The reCAPTCHA verification period has expired. Please reload the page.