缘起性空
EarthWorm

Termite

HexEdit

Friends

RSS

使用Socks代理服务

01 May 2015 TAGS : [ socks 技术相关 ]

Socks代理服务介绍

Socks代理的工作原理可以通过一张时序图来直观展示:

图片丢失,请联系作者

从上图可以发现以下几点关键信息:

  1. 对于访问目标来说所有的交互都只和 Socks-server 有关,Client的身份被隐藏起来了。
  2. 当Client和访问目标间无法直接通讯时,Socks-server仍然可以正常工作,这同时又是一种翻墙操作。下面是一张描述该环境的示意图:

图片丢失,请联系作者

Socks代理服务的使用

在浏览器中使用Socks代理

这里以FireFox为例,其它浏览器均有类似功能,配置方法大家可以自行Google搜索。
在 菜单 -> 选项 -> 高级 -> 网络 -> 设置
中可以配置代理,如下图所示(代理服务器为个人的一台国外主机):
图片丢失,请联系作者

点击确定后,代理便生效了,下面通过访问 www.ip138.com 对比下代理前后的区别,如下所示:
代理前:

图片丢失,请联系作者

代理后:

图片丢失,请联系作者

全局代理的配置

ProxyCap是一个可以设置全局代理的工具,它可以将主机大部分对外请求以代理方式发出,当某个工具无法配置代理时,这是一个不错的选择,使用方法如下:
配置代理地址:

图片丢失,请联系作者

添加代理规则:

图片丢失,请联系作者

此时代理规则建立成功,如下图所示:

图片丢失,请联系作者

用浏览器访问 www.ip138.com 测试代理结果,如下图所示:

图片丢失,请联系作者

代理协议的转化

在实际使用中,ssh工具可以创建socks代理,然而总有一些工具只支持http代理,这时需要将socks代理转化为http代理方可。此处可以用 Privoxy 工具达到这一效果。

1.安装并运行Privoxy,通过 Options -> Edit Main Configuration 打开该工具的配置文件。随意哪里插入如下两行:

listen-address  127.0.0.1:8118  
forward-socks5   /               127.0.0.1:1080  .  

PS :forward 行尾有个点字符,缺失这个字符有时会导致代理失败。

这两行的意思是,将本地的 1080 端口监听的socks5协议转化为 8118端口的http代理协议。 保存退出该配置文件后,通过双次选择 Options -> Enable 选项,重启代理服务。

2.最后,在FireFox 浏览器中配置代理协议为http,代理端口为本地 8118 端口,如下图所示:

图片丢失,请联系作者

3.此时访问 www.ip138.com 网站测试代理结果,如下图所示:

图片丢失,请联系作者

写在最后

本文介绍了一些和socks代理使用相关的知识。文中提到的工具都有其它替代工具,感兴趣的可以自行挖掘新工具的用法。

TAGS : [ socks 技术相关 ]