(2013-7-5)在centos上安装spdy代理

(2013-7-5)在centos上安装spdy代理

编辑文章

环境配置

安装环境包

yum -y update
yum install -y \
gcc gcc-c++ glibc glibc-devel glib2 glib2-devel unzip make automake autoconf \
ncurses ncurses-devel libjpeg libjpeg-devel libpng libpng-devel \
freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel bzip2 \
bzip2-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5-devel \
libidn libidn-devel openssl openssl-devel openldap openldap-devel \
nss_ldap openldap-clients openldap-servers xinetd sudo \
pcre pcre-devel subversion bzip2* git

升级python

本文HTML永久地址 doc

默认CENTOS5.X下python为2.4版本的,需要升级到2.6 | 2.7才可以编译nodejs,CENTOS6.X下python为2.6版本的,不需要额外在升级

cd /usr/src
wget http://www.python.org/ftp/python/2.7/Python-2.7.tar.bz2  
tar xjf Python-2.7.tar.bz2
cd Python-2.7

./configure
make all
sudo make install
make clean
make distclean

sudo mv /usr/bin/python /usr/bin/python-bak  
sudo ln -s /usr/local/bin/python2.7 /usr/bin/python

修改yum默认的版本,否则不能使用yum命令
vi /usr/bin/yum
修改#!/usr/bin/python 为#!/usr/bin/python2.4

查看当前的版本

python -V 

下载编译node

cd /usr/src
wget -N http://nodejs.org/dist/node-latest.tar.gz
tar xzvf node-latest.tar.gz && cd `ls -rd node-v*`
# make test
./configure
make install

本地安装spdyproxy代理程序

npm install -g git://github.com/jiehanzheng/node-spdyproxy.git

创建游览器证书

方法一

cd /tmp/
openssl genrsa -des3 -out server.key 2048
openssl req -new -key server.key -out server.csr
openssl rsa -in server.key -out server_nopwd.key
openssl x509 -req -days 365 -in server.csr -signkey server_nopwd.key -out server.crt

证书配置参考http://www.cnblogs.com/tintin1926/archive/2012/07/12/2587311.html

方法二(快速)

cd /tmp/
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout server_nopwd.key -out server.crt

下载到本地
使用这个命令临时开启http服务器 ,快速下载到本地

python -m SimpleHTTPServer

导入证书: 打开IE游览器-->Internet选项---内容---证书---受信任的根证书颁发机构--导入

方法三(使用游览器认证的证书)

这种证书不需要导入,游览器都默认支持

购买收费域名ssl证书

启动

nohup spdyproxy -k /tmp/server_nopwd.key -c /tmp/server.crt -p 443 -U user -P password -v &
# -k为ssl key文件
# -c为ssl证书文件
# -p为代理端口
# -U你访问的用户名
# -P为你访问的密码
#更多使用spdyproxy --help查看帮助

配置开机启动

vi /etc/rc.local
/usr/local/bin/node /usr/local/bin/spdyproxy -k /tmp/server_nopwd.key -c /tmp/server.crt -p 443 -U user -P password &

客户端设置

修改一下 C:\Windows\System32\drivers\etc\hosts 文件,添加你的域名指向你的SDPY IP (登录你的域名管理面板修改域名指向你的SPDY代理 IP

chrome游览器通过添加下面启动参数

--proxy-pac-url=http://lihaixin.googlecode.com/svn/trunk/proxy/whitelist_ssh.pac
--proxy-server=https://youdomain.com:443

关于pac更多知识请访问https://github.com/igrigorik/node-spdyproxy/tree/master/pac

或者下载配置文件修改为你自己的SPDY 代理IP,使用Proxy SwitchySharp 自动配置(可以本地导入,或者使用URL)

参考资料

  1. 使用 Chrome + WebVPN 5分钟学会翻墙
  2. 利用node.js搭建SPDY协议的翻墙服务

没有评论 :

发表评论