2012年1月12日星期四

利用plowshare在vps的命令行里下载网盘的文件。

最近国外的网盘也被墙的很厉害。。郁闷的是代理服务的ip也被网盘给墙了。就算拿rapid 拖也不好拖。于是就到处翻了一下。找到了用vps的命令行来下载网盘文件的方法。。

用的东西叫做plowshare..官网在这里http://code.google.com/p/plowshare/wiki/Readme
以下方法我在yardvps 的xen 环境下测试通过。。我的是debian 5 32位的vps..其他自己类推。。
首先是安装依赖包。
#apt-get install curl recode imagemagick tesseract-ocr-eng spidermonkey-bin aview perlmagick

然后用dpkg -i 来安装下载好了的deb包。。。

安装之后就简单多了。。
 使用方法是

plowdown URL

 多简单是不是。。。。但是会遇见有支持验证码的怎么办。。当然系统自带的那个验证码提示器很痛苦。。不过plowdown现在支持了captchatrader..这个网站呢就是一个非常简单的认证码的交易网站。。注册一个帐号就送100点积分。可以免费解析10次。你也可以帮别人去做认证码。做一次可以得到7点积分。懒人也可以直接去购买认证码。当然更懒的人可以点下面的链接直接去注册。也可以给我加点积分什么的。。
http://captchatrader.com/users/refer/kajisan/
 
注册成功之后。你在用plowdown的时候就可以使用自动时别认证码功能了。。方法就是
plowdown --captchatrader=username:password URL
这里的username 跟password 就是你在captchatrader上的注册帐号和密码。

另外程序本身还支持网盘的帐号。除开几个特别的话。基本都不外是这个格式
plowdown -a username password URL
程序会自动根据你的URL判别是哪个网站的帐号。。完整的话就是
plowdown --captchatrader=username:password -a username:password  http://www.fileserve.com/file/xxxxxxxxxxxxxxxxxxxxxxx.rar


这样就可以看见你的vps开始soso的下载了。。下载好了自己想办法弄回本地来吧。。另外vps一般都是有流量限制的哦。小心别超过了。。

2011年3月6日星期日

利用AWS创建免费的 SSL twitter api

通过aws打造自己的VPS

本文介绍如何通过AWS的免费vps 服务器迅速打造自己的vpn,ssh以及SSL 的 twitter API.

前提。
1.你有自己的域名。或者你能在别人那里借到一个2级域名什么的。任何你可以设定DNS解析的都可以
2.你有一个信用卡

准备工作。运行并且配置自己的AWS,请注册攻略及配置请参考
http://www.inside.com.tw/2010/11/11/02/amazon-aws-1
http://www.inside.com.tw/2010/11/11/05/free-aws2

然后可以阅读以下内容直到你能成功的连接上SSH,系统安装可以暂时不用。我们后面会详细讲
http://www.inside.com.tw/2010/11/08/free-aws-3

现在去申请自己的证书
请看教材 http://blog.yeeh.org/tags/ssl/1/1/
重点是第9步中得到的ssl.key
然后是最后得到的ssl.crt

请保存好这2个文件。我们就开始正式下手了

请在ssh的窗口中依次输入以下内容,#开头的内容无需输入。只是提示
sudo -i
yum update
yum install apache php php-mysql mod_ssl

#如果一路上有询问只需要YYYYYY

cd /etc/httpd/
vi ssl.key

#请复制ssl.key 的所有文本内容。按键盘上的i,左下角提示INSERT,然后右键,就可以看见所有内容粘贴上去,然后:wq保存(给第一次用vi的同学说明一下。请先按 :键,然后输入wq 然后回车)

openssl rsa -in ssl.key -out ssl.key

#输入你在第9步的时候所设置的密码,系统会提示rsa写入成功

vi ssl.crt

#请复制ssl.crt 的所有文本内容,保存退出

wget http://www.startssl.com/certs/ca.pem
wget http://www.startssl.com/certs/sub.class1.server.ca.pem 

#东西准备好了。然后开始编辑apache的配置文件


vi /etc/httpd/conf.d/ssl.conf
#找到VirtualHost 那一段,修改为<VirtualHost *:443>
#并且在紧接着增加

DocumentRoot "/var/www/html"
ServerName 你的域名
<Directory />
    Options FollowSymLinks
    AllowOverride All
</Directory>
<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>
SSLCertificateFile /etc/httpd/ssl.crt
SSLCertificateKeyFile /etc/httpd/ssl.key
SSLCertificateChainFile /etc/httpd/sub.class1.server.ca.pem
SSLCACertificateFile /etc/httpd/ca.pem

#并且把下面的SSLCertificateFile,SSLCertificateKeyFile,SSLCertificateChainFile,SSLCACertificateFile 的前面加上#号注释掉,保存并且退出

vi /etc/httpd/conf/httpd.conf
#找到listen 80 ,在前面加上#号注释掉,避免不小心访问到80端口了

/sbin/service httpd start
#如果提示绿色的OK.那么表示一切正常。你可以打开https://你的域名,就可以看见apache的测试页面了

#下面开始配置twip4

cd /var/www
wget http://twip.googlecode.com/files/twip-4.1-r184.tar.gz
tar -zxvf twip-4.1-r184.tar.gz
mv twip/* html/
#因为mv 会遗漏掉.htacess文件。所以手工拷贝一下
cp twip/.htaccess html/
cd twip
cp config-example.php config.php
vi config.php
#填入你的那些什么什么。详见twip的手册,保存退出
vi .htaccess
#请修改为以下内容。。。如果你是放在其他目录的话。请修改/为你的目录,例如/twip/

<IfModule mod_rewrite.c>
RewriteBase /
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]
</IfModule>
DirectoryIndex index.html

#保存并且退出。在浏览器打开https://你的域名.享受ssl api吧
#如果你还需要VPN,请参考http://kaji2015.blogspot.com/2011/03/awsvpn.html

因为我在搭建过程中没有记得截图。因此欢迎大家在申请ssl证书或者aws上有稍微不明白的截图并且发给我。我会整理一个更详细的文档

AWS上的一键安装VPN服务的脚本

在http://yinhm.appspot.com/那里找到了一键建立vpn服务的脚本。做个全部的备份
首先开启aws 的1723 端口.
然后将下面的脚本保存为pptpd.sh
#--------------------------
# Automaticlly install pptpd on Amazon EC2 Amazon Linux
#
# Ripped from http://blog.diahosting.com/linux-tutorial/pptpd/
# pptpd source rpm packing by it"s authors
#
# WARNING:
# first ms-dns setting to 172.16.0.23, 172.16.0.23 was showing on my
# /etc/resolv.conf, I"m not sure this is the same on all Amazon AWS zones.
#
# You need to adjust your "Security Groups" which you are using too.
# The security rules which I"m using looks like:
# =================================
# ALL tcp 0 65535 0.0.0.0/0
# ALL udp 0 65535 0.0.0.0/0
# =================================
#
# Authors: yinhm
# Version: 0.1.0
# URL: http://yinhm.appspot.com/

yum remove -y pptpd ppp
iptables -flush POSTROUTING -table nat
iptables -flush FORWARD
rm -rf /etc/pptpd.conf
rm -rf /etc/ppp

yum -y install rpm-build gcc
yum -y install ppp

mkdir ~/src
cd ~/src
wget http://www.bradiceanu.net/files/pptpd-1.3.4-1.fc12.src.rpm

rpmbuild -rebuild pptpd-1.3.4-1.fc12.src.rpm
rpm -i ../rpmbuild/RPMS/i386/pptpd-1.3.4-1.amzn1.i386.rpm

sed -i "s/^logwtmp/#logwtmp/g" /etc/pptpd.conf

sed -i "s/^net.ipv4.ip_forward = 0/net.ipv4.ip_forward = 1/g" /etc/sysctl.conf
sysctl -p
echo "localip 192.168.240.1″ >> /etc/pptpd.conf
echo "remoteip 192.168.240.2-100″ >> /etc/pptpd.conf
echo "ms-dns 172.16.0.23″ >> /etc/ppp/options.pptpd
echo "ms-dns 8.8.8.8″ >> /etc/ppp/options.pptpd

pass=`openssl rand 8 -base64`
if [ "$1" != "" ]
then pass=$1
fi

echo "vpn pptpd ${pass} *" >> /etc/ppp/chap-secrets

iptables -t nat -A POSTROUTING -s 192.168.240.0/24 -j SNAT -to-source `ifconfig | grep "inet addr:"| grep -v "127.0.0.1′ | cut -d: -f2 | awk "NR==1 { print $1}"`
iptables -A FORWARD -p tcp -syn -s 192.168.240.0/24 -j TCPMSS -set-mss 1356
service iptables save

chkconfig iptables on
chkconfig pptpd on

service iptables start
service pptpd start

echo -e "VPN service is installed, your VPN username is \033[1mvpn\033[0m, VPN password is \033[1m${pass}\033[1m"
#---------------

然后sudu sh pptpd.sh,就会自动创建好vpn。提示给你用户名和密码。如果需要增加用户

sudo vi /etc/ppp/chap-secrets
按照格式添加然后保存即可