如何快速搭建一个VPN(pptp)

  这是一个简短的教程,目的是为了快速搭建一个可用的VPN,本文并不涉及有关VPN的正常使用内容。本简短教程基于以下硬件条件:

  1. 一台安装了Debian GNU/Linux 5.0的VPS。
    • 当然理论上所有可以安装pptpd包的*nix系统都可以作为主机,教程中安装方式是基于Debian的apt-get命令,其他发行版请自行对照使用。
  2. 这台VPS的物理位置是Fremont, CA。
    • 物理位置作为VPN这个应用本身并不重要,在这里提出只是多此一举。

安装服务器端软件

# apt-get install pptpd

  Debian的包管理是所有发行版里最好的,所以这条命令打完就安装完毕了我们的pptp服务器端程序。

配置IP地址范围
  编辑/etc/pptpd.conf,在最后添加如下地址:

localip 192.168.0.1
remoteip 192.168.0.234-238,192.168.0.245

  这两句设置了当外部计算机通过pptp联接到vpn后所能拿到的ip地址范围和服务器的ip地址设置。

增加一个用户
  编辑/etc/ppp/chap-secrets,在下面增加类似的条目:

username pptpd password *

  上面内容很好理解,最后那个星号是说允许从任何IP地址联接,如果你想单独设定IP地址也可以。

重启pptpd服务

# /etc/init.d/pptpd restart

  理论上到这里一个vpn就已经搭建完毕了。无论你用的是Windows还是OSX,或者是iPhone OS,都可以通过建立一个pptp链接来联入这个VPN。不过你并不能通过这个来上Internet,因为所有的数据都作用于那台pptpd的服务器上,而不会传入拨入的计算机设备上。要上Internet还需要这么干:

dns解析支持
  编辑:/etc/ppp/options,在里面找一下“ms-dns”项目:

ms-dns 208.67.222.222
ms-dns 208.67.220.220

  我填写的是OpenDNS的地址,当然你也可以填写电信的DNS。

允许转发
  编辑/etc/sysctl.conf,看一下net.ipv4.ip_forward参数是不是1。

net.ipv4.ip_forward=1

  最后的最后,运行一下这条命令来打开iptables的转发支持:

/sbin/iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE 

注意:来自@LEMONed的消息,只有Xen的VPS可以搭建pptp,OpenVZ的不行。

引用来自@LEMONed的话:
因为openvz下只有venet0,没有eth0,而绝大多数的vps都是openvz的,然后绝大多数的openvz vps都没有masqurade,只能搭建openvpn并且要自签证书什么的,根本不能用pptpd。我为了给iphone搭个vpn曾经把这个研究透彻了

看来过几天我得再写一份搭openvpn的教程。

这里有个如何在openvz下搭建OpenVpn的教程:OpenVZ VPS安装配置OpenVPN

整理信件及其他

  Gmail的IMAP打开后试用了一阵,但国内链入Gmail服务器的速度让这个服务完全处于不可用状态,于是作罢。但由此带来的后遗症是昨天我决定打开Gmail的Pop功能把Gmail上的邮件都做一个本地备份,由此有了以下一些感想:

  • 不知道是Gmail聪明还是Mail.app聪明,就整个过程看Mail.app一小部分一小部分的在收取Gmail上的邮件。它没有傻到一下子去下多达2G的Mail,而是每次20-50封的去下载。(最大的可能还是Gmail做的如此设定)
  • Mail.app是我用过的所有邮件客户端配置信箱最舒心的一个,我只是填写了我的Gmail地址,然后它自动配置了我的pop和smtp信息,而且十分正确。(要知道每次我都是跑到Gmail的help页面上去看那难记的三个数字)
  • Mail.app的过滤条件设置用起来很顺手,点击需要过滤的邮件然后选择规则,接下来弹出的对话框就会按照当前邮件内容变化。(比如选发信人、收件人、标题,都会以当前邮件内容做范本)
  • Mail.app并不复杂,但是都是我需要的。比如在帐号信息里可以获取Pop服务器上信件的基本信息(发件人、主题、大小),如果有必要可以直接删除而无需下载。(这个对于我很重要,有一个新加坡的邮箱经常会因为一封信收不下来而重复收取,用Mail.app就可以事先删除掉)
  • 如果在Gmail的Setting里的Pop选项页里再点一次确定,邮件会再次重复收取。(切身体会,特别是做全部邮件备份请特别注意)
  • 对Gmail帐号做一个本地备份是一件很傻的事情。

Technorati Tags: , ,

MacBook的散热问题

mb.png  Macbook的CPU温度一直比较高,早些时候一些咨询网站就有相关报道。我的MacBook新买来的时候温度还能维持在50-60左右,最近一段日子发现温度就没下过60,CPU使用率高点甚至经常飚到70以上。今天稍稍观察一下后觉得是灰尘的问题,拿来吸尘器扫了一下现在温度能维持在50-58度左右,还算满意。
  Macbook的出风口主要是下图红色标识的部分:一个是屏幕和机身的夹角处;一个是键盘左部分区域。要注意的是屏幕机身夹角最两端是喇叭的防尘罩,可以吸但是请把功率放小点。
mb2.jpg

赞一下Tomato

  从dd-wrt转到Tomato有2个月了,在昨天升级到1.11后我的Linksys WRT54G路由器变得好玩了。1.11或者之前某个版本(一直在用1.08)Tomato的DDNS开始支持3322.org,于是:

  • 外出的时候我可以登录到路由器管理界面进行设置。
  • Tomato支持网络唤醒网内的机器,也就意味着外出时随时可以控制每台机器打开。
  • 在给Windows上安装PcAnywhere和Mac上打开屏幕共享后,外出也可以登录到这些机器。

Technorati Tags: , , , ,

div的最小高度

  前几天帮人做一个首页,其中footer的上面要5条充满100%浏览器宽度的色条,我懒得作图片就这么干了:
[html]

……

[/html]
[css].c1 {
height:5px;
background:#0763ae;
}

.c2 {
height:5px;
background:#03b1a8;
……
}[/css]
  最终效果还不错,没想到今天跑到IE6下面一看吓一跳,5条东西的高度快赶上粉条了orz。我那个恨啊,又是你小子添乱,前几天刚解决div置中的问题,现在又出状况来了。中间调试过程略过,最终解决方案是在css里加上这句:
[css]#color {
font-size:5px;
}[/css]
  因为我在body里定义过字体大小是11px,而IE6里解释div最小高度好像是跟着这个参数走的。

Technorati Tags: ,