2006年7月26日

在 Redhat 上安全使用 Tor

Author: Hagen.GoO 转载请注明作者出处
MSN contact:
wantm009@hotmail.com
Keyword: Tor,Proxy,GFW
Tor 是基于分布式 Onion Routers 模型的英特网匿名通讯工具。国内的网民可以用此来绕过 GFW 的独裁专制。
本文简单叙述,如何在 Redhat 9.0 上安装和配置 Tor。
1 所需要软件:
2 安装 Libevent 1.1
# tar -zxvf libevent-1.1a.tar.gz //* 解压下载来得的tar包
# cd libevent-1.1a //* 进入源码目录
# ./configure --prefix=/usr/local/libevent //* 执行配置脚本,我们把 libevent 指定安装到 /usr/local/libevent
# make && make install //* 编译安装
3 为 Tor 和 Privoxy 添加 nobody 的系统帐户,如果系统已经存在此用户,可以跳过这步
# useradd -d /dev/null -s /sbin/nologin nobody
4 安装 Tor 0.1.1.22
4.1 安装 Tor
# tar -zxvf tor-0.1.1.22.tar.gz //* 解压下载来得的tar包
# cd tor-0.1.1.22 //* 进入源码目录
# ./configure --prefix=/usr/local/tor --with-libevent-dir=/usr/local/libevent //* 执行配置脚本,我们把 tor 指定安装到 /usr/local/tor,并且告知刚才libevent 的安装位置
# make && make install //* 编译安装
4.2 配置 Tor
# mkdir /var/tor //* 为 Tor 新建数据存储目录
# chown nobody:nobody /var/tor //* 修改所属用户和组
# chmod 700 /var/tor //* 修改用户权限
# cp /usr/local/tor/etc/tor/torrc.sample /usr/local/tor/etc/tor/torrc //* 从例本中复制一个 Tor 的配置文件 torrc
# vi /usr/local/tor/etc/tor/torrc //* 编辑 torrc
修改内容如下:
RunAsDaemon 1 //* 以守护方式运行 Tor
User nobody //* 运行 Tor 的用户帐号
Group nobody //* 用户组
DataDirectory /var/tor //* 重定向 Tor 的数据文件到刚才新建的目录
Log notice file /var/tor/notices.log //* 重定向 Tor 的 log 文件
4.3 运行 Tor
# /usr/local/tor/bin/tor //* 手动开启 Tor 的命令
# /usr/local/tor/bin/tor-resolve google.com 127.0.0.1:9050 //* 这是校验 Tor 时候成功运行的命令
4.4 配置 Tor 自动运行
# echo "/usr/local/tor/bin/tor" >> /etc/rc.d/rc.local //* 追加到 rc.local 即可实现。
5 安装 Privoxy 3.0.3-2
5.1 安装 Privoxy
# tar -zxvf privoxy-3.0.3-2-stable.src.tar.gz //* 解压下载来得的tar包
# cd privoxy-3.0.3-stable //* 进入源码目录
# autoheader && autoconf && ./configure --prefix=/usr/local/privoxy --with-user=nobody --with-group=nobody //* 执行配置脚本,我们把 privoxy 指定安装到 /usr/local/privoxy,并指定运行 Privoxy 服务的用户帐号。
# make && make install //* 编译安装
5.2 调整 Privoxy 的配置文件
# vi /usr/local/privoxy/etc/config //* 编辑 Privoxy config
追加如下一条内容:
forward-socks4a / 127.0.0.1:9050 . //* 指定 Privoxy 得到的 HTTP 请求转发给 Tor
5.3 配置 Privoxy 为自启动服务
# cp privoxy.init /etc/rc.d/init.d/privoxy //* 把源码目录中的 privoxy.init 复制到 init.d/privoxy
# chmod 755 /etc/rc.d/init.d/privoxy //* 修改 privoxy 的文件权限
# vi /etc/rc.d/init.d/privoxy //* 编辑 privoxy
做如下修改:
PRIVOXY_BIN="/usr/local/privoxy/sbin/$PRIVOXY_PRG" //* 191行,指定可执行文件位置
PRIVOXY_CONF="/usr/local/privoxy/etc/config" //* 192行,指定配置文件位置
PRIVOXY_USER="nobody" //* 193行,指定用户
# chkconfig --add privoxy //* 使用 chkconfig 命令,把 privoxy 加为服务
# chkconfig --list privoxy //* 如果服务添加成功,可以列出 privoxy 服务在各运行层的开关状态
5.4 运行 Privoxy
# service privoxy start //* privoxy 服务默认在 Level3 Level5 都能自运行,手动启动可以使用这条命令
6 在浏览器中使用 Tor
Linux 常用的浏览器 Opera Firefox Mozilla 等,需要配置代理服务器为 127.0.0.1:8118 即可轻松使用。简单路由过程是:
  • 浏览器得到HTTP请求,转发到代理服务器,即 Privoxy 开启的127.0.0.1:8118 ,
  • Privoxy 把请求再转发给 Tor 的 127.0.0.1:9050 SOCKS端口。
  • Tor 得到请求后,继而通过已知的匿名节点加密后转发出去。

没有评论: