Categories
技术讨论

1455天-Dreamhost时代结束

今天正式关闭了在Dreamhost的账号,一个时代结束了。

1455天,最后看一次这个数字,还真的很长。

负责任地说,Dreamhost是一个非常优秀的虚拟主机服务商,非常棒。完善的备份系统、超快的网络速度,优秀的客户服务,强大的后台面板,这些都给我留下了深刻的印象,这一切也都会是一个美好的回忆。而无限制的域名,超大的磁盘空间和流量倒显得微不足道了。

虽然偶尔会有网络故障或者高cpu load,但是仅仅是偶尔,在这1455天中,我只遇到了2次。

如果只是虚拟主机,Dreamhost还是不二选择。如果Dreamhost的服务满足不了,那你已经不属于虚拟主机的层次了。

最后再看一眼,结束一个时代。

Categories
技术讨论

博客搬家完毕,启用新域名www.satwe.com

各位看官,本博客”Hamo’s World”正式启用新域名: www.satwe.com,烦请各位帮忙更新。

这次史无前例的搬家耗时近半个月,内容有3,总结如下:

1. 更换主机服务商。

在Dreamhost已经有4年了,说实话DH挺适合我,速度快,空间大,对uptime不太敏感。但是由于以前提到过的一些特殊需求,虚拟主机满足不了,于是干脆vps吧。

首先在vpslink买了个廉价vps试手,各种需求体验完毕,正式启动迁移。

在对比之后选择了Linode,Frement的机房。Linode可以按1个月、24个月或者48个月付款,而且最好的地方在于,即使支付了48个月,中途停止服务的话,linode会按照剩余时间退还费用。这在其他的服务商还很少看到。

Categories
技术讨论

在VPS上快速搭建VPN服务器

小时候就被教导说:珍惜每一滴水。

所以即使在现在64M的vps上安装了nginx+php安装完又卸载了squid,又用3prxoy建立http与socks代理,但是还可以继续。

最近被墙撞得郁闷,虽然有club里提供的超牛代理,但是还是弄个vpn备用吧。

当然,不是所有的vps上都可以搭建vpn服务。只有Xen平台的vps才可以。而现在市面上的便宜的vps大多是OpenVZ平台的。

继续体验Ubuntu的便利之处。

安装服务端# apt-get install pptpd

设置ip地址# vi /etc/pptpd.conf 去掉相关注释

localip 192.168.0.1
remoteip 192.168.0.234-238,192.168.0.245

增加用户# vi /etc/ppp/chap-secrets

user1 pptpd password *  #最后的*表示允许任意ip连接

设置dns解析支持:# vi /etc/ppp/options

ms-dns 208.67.222.222
ms-dns 208.67.220.220

打开转发:# vi /etc/sysctl.conf

net.ipv4.ip_forward=1

检查/dev/ppp设备是否存在,不存在则执行:mknod /dev/ppp c 108 0

重启pptpd服务:# /etc/init.d/pptpd restart

激活转发参数: sysctl –p

配置iptables:iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE (感谢zzz上海提醒)

OK。在windows中增加一个网络连接vpn,输入用户名密码。

连接成功之后就可以不会撞墙了。

Categories
技术讨论

在VPS上用3Proxy架设http代理和socks代理(Ubuntu)

前几天记录了在廉价的xen vps主机上通过squid架设http代理的情况,试用效果非常不错。但是现在需要增加socks代理,这方便squid就无能为力了,于是改用传说中的轻量级的NB代理软件3Proxy。3Proxy是俄罗斯人开发的(怎么又是俄罗斯人,前面nginx),主页在www.3proxy.ru

3Proxy支持windows和linux等各种平台。windows下直接下载安装即可,Linux下面需要自己编译。

虽然是编译安装,但是也是毫不费力。

下载、编译、安装:

wget http://www.3proxy.ru/current/3proxy-0.7-devel.tgz

tar zxf 3proxy-0.7-devel.tgz

cd 3proxy-0.7

make –f Makefile.Linux

make –f Makefile.Linux install

好了,下面是配置过程:

cp cfg/3proxy.cfg /etc/3proxy.cfg

vi 3proxy.cfg

配置文件的说明相当详细,用户验证的手段也非常简单。

#!/usr/local/bin/3proxy
nserver 64.79.200.111
nserver 64.79.200.113
nscache 65536
timeouts 1 5 30 60 180 1800 15 60
users user1:CL:****
daemon
log /var/log/3proxy/3proxy.log D
logformat "- +_G%t.%. %D %C TCP_MISS/200 %I %1-1T %2-2T %U DIRECT/%R application
/unknown"
archiver rar rar a -df -inul %A %F
rotate 30
auth strong

external  111.111.122.111
internal 192.168.1.8

auth strong
deny * * 127.0.0.1,192.168.1.1
allow * * * 80-88,8080-8088,8001-8010 HTTP
allow * * * 443,8443,8001-8010 HTTPS
proxy –n
socks

然后运行下面命令。

/usr/local/bin/3proxy /usr/local/etc/3proxy/3proxy.cfg

如果需要开机启动,在/etc/init.d/中建立相关的命令并加到启动即可。

具体的文档可以参考:http://www.3proxy.ru/howtoe.asp

Categories
技术讨论

试用基于Xen的VPS(2):配置squid服务器

前面总结了 基于Xen的VPS的web服务器的配置:ubuntu+nginx+php,下面记录下squid服务器的配置。

安装很简单:apt-get install squid

配置中的重点是打开用户验证。

通过htpasswd建立用户名密码文件,然后在squid的配置文件中设置。

http_port 3128
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/squid.password
auth_param basic children 5
auth_param basic realm Hamo’s Private Proxy
auth_param basic credentialsttl 4 hours

acl all src all
acl manager proto cache_object
acl localhost src 127.0.0.1/32
acl to_localhost dst 127.0.0.0/8
acl localnet src 10.0.0.0/8    # RFC1918 possible internal network
acl localnet src 172.16.0.0/12    # RFC1918 possible internal network
acl localnet src 192.168.0.0/16    # RFC1918 possible internal network

acl SSL_ports port 443        # https
acl SSL_ports port 563        # snews
acl SSL_ports port 873        # rsync
acl Safe_ports port 80        # http
acl Safe_ports port 21        # ftp
acl Safe_ports port 443        # https
acl Safe_ports port 70        # gopher
acl Safe_ports port 210        # wais
acl Safe_ports port 1025-65535    # unregistered ports
acl Safe_ports port 280        # http-mgmt
acl Safe_ports port 488        # gss-http
acl Safe_ports port 591        # filemaker
acl Safe_ports port 777        # multiling http
acl Safe_ports port 631        # cups
acl Safe_ports port 873        # rsync
acl Safe_ports port 901        # SWAT
acl purge method PURGE
acl CONNECT method CONNECT

acl normal proxy_auth REQUIRED

http_access allow manager localhost
http_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access deny to_localhost
http_access allow localhost
http_access allow normal
http_access deny all

然后重启squid即可。

Categories
技术讨论

试用基于Xen的VPS(1):ubuntu+nginx+php

跟踪vps已经很久了,但是因为需要特殊端口开服务,所以符合条件的多为Xen平台的vps。众多比较之后选择了vpslink在西雅图机房,速度还不错。
因为对系统性能要求很低,所以选择了Link-1,2.5G硬盘、64M内存、100GB流量、1个独立ip。
使用优惠码9DMM7R可以有10%的折扣,vpslink.com。当然也可以找更大折扣的优惠码,但是一般只限3个月内。
在vpslink后台安装os,选择ubuntu9.04,一分钟后系统装完了,ssh登录root。
工作1:配置web服务器
为了调试程序,支持php的web服务器还是需要的。内存太小所以抛弃了一直以来的apache,改用nginx,并且通过fast-cgi来支持php。vpslink提供了ubuntu的源镜像,速度没的说。

(1)一步到位,安装nginx和php

apt-get install nginx php5-cli php5-cgi php5-mysql

(2)因为需要spawn-fcgi来启动fast-cgi,所以安装lighttpd,并设置为开机不启动

apt-get install lighttpd

(3)配置fast-cgi

在/etc/init.d/下建立php-cgi的服务文件,简单起见,可以直接copy nginx的来修改

cp nginx php-cgi

vi php-cgi,修改对应参数

DAEMON=/usr/bin/spawn-fcgi
DAEMON_OPTS=”-a 127.0.0.1 -p 9000 -C 10 -u www-data -f /usr/bin/php-cgi”

修改stop时的动作为:pkill -9 php-cgi

保存,退出。

(4) 配置nginx,打开php支持

vi /etc/nginx/sites-available/default

index中增加index.php,并将相关php部分注释取消,注意需要修改fastcgi_param的路径

location ~ \.php$ {
fastcgi_pass   127.0.0.1:9000;
fastcgi_index  index.php;
fastcgi_param  SCRIPT_FILENAME /var/www/nginx-default$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}

(5) 启动服务

/etc/init.d/php-cgi start

/etc/init.d/nginx start

web服务器就配置完了。

工作2:配置squid代理服务器

这才是主要目的,要不也不用特意选择Xen的vps了。下回再说。

试用基于Xen的VPS(2):配置squid服务器