使用 Apache mod_proxy 模块搭建正向代理服务

Apache 的 mod_proxy 模块实现了正向和反向代理功能,这里使用这个模块搭建一个正向代理服务在G1手机上使用,呵呵。

sudo a2enmod proxy
sudo a2enmod proxy_connect
sudo a2enmod proxy_http
sudo vim /etc/apache2/httpd.conf
# HTTP Proxy

ProxyRequests On
ProxyVia On

	Order deny,allow
	Deny from all
	Allow from 127.0.0.1


sudo /etc/init.d/apache2 restart

Over!

强制 WordPress 为 wp-admin 目录使用HTTPS协议

如果你的Web服务器支持HTTPS协议,那么最好强制 WordPress 为 wp-admin 目录使用 HTTPS 协议,操作非常简单,只需要编辑 wp-config.php 文件,增加如下两行即可。

define('FORCE_SSL_ADMIN', true);
define('FORCE_SSL_LOGIN', true);
/* That's all, stop editing! Happy blogging. (增加在这段注释之前哦)*/

BTW: 我们的VPS已经为所有的虚拟主机启用了HTTPS协议。还有我的联通网络很恶心,不使用 HTTPS 协议根本无法登录后台,总是留在登录页面,实际已经成功登录。发现一些 Discuz 论坛也是这种情况!

Over!

利用 iptables 限制指定用户指定时间段访问网络

在使用 Linux 操作系统的多用户系统中,有时候需要限制指定的用户在指定时间段内禁止访问网络,这个怎么实现呢?当然是 iptables/netfilter 喽。

现在的 iptables 可以在 filter 表的 OUTPUT 链上匹配指定用户了,这个就可以达到指定用户的目的。另外还可以匹配时间,下面我们就以一个实例说明吧。

这里我们就限制用户名为 guest 和 users 组的所有用户在 08:00 – 12:00 这个时间段不能访问网络。

sudo iptables -A OUTPUT -m owner --uid-owner guest -m time --timestart 08:00 --timestop 12:00 -j DROP
sudo iptables -A OUTPUT -m owner --gid-owner users -m time --timestart 08:00 --timestop 12:00 -j DROP

Over!

Ubuntu 9.10 远程桌面、声音 (XDMCP,PulseAudio)

本文说明如何在 Ubuntu 9.10 操作系统中启用 XDMCP 类型的远程桌面并保留声音在服务器端。

我们需要启用 PulseAudio 的系统模式,来解决 XDMCP 远程登录的用户不能使用声音的问题。需要将使用声音的用户加入到 pulse-access 组中才可以访问 pulseaudio 服务。

需要修改的配置文件

/etc/gdm/gdm.schemas
/etc/default/pulseaudio

修改这个 /etc/gdm/gdm.schemas 配置文件启用 XDMCP 访问

    
      xdmcp/Enable
      b
      true
    

修改这个配置文件 /etc/default/pulseaudio 启用 PulseAudio 的系统模式

PULSEAUDIO_SYSTEM_START=1
DISALLOW_MODULE_LOADING=0

使用下面的命令将需要使用声音的用户加入 pulse-access 组

sudo gpasswd -a username pulse-access

重启系统或启动 pulseaudio 服务。

Over!

Linksys WRT54G V4

买了一款 Linksys WRT54G v4 版本的无线路由器,这款路由器在刷了第三方开源固件 OpenWRT 后实在是太强大了。

原版硬件配置
芯片:Broadcom BCM5352 chip rev 0
CPU:BCM3302 V0.8 200MHz
RAM:现代 DDR 16-bit 16M
FLASH:4M
WAN:1
LAN:4
天线:2

可升级的硬件
RAM:可换64M内存颗粒
FLASH:可换8M芯片
USB:可增加USB接口

我准备先更换RAM为64M,为CPU增加一个散热片超频到225MHz,再搞定编程器后将FLASH芯片也更换了,最后在内部增加一个USB的闪存盘。

这款路由器的硬件配置还是不错的吧,在这配置基础之上的功能也是非常强大的。具体就看 OpenWRT 的文档吧。

Over!

命令行版本的 SIP 客户端 - pjsua

pjsua 是 pjproject 项目的一个例程,它是命令行版本的,我测试了一下穿越 NAT 效果很好,同时资源占用也非常少,在使用 speex 编码通话时,上传和下载的宽带都是 1.5-2.0 KB/s,通话清晰。

源代码下载:http://www.pjsip.org/download.htm
二进制程序:sftp://sftp:[email protected]:heiher/files/
使用文档:http://www.pjsip.org/pjsua.htm

需要修改的部分

#
# Account 0:
#
--id sip:[email protected]
--registrar sip:sip.voipuser.org
--reg-timeout 300
--realm sip.voipuser.org
--username username
--password password

#
# Network settings:
#
--local-port 5060
--stun-srv stun.voipuser.org

Over!

下载指定格式的 Youtube 视频

复制视频的地址
当你需要下载一个视频时,先在浏览器的地址栏中找到这个视频的地址。如 http://www.youtube.com/watch?v=sw9EbA4KnlI

获取下载地址
方法1:接着打开 http://keepvid.com/ 在这个网站的 URL 输入栏中粘贴上之前复制的视频地址,再点击 Download 按钮,输入正确的验证码并点击 Submit
方法2:接着打开 http://vixy.net/ 在这个网站中的 URL 输入栏中粘贴上之前复制的视频地址,再选择一个合适的格式,点击 Start 后等待转换,一会就可以点击 Download 下载了。

下载MP4视频文件
完成上述的操作后,将会得到不同画质的视频文件的下载链接,选择你所需要的,点击 Download 即可。

Over!

防止 SSH 端口转发穿透防火墙

网络上很多文章在描述如何利用 SSH 的端口转发功能穿透防火墙,访问防火墙后面的服务。这里我们说说如何防止这样的行为。

通过 sshd_config
这种方法只适用于已知需要转发的端口并且数量不大,例如只让用户能够转发 127.0.0.1:8000 和 127.0.0.1:9000。在 /etc/ssh/sshd_config 中增加

PermitOpen 127.0.0.1:8000
PermitOpen 127.0.0.1:9000

通过 iptables
这种方法适用于只限制某基些主机端口对,例如做代理服务时希望禁止用户(fwd 组)转发 127.0.0.1 的所有端口,其它的都能转发。

sudo iptables -I OUTPUT -m owner --gid-owner fwd -o lo -j DROP

这里是禁止了 fwd 组用户的数据包从 lo 接口外出,iptables 可以 match 出用户(–uid-owner)、组(–gid-owner)、进程(–pid-owner)、命令(–cmd-owner),具体看 man iptables。

Over!