Debian上架設Spdy Proxy代理服務

1 安裝Node.js

debian上安裝node.js的穩定版需要從源代碼編譯,root環境下,先安裝編譯所必要的軟件包

aptitude install python g++ make

然後下載源代碼並編譯:

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

ubuntu下安裝node.js則相對簡單,無需編譯,添加一個源並安裝即可,同樣是root環境:

aptitude install python-software-properties
add-apt-repository ppa:chris-lea/node<b>.</b>js
aptitude update
aptitude install nodejs npm

2 安裝spdy proxy

安裝好node.js之後,安裝spdy proxy只需一個命令就可以了

npm install -g spdyproxy

然後就是準備證書了,還是推薦startssl.com申請免費的ssl證書,啟動使用如下命令:

spdyproxy -k ssl.key -c ssl.crt -p 44300 -U username -P password
# -k 後是私鈅,-c 簽署好的證書,用絕對路徑,防止出錯
# -p 後是端口,-U -P分別是用戶名和密碼

如果需要後台運行可以用nohup來實現:

nohup spdyproxy -k ssl.key -c ssl.crt -p 44300 -U username -P password &

如需指定日誌的輸出位置則:

nohup spdyproxy -k ssl.key -c ssl.crt -p 44300 -U username -P password > spdy.log 2>&1 &

這樣就有了一個端口為44300的SSL加密代理了,國內推薦用Chrome+SwitchySharpWhtielist PAC使用。

已知問題:

1、貌似spdy proxy執行效率不高,訪問vimeo.com的時候經常會卡頓,此時服務器對其他請求的響應也會非常緩慢,換了幾個vps都這樣(包括內存比較大的kvm vps)。因此還是推薦squid+stunnel的方式。

本文參考了以下網頁:

[1] Joyent. Installing Node.js via package manager. https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager
[2] Ilya Grigorik. node-spdyproxy. https://github.com/igrigorik/node-spdyproxy