Monday, May 22, 2017

使用SSH做SOCKS代理

本文介绍如何使用SSH做SOCKS代理,通过Firefox浏览器上网。

首先,必须要有一个SSH账号。

然后,下载并运行PuTTY For Windows,出现PuTTY Configuration界面,默认进入Session选项,在右侧的Host Name(or IP address)处输入SSH服务器的域名或IP地址,在Port处输入SSH端口(默认端口为22)。

然后,点击左侧目录中Connection选项中的SSH,点击Tunnels,在右侧的Source port处输入想使用的转发端口(如7070),在Destination下面的选Dynamic,再下面选Auto,然后点击Add按钮。

然后,再点击Open打开正常SSH登录界面,输入SSH的账号和密码登陆服务器。

然后进入Firefox浏览器,打开选项-高级-网络,可以看到“连接-配置Firefox如何连接至国际互联网”,点击右侧的设置按钮,选择手动配置代理,在SOCKS主机处输入127.0.0.1,端口输入刚才在PuTTY中SSH Tunnels处输入的转发端口(如7070),下方的选项SOCKS v4或SOCKS v5均可,点击确定。

现在就可以使用Firefox浏览器上网了。

什么是SOCKS代理

采用SOCKS协议的代理服务器就是SOCKS服务器,是一种通用的代理服务器。Socks是个电路级的底层网关,是DavidKoblas在1990年开发的,此后就一直作为Internet RFC标准的开放标准。Socks 不要求应用程序遵循特定的操作系统平台,Socks 代理与应用层代理、 HTTP 层代理不同,Socks 代理只是简单地传递数据包,而不必关心是何种应用协议(比如FTP、HTTP和NNTP请求)。所以,Socks代理比其他应用层代理要快得多。它通常绑定在代理服务器的1080端口上。如果您在企业网或校园网上,需要透过防火墙或通过代理服务器访问 Internet就可能需要使用SOCKS。一般情况下,对于拨号上网用户都不需要使用它。注意,浏览网页时常用的代理服务器通常是专门的http代理,它和SOCKS是不同的。因此,您能浏览网页不等于 您一定可以通过SOCKS访问Internet。 常用的防火墙,或代理软件都支持SOCKS,但需要其管理员打开这一功能。

为了使用socks,您需要了解一下内容:

① SOCKS服务器的IP地址

② SOCKS服务所在的端口

③ 这个SOCKS服务是否需要用户认证?如果需要,您要向您的网络管理员申请一个用户和口令

知道了上述信息,您就可以把这些信息填入“网络配置”中,或者在第一次登记时填入,您就可以使用socks代理了。
在实际应用中SOCKS代理可以用作为:电子邮件、新闻组软件、网络传呼ICQ、网络聊天MIRC和使用代理服务器上联众打游戏等等各种游戏应用软件当中。

SOCKS是一组由Internal工程工作小组(IETF)所开发出来的开放软件开放标准,用来处理网络安全的事宜。SOCKS象一堵墙被夹在Internal服务器和客户端之间,对于出入企业网络的资讯提供流量和安全的管理。SOCKS这个名词并不是一组英文字头的缩写,而是一个和TCP/IP的Socket端口有关的安全标准,一般防火墙系统通常是象网关(Gateway)一样是作用在OSI模型的第七层也就是应用层上,对TCP/IP的高级协议,如Telnet、FTP、HTTP和SMTP加以管制,而SOCKS作用在OSI模型的第四层也就是会话层上,象一个代理一样对客户端到服务器端或服务器和服务器之间的数据联系,提供安全上的服务。由于SOCKS作用在会话层上,因此它是一个提供会话层到会话层间安全服务的方案,不受高层应用程序变更的影响。

那SOCKS4和SOCKS5又有什么不同?具体表现在SOCKS4只能代理TCP协议,而SOCKS5什么协议都可以代理,而QQ使用的是UDP协议,所以它不能使用SOCKS4代理,而象国外的ICQ使用比UDP协议安全的TCP协议,所以就可以使用SOCKS4代理。

那SOCKS代理和HTTP代理有什么不同?从上文我们知道SOCKS工作在会话层上,而HTTP工作在应用层上,SOCKS代理只是简单地传递数据包,而不必关心是何种应用协议(比如FTP、HTTP和NNTP请求),所以SOCKS代理服务器比应用层代理服务器要快得多。

常在一些软件的设置中可以看到HTTP代理、SOCKS代理和FTP代理等方面的设置项目。请问,这些代理之间有什么区别?

通常按照不同的用途选择不同的代理:浏览器用HTTP或SOCKS代理、下载软件用HTTP或SOCKS代理、上传软件用FTP或SOCKS代理、其他方面(聊天,MUD游戏等)一般用SOCKS代理。

SOCKS代理使用范围很广,但SOCKS有SOCK4和SOCK5之分。其中SOCK4只支持TCP协议,SOCK5支持TCP和UDP协议,还支持身份验证、服务器端域名解释等。SOCK4能干的SOCK5都可以干,反过来就不行。我们常用的聊天软件(如QQ),起初就一直用的是TCP和UDP协议,所以只能用SOCK5的代理。

简单说:Http代理是用来浏览网页用的,其端口一般是80和8080,不过也有3128等其它端口的;而socks5代理则可以看成是一种全能的代理,不管是telnet、ftp还是irc聊天都可以用它,这类代理的端口通常是1080。

Leave a Reply

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