本文介绍如何在MacOS X终端里使用代理访问网络,虽然只在Mountain Lion下测试,但同样适用于装有Bash的系统。
动手配置了一个goagent服务。但是HTTP代理和VPN不同,没法全局代理(至少不能简单配置),在Terminal里下载最新版本的Ruby,奇慢无比,下面介绍如何让Terminal里执行的程序使用goagent代理。
使用tsocks可以为任意程序提供socks代理
$ brew tap adamv/alt
$ brew install tsocks
打开配置文件/usr/local/etc/tsocks.conf
修改如下
local = 192.168.0.0/255.255.255.0
server = 127.0.0.1
server_type = 5
server_port = 8080
$ export http_proxy='http://YOUR_USERNAME:YOUR_PASSWORD@PROXY_IP:PROXY_PORT/'
$ export https_proxy='http://YOUR_USERNAME:YOUR_PASSWORD@PROXY_IP:PROXY_PORT/'
$ unset http_proxy
$ unset https_proxy
让Terminal里的http访问走goagent的默认端口8087
$ export http_proxy='http://localhost:8087'
$ export https_proxy='http://localhost:8087'
$ tsocks /Applications/Textual.app/Contents/MacOS/Textual
使用ssh -D
可以获得一个socks5代理,privoxy可以将socks转换为http代理
安装privoxy
brew install privoxy
修改配置文件vim /usr/local/etc/privoxy/config
listen-address 0.0.0.0:8118
forward-socks5 / localhost:1080 .