我在http://briteming.blogspot.co.uk/2012/08/nodejsspdyproxy.html 一文说过"利用SPDYproxy+chrome翻墙",因去年生成自签名证书时,设定了证书有效期为365天,现在一年过去了,再用此法翻墙失败。解决方法:
先登录vps,删除服务器上的private.key和public.crt,再运行如下命令重新生成它们:
openssl req -x509 -nodes -days 1825 -newkey rsa:2048 -keyout private.key -out public.crt
这次,我把证书有效期设为5年(365X5=1825).
然后运行ps aux|grep node,查找node进程-
as3:~# ps aux|grep node
root 2021 0.0 0.0 40532 8 ? Sl Jul20 0:01 /usr/local/bin/node server.js
root 2023 0.0 1.6 105328 8484 ? Sl Jul20 2:04 /usr/local/bin/node /root/main.js -k /root/private.key -c /root/public.crt -p 443 -U myusername -P mypassword
root 10552 0.0 0.0 37436 8 ? Sl Jul20 0:00 node /root/snova-c4-nodejs-server-0.22.0/server.js
root 24904 0.0 0.1 3876 796 pts/1 S+ 04:41 0:00 grep node
可以看到有3个node进程。需要杀死/usr/local/bin/node /root/main.js -k /root/private.key -c /root/public.crt -p 443 -U myusername -P mypassword这个进程。其进程号为2023,于是
as3:~# kill 2023
然后再重新运行/usr/local/bin/node /root/main.js -k /root/private.key -c /root/public.crt -p 443 -U myusername -P mypassword这个进程:
nohup /usr/local/bin/node /root/main.js -k /root/private.key -c /root/public.crt -p 443 -U myusername -P mypassword > /dev/null &
然后用winscp下载新生成的public.crt到本机。在本机,导入这个新生成的public.crt到chrome的"受信任的根证书颁发机构"下,就又可翻墙了。在导入之前,需在chrome的“设置”里,删除之前导入的证书。
先登录vps,删除服务器上的private.key和public.crt,再运行如下命令重新生成它们:
openssl req -x509 -nodes -days 1825 -newkey rsa:2048 -keyout private.key -out public.crt
这次,我把证书有效期设为5年(365X5=1825).
然后运行ps aux|grep node,查找node进程-
as3:~# ps aux|grep node
root 2021 0.0 0.0 40532 8 ? Sl Jul20 0:01 /usr/local/bin/node server.js
root 2023 0.0 1.6 105328 8484 ? Sl Jul20 2:04 /usr/local/bin/node /root/main.js -k /root/private.key -c /root/public.crt -p 443 -U myusername -P mypassword
root 10552 0.0 0.0 37436 8 ? Sl Jul20 0:00 node /root/snova-c4-nodejs-server-0.22.0/server.js
root 24904 0.0 0.1 3876 796 pts/1 S+ 04:41 0:00 grep node
可以看到有3个node进程。需要杀死/usr/local/bin/node /root/main.js -k /root/private.key -c /root/public.crt -p 443 -U myusername -P mypassword这个进程。其进程号为2023,于是
as3:~# kill 2023
然后再重新运行/usr/local/bin/node /root/main.js -k /root/private.key -c /root/public.crt -p 443 -U myusername -P mypassword这个进程:
nohup /usr/local/bin/node /root/main.js -k /root/private.key -c /root/public.crt -p 443 -U myusername -P mypassword > /dev/null &
然后用winscp下载新生成的public.crt到本机。在本机,导入这个新生成的public.crt到chrome的"受信任的根证书颁发机构"下,就又可翻墙了。在导入之前,需在chrome的“设置”里,删除之前导入的证书。