周海汉 /文
下载源码:
xxx@yyy:~/svn checkout http://scholarzhang.googlecode.com/svn/trunk/ scholarzhang-read-only
环境
xxx@yyy:~/scholarzhang-read-only/west-chamber$ iptables --version
iptables v1.4.4
xxx@yyy:~/scholarzhang-read-only/west-chamber$ uname -a
Linux zhh64 2.6.31-20-generic #58-Ubuntu SMP Fri Mar 12 04:38:19 UTC 2010 x86_64 GNU/Linux
编译:
需要下载安装autoconf,automake,libtool
xxx@yyy:~/scholarzhang-read-only/west-chamber$ ./autogen.sh
./autogen.sh: line 3: autoreconf:找不到命令
xxx@yyy:~/scholarzhang-read-only/west-chamber$ autoconf
程序“autoconf”已包含在下列软件包中:
* autoconf
* autoconf2.13
请尝试:sudo apt-get install <选定的软件包>
autoconf: command not found
xxx@yyy:~/scholarzhang-read-only/west-chamber$ sudo apt-get install autoconf
xxx@yyy:~/scholarzhang-read-only/west-chamber$ ./autogen.sh
Can't exec "libtoolize": 没有那个文件或目录 at /usr/bin/autoreconf line 190.
Use of uninitialized value $libtoolize in pattern match (m//) at /usr/bin/autoreconf line 190.
configure.ac:9: error: possibly undefined macro: AC_DISABLE_STATIC
If this token and others are legitimate, please use m4_pattern_allow.
See the Autoconf documentation.
configure.ac:10: error: possibly undefined macro: AC_PROG_LIBTOOL
autoreconf: /usr/bin/autoconf failed with exit status: 1
xxx@yyy:~/scholarzhang-read-only/west-chamber$ sudo apt-get install libtool
将会安装下列额外的软件包:
libltdl-dev
建议安装的软件包:
libtool-doc gfortran fortran95-compiler gcj
下列【新】软件包将被安装:
libltdl-dev libtool
xxx@yyy:~/scholarzhang-read-only/west-chamber$ ./autogen.sh
libtoolize: putting auxiliary files in `.'.
libtoolize: copying file `./config.guess'
libtoolize: copying file `./config.sub'
libtoolize: copying file `./install-sh'
libtoolize: copying file `./ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'.
libtoolize: copying file `m4/libtool.m4'
libtoolize: copying file `m4/ltoptions.m4'
libtoolize: copying file `m4/ltsugar.m4'
libtoolize: copying file `m4/ltversion.m4'
libtoolize: copying file `m4/lt~obsolete.m4'
configure.ac:8: installing `./compile'
configure.ac:6: installing `./missing'
extensions/ipset/Makefile.am: installing `./depcomp'
configure不加参数,没有看到报错。make和make install也没看到错误。但在增加iptables时发现没有ZHANG这条规则
xxx@yyy:~/scholarzhang-read-only/west-chamber$ ./configure
...
checking for libxtables... configure: error: Package requirements (xtables >= 1.4.3) were not met:
No package 'xtables' found
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
Alternatively, you may set the environment variables libxtables_CFLAGS
and libxtables_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
xxx@yyy:~/scholarzhang-read-only/west-chamber$ sudo apt-cache search xtables
iptables-dev - iptables development files
xtables-addons-common - Userspace components of xtables-addons
xtables-addons-source - Source for the xtables-addons driver
xxx@yyy:~/scholarzhang-read-only/west-chamber$ sudo apt-get install iptables-dev
xxx@yyy:~/scholarzhang-read-only/west-chamber$ ./configure
xxx@yyy:~/scholarzhang-read-only/west-chamber$ make
xxx@yyy:~/scholarzhang-read-only/west-chamber$ sudo make install
无报错
xxx@yyy:~/scholarzhang-read-only/west-chamber$ sudo ipset -R
-N YOUTUBE nethash --hashsize 50 --probes 1
-A YOUTUBE 64.15.112.0/20
-A YOUTUBE 82.129.37.0/24
-A YOUTUBE 208.65.152.0/22
-A YOUTUBE 208.117.224.0/19
-A YOUTUBE 213.146.171.0/24
COMMIT
xxx@yyy:~/scholarzhang-read-only/west-chamber$ sudo ipset -R
-N NOCLIP setlist --size 4
-A NOCLIP GOOGLE
-A NOCLIP YOUTUBE
COMMIT
xxx@yyy:~/scholarzhang-read-only/west-chamber$ sudo iptables \
> -A INPUT \
> -p tcp --sport 80 --tcp-flags FIN,SYN,RST,ACK SYN,ACK \
> -m state --state ESTABLISHED \
> -m set --match-set NOCLIP src \
> -j ZHANG \
> -m comment --comment "client-side connection obfuscation"
iptables v1.4.4: Couldn't load target `ZHANG':/lib/xtables/libipt_ZHANG.so: cannot open shared object file: No such file or directory
根据INSTALL说明重新configure
xxx@yyy:~/scholarzhang-read-only/west-chamber$ ./configure CFLAGS="" --prefix=/usr --libexecdir=/lib
xxx@yyy:~/scholarzhang-read-only/west-chamber$ make
xxx@yyy:~/scholarzhang-read-only/west-chamber$ sudo make install
没有报错。
检查一下安装生成的文件,都存在:
xxx@yyy:~/scholarzhang-read-only/west-chamber$ ls /lib/xtables/ -tl
总用量 1272
-rwxr-xr-x 1 root root 13605 2010-03-31 10:24 libipset_setlist.so
-rwxr-xr-x 1 root root 13367 2010-03-31 10:24 libipset_portmap.so
-rwxr-xr-x 1 root root 13606 2010-03-31 10:24 libipset_nethash.so
-rwxr-xr-x 1 root root 13895 2010-03-31 10:24 libipset_macipmap.so
-rwxr-xr-x 1 root root 13657 2010-03-31 10:24 libipset_iptreemap.so
-rwxr-xr-x 1 root root 13578 2010-03-31 10:24 libipset_iptree.so
-rwxr-xr-x 1 root root 18127 2010-03-31 10:24 libipset_ipportnethash.so
-rwxr-xr-x 1 root root 17955 2010-03-31 10:24 libipset_ipportiphash.so
-rwxr-xr-x 1 root root 13833 2010-03-31 10:24 libipset_ipporthash.so
-rwxr-xr-x 1 root root 13610 2010-03-31 10:24 libipset_ipmap.so
-rwxr-xr-x 1 root root 13404 2010-03-31 10:24 libipset_iphash.so
-rwxr-xr-x 1 root root 8308 2010-03-31 10:24 libxt_gfw.so
-rwxr-xr-x 1 root root 8324 2010-03-31 10:24 libxt_ZHANG.so
-rwxr-xr-x 1 root root 8314 2010-03-31 10:24 libxt_CUI.so
再根据USAGE来配置:
1.ZHANG 客户端连接混乱
xxx@yyy:~/scholarzhang-read-only/west-chamber$ sudo iptables -A INPUT -p tcp --sport 80 --tcp-flags FIN,SYN,RST,ACK SYN,ACK -m state --state ESTABLISHED -m set --match-set NOCLIP src -j ZHANG -m comment --comment "client-side connection obfuscation"
2.CUI 服务器端连接混乱
xxx@yyy:~/scholarzhang-read-only/west-chamber$ sudo iptables -A INPUT -p tcp --dport 80 --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -m set --match-set CHINA src -j CUI -m comment --comment "server-side connection obfuscation"
iptables v1.4.4: Set CHINA doesn't exist.
xxx@yyy:~/scholarzhang-read-only/west-chamber$ sudo ipset -R < ./examples/CHINA
xxx@yyy:~/scholarzhang-read-only/west-chamber$ sudo iptables -A INPUT -p tcp --dport 80 --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -m set --match-set CHINA src -j CUI -m comment --comment "server-side connection obfuscation"
3.记录gfw reset到syslog
xxx@yyy:~/scholarzhang-read-only/west-chamber$ sudo iptables -A INPUT -p tcp --sport 80 -m state --state ESTABLISHED -m gfw -j LOG --log-level info --log-prefix "gfw: " -m comment --comment "log gfw tcp resets"
4.反GFW DNS劫持
可以直接修改/etc/resolve.conf
增加nameserver 8.8.8.8
或修改dhclient.conf:
xxx@yyy:~/scholarzhang-read-only/west-chamber$ sudo vi /etc/dhcp3/dhclient.conf
找到prepend domain-name-servers,去掉注释,并将8.8.8.8等墙外dns放在后面
让dhclient生效:ifconfig eth0 down; ifconfig eth0 up
保存iptables成果:
xxx@yyy:~/scholarzhang-read-only/west-chamber$ sudo iptables-save > /etc/iptables.up.rules
bash: /etc/iptables.up.rules: 权限不够
xxx@yyy:~/scholarzhang-read-only/west-chamber$ sudo -s
root@zhh64:~/scholarzhang-read-only/west-chamber# iptables-save > /etc/iptables.up.rules
root@zhh64:~/scholarzhang-read-only/west-chamber# exit
exit
xxx@yyy:~/scholarzhang-read-only/west-chamber$ sudo vi /etc/network/interfaces
增加:
pre-up iptables-restore < /etc/iptables.up.rules
这样重启系统后防火墙还能生效。
检测:
xxx@yyy:~/scholarzhang-read-only/west-chamber$ host -tA twitter.com
twitter.com has address 93.46.8.89
分享到:
相关推荐
本文将详细介绍如何在 Ubuntu 9.10 中配置智能拼音输入法,包括必要的安装步骤以及可能遇到的问题和解决方案。 #### 二、准备工作 确保您的系统已经更新至最新版本,并且拥有管理员权限。打开终端(快捷键:`Ctrl+...
### Linux操作系统Ubuntu 9.10 图解安装教程知识点概览 #### 1. Ubuntu简介 - **定义**: Ubuntu是一个基于Debian发行版的Linux操作系统,以其易用性和广泛的社区支持而闻名。 - **特点**: 提供了丰富的预装软件,如...
本教程主要涵盖的是在Vmware 6.5虚拟机环境下安装Ubuntu 9.10操作系统的过程,这是一项对于初学者非常实用的技术。Vmware是一款强大的虚拟化软件,它允许用户在单个计算机上同时运行多个操作系统,而Ubuntu 9.10则是...
ubuntu9.10的用户指南汉化包,deb格式.
标题 "ubuntu 9.10 DC200809 安装 图解教程" 明确指出了教程的内容是关于在Ubuntu 9.10操作系统版本上安装DC200809(很可能是一个软件包或者系统组件)的详细过程,并强调了使用图解的方式,这样的方式对于初学者来...
标题“移动硬盘安装Ubuntu 9.10”指的是在便携式存储设备——移动硬盘上安装Linux操作系统的一个特定版本,即Ubuntu 9.10。Ubuntu 9.10(Karmic Koala)是2009年发布的Ubuntu发行版,它提供了最新的软件和系统改进,...
(2)Ubuntu9.10,注意在安装步骤第7步的时候,点击高级按钮,选择安装启动器引导设备的位置为你手动分区的那个光盘。 (3)登录win7(此时系统直接进入win7的),将此文件解压后直接放在C盘即可。 (4)重启后即有...
### Linux操作系统_Ubuntu_9.10_图解安装教程 #### 一、Ubuntu 9.10简介 Ubuntu 9.10是一款基于Debian的Linux发行版,其名称为Karmic Koala(善感的考拉),发布于2009年10月29日。作为一款流行的操作系统,Ubuntu...
### 整理后的ubuntu9.10下oracle10.2g安装 #### 知识点一:Ubuntu 9.10 系统环境准备 - **安装 gcc**:为了确保 Oracle 10g 能够顺利安装,在 Ubuntu 9.10 系统上需要先安装 `gcc`。可以通过命令行进行安装: ```...
ubuntu910界面汉化安装包,deb格式。由于包的相互依赖,需用如下命令安装: #dpkg -i language-pack-gnome-zh-hans_1%3a9.10+20091022_all.deb language-pack-gnome-zh-hans-base_1%3a9.10+20091022_all.deb #dpkg -...
在安装过程中,按照向导一步步操作,包括新建虚拟机、选择安装方式、指定操作系统类型(这里是Linux,版本为Ubuntu 9.10)、设定内存大小、选择虚拟机与主机的连接方式(通常选择NAT或桥接模式)、设置硬盘控制器...
文档提到了使用Ubuntu 9.10的ISO镜像进行安装,并且在安装过程中需要修改`/boot/grub/menu.lst`文件来正确识别Windows 7。对于Ubuntu 9.10,其使用的Grub版本为Grub 2,不同于Ubuntu 9.04的Grub版本,因此需要对`/...
在 Ubuntu 9.10 系统下安装 SimpleScalar v3.0,可以帮助用户进行指令集模拟、性能分析等高级研究工作。以下将详细介绍如何在 Ubuntu 9.10 上完成 SimpleScalar v3.0 的安装过程。 #### 二、准备工作 首先,需要...
### Ubuntu 9.10 (Karmic Koala) 软件源配置详解 #### 一、前言 Ubuntu 9.10,代号为 Karmic Koala,是 Ubuntu 发行版的一个版本,发布于2009年10月。此版本在系统稳定性、性能以及用户体验上都有显著提升,特别...
标题“Ubuntu 9.10 安装网络电视qsopcast”涉及到的是在Ubuntu 9.10(Karmic Koala)操作系统中安装并使用QSopcast这一网络电视软件的过程。QSopcast是一个开源软件,它允许用户观看并共享在线电视流。在这个教程中...
需要注意的是,Oracle的安装通常对硬件和系统配置有特定的要求,因此在实际操作前,应确保系统满足Oracle的官方最低要求。此外,由于Oracle的安全性和稳定性考虑,安装过程中的一些细节可能需要根据最新的安全指导...
Ubuntu 9.10 安装 Mediawiki 脚本