<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>A18制造 &#187; Linux</title>
	<atom:link href="http://a18zhizao.com/ytag/linux/feed" rel="self" type="application/rss+xml" />
	<link>http://a18zhizao.com</link>
	<description>梦想的种子飞入了大地，所需要的只有时间。</description>
	<lastBuildDate>Tue, 24 Jan 2012 11:50:22 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>iptables 基本命令使用举例</title>
		<link>http://a18zhizao.com/y2010/1251_for-example-the-use-of-basic-commands-iptables.html</link>
		<comments>http://a18zhizao.com/y2010/1251_for-example-the-use-of-basic-commands-iptables.html#comments</comments>
		<pubDate>Fri, 26 Feb 2010 04:24:52 +0000</pubDate>
		<dc:creator>a18ccms</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[iptables]]></category>
		<category><![CDATA[防火墙]]></category>

		<guid isPermaLink="false">http://www.a18zhizao.cn/?p=1251</guid>
		<description><![CDATA[iptables 指令 语法： iptables [-t table] command [match] [-j target/jump] -t 参数用来指定规则表，内建的规则表有三个，分别是：nat、mangle 和 filter，当未指定规则表时，则一律视为是 filter。 个规则表的功能如下： nat 此规则表拥有 Prerouting 和 postrouting 两个规则链，主要功能为进行一对一、一对多、多对多等网址转译工作（SNAT DNAT），由于转译工作的特性，需进行目的地网址转译的封包，就不需要进行来源网址转译，反之亦然，因此为了提升改写封包的 率，在防火墙运作时，每个封包只会经过这个规则表一次。如果我们把封包过滤的规则定义在这个数据表里，将会造成无法对同一 包进行多次比对，因此这个规则表除了作网址转译外，请不要做其它用途。 mangle 此规则表拥有 Prerouting、FORWARD 和 postrouting 三个规则链。 除了进行网址转译工作会改写封包外，在某些特殊应用可能也必须去改写封包（TTL、TOS）或者是设定 MARK（将封包作记号，以 进行后续的过滤），这时就必须将这些工作定义在 mangle 规则表中，由于使用率不高，我们不打算在这里讨论 mangle 的用法。 filter 这个规则表是预设规则表，拥有 INPUT、FORWARD 和 OUTPUT 三个规则链，这个规则表顾名思义是用来进行封包过滤的 理动作（例如：DROP、 LOG、 ACCEPT 或 REJECT），我们会将基本规则都建立在此规则表中。 常用命令列表： 命令 -A, --append 范例 iptables [...]]]></description>
			<content:encoded><![CDATA[<p>iptables 指令<br />
语法：<br />
iptables [-t table] command [match] [-j target/jump]<br />
-t <span style="color: #ff0000;">参数</span>用来指定规则表，内建的规则表有三个，分别是：nat、mangle 和 filter，当未指定规则表时，则一律视为是 filter。<br />
个规则表的功能如下：<br />
<span id="more-1251"></span><br />
nat 此规则表拥有 Prerouting 和 postrouting 两个规则链，主要功能为进行一对一、一对多、多对多等网址转译工作（SNAT<br />
DNAT），由于转译工作的特性，需进行目的地网址转译的封包，就不需要进行来源网址转译，反之亦然，因此为了提升改写封包的<br />
率，在防火墙运作时，每个封包只会经过这个规则表一次。如果我们把封包过滤的规则定义在这个数据表里，将会造成无法对同一<br />
包进行多次比对，因此这个规则表除了作网址转译外，请不要做其它用途。</p>
<p>mangle 此规则表拥有 Prerouting、FORWARD 和 postrouting 三个规则链。<br />
除了进行网址转译工作会改写封包外，在某些特殊应用可能也必须去改写封包（TTL、TOS）或者是设定 MARK（将封包作记号，以<br />
进行后续的过滤），这时就必须将这些工作定义在 mangle 规则表中，由于使用率不高，我们不打算在这里讨论 mangle 的用法。</p>
<p>filter 这个规则表是预设规则表，拥有 INPUT、FORWARD 和 OUTPUT 三个规则链，这个规则表顾名思义是用来进行封包过滤的<br />
理动作（例如：DROP、 LOG、 ACCEPT 或 REJECT），我们会将基本规则都建立在此规则表中。</p>
<p>常用<span style="color: #008000;">命令</span>列表：<br />
<span style="color: #008000;">命令</span> -A, --append<br />
范例 iptables -A INPUT ...<br />
说明 新增规则到某个规则链中，该规则将会成为规则链中的最后一条规则。<br />
<span style="color: #008000;">命令</span> -D, --delete<br />
范例 iptables -D INPUT --dport 80 -j DROP<br />
iptables -D INPUT 1<br />
说明 从某个规则链中删除一条规则，可以输入完整规则，或直接指定规则编号加以删除。<br />
<span style="color: #008000;">命令</span> -R, --replace<br />
范例 iptables -R INPUT 1 -s 192.168.0.1 -j DROP<br />
说明 取代现行规则，规则被取代后并不会改变顺序。<br />
<span style="color: #008000;">命令</span> -I, --insert<br />
范例 iptables -I INPUT 1 --dport 80 -j ACCEPT<br />
说明 插入一条规则，原本该位置上的规则将会往后移动一个顺位。<br />
<span style="color: #008000;">命令</span> -L, --list<br />
范例 iptables -L INPUT<br />
说明 列出某规则链中的所有规则。<br />
<span style="color: #008000;">命令</span> -F, --flush<br />
范例 iptables -F INPUT<br />
说明 删除某规则链中的所有规则。<br />
<span style="color: #008000;">命令</span> -Z, --zero<br />
范例 iptables -Z INPUT<br />
说明 将封包计数器归零。封包计数器是用来计算同一封包出现次数，是过滤阻断式攻击不可或缺的工具。<br />
<span style="color: #008000;">命令</span> -N, --new-chain<br />
范例 iptables -N allowed<br />
说明 定义新的规则链。<br />
<span style="color: #008000;">命令</span> -X, --delete-chain<br />
范例 iptables -X allowed<br />
说明 删除某个规则链。<br />
<span style="color: #008000;">命令</span> -P, --policy<br />
范例 iptables -P INPUT DROP<br />
说明 定义过滤政策。 也就是未符合过滤条件之封包，预设的处理方式。<br />
<span style="color: #008000;">命令</span> -E, --rename-chain<br />
范例 iptables -E allowed disallowed<br />
说明 修改某自订规则链的名称。<br />
常用封包比对<span style="color: #ff0000;">参数</span>：<br />
<span style="color: #ff0000;">参数</span> -p, --protocol<br />
范例 iptables -A INPUT -p tcp<br />
说明 比对通讯协议类型是否相符，可以使用 ! 运算子进行反向比对，例如：-p ! tcp ，意思是指除 tcp 以外的其它类型，包含<br />
udp、icmp ...等。如果要比对所有类型，则可以使用 all 关键词，例如：-p all。<br />
<span style="color: #ff0000;">参数</span> -s, --src, --source<br />
范例 iptables -A INPUT -s 192.168.1.1<br />
说明 用来比对封包的来源 IP，可以比对单机或网络，比对网络时请用数字来表示屏蔽，例如：-s 192.168.0.0/24，比对 IP 时<br />
可以使用 ! 运算子进行反向比对，例如：-s ! 192.168.0.0/24。<br />
<span style="color: #ff0000;">参数</span> -d, --dst, --destination<br />
范例 iptables -A INPUT -d 192.168.1.1<br />
说明 用来比对封包的目的地 IP，设定方式同上。<br />
<span style="color: #ff0000;">参数</span> -i, --in-interface<br />
范例 iptables -A INPUT -i eth0<br />
说明 用来比对封包是从哪片网卡进入，可以使用通配字符 + 来做大范围比对，例如：-i eth+ 表示所有的 ethernet 网卡，也<br />
以使用 ! 运算子进行反向比对，例如：-i ! eth0。<br />
<span style="color: #ff0000;">参数</span> -o, --out-interface<br />
范例 iptables -A FORWARD -o eth0<br />
说明 用来比对封包要从哪片网卡送出，设定方式同上。<br />
<span style="color: #ff0000;">参数</span> --sport, --source-port<br />
范例 iptables -A INPUT -p tcp --sport 22<br />
说明 用来比对封包的来源埠号，可以比对单一埠，或是一个范围，例如：--sport 22:80，表示从 22 到 80 埠之间都算是符合<br />
件，如果要比对不连续的多个埠，则必须使用 --multiport <span style="color: #ff0000;">参数</span>，详见后文。比对埠号时，可以使用 ! 运算子进行反向比对。<br />
<span style="color: #ff0000;">参数</span> --dport, --destination-port<br />
范例 iptables -A INPUT -p tcp --dport 22<br />
说明 用来比对封包的目的地埠号，设定方式同上。<br />
<span style="color: #ff0000;">参数</span> --tcp-flags<br />
范例 iptables -p tcp --tcp-flags SYN,FIN,ACK SYN<br />
说明 比对 TCP 封包的状态旗号，<span style="color: #ff0000;">参数</span>分为两个部分，第一个部分列举出想比对的旗号，第二部分则列举前述旗号中哪些有被设<br />
，未被列举的旗号必须是空的。TCP 状态旗号包括：SYN（同步）、ACK（应答）、FIN（结束）、RST（重设）、URG（紧急）<br />
PSH（强迫推送） 等均可使用于<span style="color: #ff0000;">参数</span>中，除此之外还可以使用关键词 ALL 和 NONE 进行比对。比对旗号时，可以使用 ! 运算子<br />
行反向比对。<br />
<span style="color: #ff0000;">参数</span> --syn<br />
范例 iptables -p tcp --syn<br />
说明 用来比对是否为要求联机之 TCP 封包，与 iptables -p tcp --tcp-flags SYN,FIN,ACK SYN 的作用完全相同，如果使用 !<br />
运算子，可用来比对非要求联机封包。<br />
<span style="color: #ff0000;">参数</span> -m multiport --source-port<br />
范例 iptables -A INPUT -p tcp -m multiport --source-port 22,53,80,110<br />
说明 用来比对不连续的多个来源埠号，一次最多可以比对 15 个埠，可以使用 ! 运算子进行反向比对。<br />
<span style="color: #ff0000;">参数</span> -m multiport --destination-port<br />
范例 iptables -A INPUT -p tcp -m multiport --destination-port 22,53,80,110<br />
说明 用来比对不连续的多个目的地埠号，设定方式同上。<br />
<span style="color: #ff0000;">参数</span> -m multiport --port<br />
范例 iptables -A INPUT -p tcp -m multiport --port 22,53,80,110<br />
说明 这个<span style="color: #ff0000;">参数</span>比较特殊，用来比对来源埠号和目的埠号相同的封包，设定方式同上。注意：在本范例中，如果来源端口号为 80<br />
目的地埠号为 110，这种封包并不算符合条件。<br />
<span style="color: #ff0000;">参数</span> --icmp-type<br />
范例 iptables -A INPUT -p icmp --icmp-type 8<br />
说明 用来比对 ICMP 的类型编号，可以使用代码或数字编号来进行比对。请打 iptables -p icmp --help 来查看有哪些代码可<br />
用。<br />
<span style="color: #ff0000;">参数</span> -m limit --limit<br />
范例 iptables -A INPUT -m limit --limit 3/hour<br />
说明 用来比对某段时间内封包的平均流量，上面的例子是用来比对：每小时平均流量是否超过一次 3 个封包。 除了每小时平均<br />
次外，也可以每秒钟、每分钟或每天平均一次，默认值为每小时平均一次，<span style="color: #ff0000;">参数</span>如后： /second、 /minute、/day。 除了进行封<br />
数量的比对外，设定这个<span style="color: #ff0000;">参数</span>也会在条件达成时，暂停封包的比对动作，以避免因骇客使用洪水攻击法，导致服务被阻断。<br />
<span style="color: #ff0000;">参数</span> --limit-burst<br />
范例 iptables -A INPUT -m limit --limit-burst 5<br />
说明 用来比对瞬间大量封包的数量，上面的例子是用来比对一次同时涌入的封包是否超过 5 个（这是默认值），超过此上限的封<br />
将被直接丢弃。使用效果同上。<br />
<span style="color: #ff0000;">参数</span> -m mac --mac-source<br />
范例 iptables -A INPUT -m mac --mac-source 00:00:00:00:00:01<br />
说明 用来比对封包来源网络接口的硬件地址，这个<span style="color: #ff0000;">参数</span>不能用在 OUTPUT 和 Postrouting 规则炼上，这是因为封包要送出到网<br />
后，才能由网卡驱动程序透过 ARP 通讯协议查出目的地的 MAC 地址，所以 iptables 在进行封包比对时，并不知道封包会送到<br />
个网络接口去。<br />
<span style="color: #ff0000;">参数</span> --mark<br />
范例 iptables -t mangle -A INPUT -m mark --mark 1<br />
说明 用来比对封包是否被表示某个号码，当封包被比对成功时，我们可以透过 MARK 处理动作，将该封包标示一个号码，号码最<br />
不可以超过 4294967296。<br />
<span style="color: #ff0000;">参数</span> -m owner --uid-owner<br />
范例 iptables -A OUTPUT -m owner --uid-owner 500<br />
说明 用来比对来自本机的封包，是否为某特定使用者所产生的，这样可以避免服务器使用 root 或其它身分将敏感数据传送出<br />
，可以降低系统被骇的损失。可惜这个功能无法比对出来自其它主机的封包。<br />
<span style="color: #ff0000;">参数</span> -m owner --gid-owner<br />
范例 iptables -A OUTPUT -m owner --gid-owner 0<br />
说明 用来比对来自本机的封包，是否为某特定使用者群组所产生的，使用时机同上。<br />
<span style="color: #ff0000;">参数</span> -m owner --pid-owner<br />
范例 iptables -A OUTPUT -m owner --pid-owner 78<br />
说明 用来比对来自本机的封包，是否为某特定行程所产生的，使用时机同上。<br />
<span style="color: #ff0000;">参数</span> -m owner --sid-owner<br />
范例 iptables -A OUTPUT -m owner --sid-owner 100<br />
说明 用来比对来自本机的封包，是否为某特定联机（Session ID）的响应封包，使用时机同上。<br />
<span style="color: #ff0000;">参数</span> -m state --state<br />
范例 iptables -A INPUT -m state --state RELATED,ESTABLISHED<br />
说明 用来比对联机状态，联机状态共有四种：INVALID、ESTABLISHED、NEW 和 RELATED。</p>
<p>INVALID 表示该封包的联机编号（Session ID）无法辨识或编号不正确。<br />
ESTABLISHED 表示该封包属于某个已经建立的联机。<br />
NEW 表示该封包想要起始一个联机（重设联机或将联机重导向）。<br />
RELATED 表示该封包是属于某个已经建立的联机，所建立的新联机。例如：FTP-DATA 联机必定是源自某个 FTP 联机。</p>
<p>常用的处理动作：<br />
-j <span style="color: #ff0000;">参数</span>用来指定要进行的处理动作，常用的处理动作包括：ACCEPT、REJECT、DROP、REDIRECT、MASQUERADE、LOG、DNAT、</p>
<p>SNAT、MIRROR、QUEUE、RETURN、MARK，分别说明如下：<br />
ACCEPT 将封包放行，进行完此处理动作后，将不再比对其它规则，直接跳往下一个规则炼（natostrouting）。<br />
REJECT 拦阻该封包，并传送封包通知对方，可以传送的封包有几个选择：ICMP port-unreachable、ICMP echo-reply 或是<br />
tcp-reset（这个封包会要求对方关闭联机），进行完此处理动作后，将不再比对其它规则，直接 中断过滤程序。 范例如下：<br />
iptables -A FORWARD -p TCP --dport 22 -j REJECT --reject-with tcp-reset<br />
DROP 丢弃封包不予处理，进行完此处理动作后，将不再比对其它规则，直接中断过滤程序。<br />
REDIRECT 将封包重新导向到另一个端口（PNAT），进行完此处理动作后，将 会继续比对其它规则。 这个功能可以用来实作通透式<br />
porxy 或用来保护 web 服务器。例如：iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080<br />
MASQUERADE 改写封包来源 IP 为防火墙 NIC IP，可以指定 port 对应的范围，进行完此处理动作后，直接跳往下一个规则<br />
（mangleostrouting）。这个功能与 SNAT 略有不同，当进行 IP 伪装时，不需指定要伪装成哪个 IP，IP 会从网卡直接读<br />
，当使用拨接连线时，IP 通常是由 ISP 公司的 DHCP 服务器指派的，这个时候 MASQUERADE 特别有用。范例如下：<br />
iptables -t nat -A POSTROUTING -p TCP -j MASQUERADE --to-ports 1024-31000<br />
LOG 将封包相关讯息纪录在 /var/log 中，详细位置请查阅 /etc/syslog.conf 组态档，进行完此处理动作后，将会继续比对其<br />
规则。例如：<br />
iptables -A INPUT -p tcp -j LOG --log-prefix "INPUT packets"<br />
SNAT 改写封包来源 IP 为某特定 IP 或 IP 范围，可以指定 port 对应的范围，进行完此处理动作后，将直接跳往下一个规则<br />
（mangleostrouting）。范例如下：<br />
iptables -t nat -A POSTROUTING -p tcp-o eth0 -j SNAT --to-source 194.236.50.155-194.236.50.160:1024-32000<br />
DNAT 改写封包目的地 IP 为某特定 IP 或 IP 范围，可以指定 port 对应的范围，进行完此处理动作后，将会直接跳往下一个规<br />
炼（filter:input 或 filter:forward）。范例如下：<br />
iptables -t nat -A PREROUTING -p tcp -d 15.45.23.67 --dport 80 -j DNAT --to-destination<br />
192.168.1.1-192.168.1.10:80-100<br />
MIRROR 镜射封包，也就是将来源 IP 与目的地 IP 对调后，将封包送回，进行完此处理动作后，将会中断过滤程序。<br />
QUEUE 中断过滤程序，将封包放入队列，交给其它程序处理。透过自行开发的处理程序，可以进行其它应用，例如：计算联机费<br />
.......等。<br />
RETURN 结束在目前规则炼中的过滤程序，返回主规则炼继续过滤，如果把自订规则炼看成是一个子程序，那么这个动作，就相当<br />
提早结束子程序并返回到主程序中。<br />
MARK 将封包标上某个代号，以便提供作为后续过滤的条件判断依据，进行完此处理动作后，将会继续比对其它规则。范例如下：<br />
iptables -t mangle -A PREROUTING -p tcp --dport 22 -j MARK --set-mark</p>
<hr />
<strong>操作示范：</strong><br />
一、链的基本操作<br />
1、清除所有的规则。<br />
1）清除预设表filter中所有规则链中的规则。<br />
# iptables -F<br />
2）清除预设表filter中使用者自定链中的规则。<br />
#iptables -X<br />
#iptables -Z<br />
2、设置链的默认策略。一般有两种方法。<br />
1）首先允许所有的包，然后再禁止有危险的包通过放火墙。<br />
#iptables -P INPUT ACCEPT<br />
#iptables -P OUTPUT ACCEPT<br />
#iptables -P FORWARD ACCEPT<br />
2）首先禁止所有的包，然后根据需要的服务允许特定的包通过防火墙。<br />
#iptables -P INPUT DROP<br />
#iptables -P OUTPUT DROP<br />
#iptables -P FORWARD DROP<br />
3、列出表/链中的所有规则。默认只列出filter表。<br />
#iptables -L<br />
4、向链中添加规则。下面的语句用于开放网络接口：<br />
#iptables -A INPUT -i lo -j ACCEPT<br />
#iptables -A OUTPUT -o lo -j ACCEPT<br />
#iptables -A INPUT -i eth0 -j ACEPT<br />
#iptables -A OUTPUT -o eth1 -j ACCEPT<br />
#iptables -A FORWARD -i eth1 -j ACCEPT<br />
#iptables -A FORWARD -0 eth1 -j ACCEPT<br />
注意:由于本地进程不会经过FORWARD链，因此回环接口lo只在INPUT和OUTPUT两个链上作用。<br />
5、使用者自定义链。<br />
#iptables -N custom<br />
#iptables -A custom -s 0/0 -d 0/0 -p icmp -j DROP<br />
#iptables -A INPUT -s 0/0 -d 0/0 -j DROP<br />
二、设置基本的规则匹配<br />
1、指定协议匹配。<br />
1）匹配指定协议。<br />
#iptables -A INPUT -p tcp<br />
2）匹配指定协议之外的所有协议。<br />
#iptables -A INPUT -p !tcp<br />
2、指定地址匹配。<br />
1）指定匹配的主机。<br />
#iptables -A INPUT -s 192.168.0.18<br />
2）指定匹配的网络。<br />
#iptables -A INPUT -s 192.168.2.0/24<br />
3）匹配指定主机之外的地址。<br />
#iptables -A FORWARD -s !192.168.0.19<br />
4）匹配指定网络之外的网络。<br />
#iptables -A FORWARD -s ! 192.168.3.0/24<br />
3、指定网络接口匹配。<br />
1）指定单一的网络接口匹配。<br />
#iptables -A INPUT -i eth0<br />
#iptables -A FORWARD -o eth0<br />
2）指定同类型的网络接口匹配。<br />
#iptables -A FORWARD -o ppp+<br />
4、指定端口匹配。<br />
1）指定单一端口匹配。<br />
#iptables -A INPUT -p tcp --sport www<br />
#iptables -A INPUT -p udp –dport 53<br />
2）匹配指定端口之外的端口。<br />
#iptables -A INPUT -p tcp –dport !22<br />
3）匹配端口范围。<br />
#iptables -A INPUT -p tcp –sport 22:80<br />
4）匹配ICMP端口和ICMP类型。<br />
#iptables -A INOUT -p icmp –icimp-type 8<br />
5）指定ip碎片。<br />
每个网络接口都有一个MTU（最大传输单元），这个参数定义了可以通过的数据包的最大尺寸。如果一个数据包大于这个参数值时，系统会将其划分成更小的数据包（称为ip碎片）来传输，而接受方则对这些ip碎片再进行重组以还原整个包。这样会导致一个问题：当系统将大数据包划分成ip碎片传输时，第一个碎片含有完整的包头信息（IP+TCP、UDP和ICMP），但是后续的碎片只有包头的部分信息（如源地址、目的地址）。因此，检查后面的ip碎片的头部（象有TCP、UDP和ICMP一样）是不可能的。假如有这样的一条规则：<br />
#iptables -A FORWARD -p tcp -s 192.168.1.0/24 -d 192.168.2.100 –dport 80 -j ACCEPT<br />
并且这时的FORWARD的policy为DROP时，系统只会让第一个ip碎片通过，而余下的碎片因为包头信息不完整而无法通过。可以通过—fragment/-f 选项来指定第二个及以后的ip碎片解决上述问题。<br />
#iptables -A FORWARD -f -s 192.168.1.0/24 -d 192.168.2.100 -j ACCEPT<br />
注意现在有许多进行ip碎片攻击的实例，如DoS攻击，因此允许ip碎片通过是有安全隐患的，对于这一点可以采用iptables的匹配扩展来进行限制。<br />
三、设置扩展的规则匹配（举例已忽略目标动作）<br />
1、多端口匹配。<br />
1）匹配多个源端口。<br />
#iptables -A INPUT -p tcp -m multiport –sport 22,53,80,110<br />
2）匹配多个目的端口。<br />
#iptables -A INPUT -p tcp -m multiport –dpoort 22,53,80<br />
3）匹配多端口(无论是源端口还是目的端口）<br />
#iptables -A INPUT -p tcp -m multiport –port 22,53,80,110<br />
2、指定TCP匹配扩展<br />
使用 –tcp-flags 选项可以根据tcp包的标志位进行过滤。<br />
#iptables -A INPUT -p tcp –tcp-flags SYN,FIN,ACK SYN<br />
#iptables -A FROWARD -p tcp –tcp-flags ALL SYN,ACK<br />
上实例中第一个表示SYN、ACK、FIN的标志都检查，但是只有SYN匹配。第二个表示ALL（SYN，ACK，FIN，RST，URG，PSH）的标志都检查，但是只有设置了SYN和ACK的匹配。<br />
#iptables -A FORWARD -p tcp --syn<br />
选项—syn相当于”--tcp-flags SYN,RST,ACK SYN”的简写。<br />
3、limit速率匹配扩展。<br />
1）指定单位时间内允许通过的数据包个数，单位时间可以是/second、/minute、/hour、/day或使用第一个子母。<br />
#iptables -A INPUT -m limit --limit 300/hour<br />
2 )指定触发事件的阀值。<br />
#iptables -A INPUT -m limit –limit-burst 10<br />
用来比对一次同时涌入的封包是否超过10个，超过此上限的包将直接丢弃。<br />
3）同时指定速率限制和触发阀值。<br />
#iptables -A INPUT -p icmp -m limit –-limit 3/m –limit-burst 3<br />
表示每分钟允许的最大包数量为限制速率（本例为3）加上当前的触发阀值burst数。任何情况下，都可保证3个数据包通过，触发阀值burst相当于允许额外的包数量。<br />
4）基于状态的匹配扩展（连接跟踪）<br />
每个网络连接包括以下信息：源地址、目标地址、源端口、目的端口，称为套接字对（socket pairs）；协议类型、连接状态（TCP协议）<br />
和超时时间等。防火墙把这些信息称为状态（stateful）。状态包过滤防火墙能在内存中维护一个跟踪状态的表，比简单包过滤防火墙具有更大的安全性，命令格式如下：<br />
iptables -m state –-state [!]state [,state,state,state]<br />
其中，state表是一个逗号分割的列表，用来指定连接状态，4种：<br />
>NEW: 该包想要开始一个新的连接（重新连接或连接重定向）<br />
>RELATED:该包是属于某个已经建立的连接所建立的新连接。举例：<br />
FTP的数据传输连接和控制连接之间就是RELATED关系。<br />
>ESTABLISHED：该包属于某个已经建立的连接。<br />
>INVALID:该包不匹配于任何连接，通常这些包被DROP。<br />
例如：<br />
（1）在INPUT链添加一条规则，匹配已经建立的连接或由已经建立的连接所建立的新连接。即匹配所有的TCP回应包。<br />
#iptables -A INPUT -m state –state RELATED,ESTABLISHED<br />
（2）在INPUT链链添加一条规则，匹配所有从非eth0接口来的连接请求包。<br />
#iptables -A INPUT -m state -–state NEW -i !eth0<br />
又如，对于ftp连接可以使用下面的连接跟踪：<br />
（1）被动（Passive）ftp连接模式。<br />
#iptables -A INPUT -p tcp --sport 1024: --dport 1024: -m state –-state ESTABLISHED -j ACCEPT<br />
#iptables -A OUTPUT -p tcp --sport 1024: --dport 1024: -m<br />
state -–state ESTABLISHED,RELATED -j ACCEPT<br />
（2）主动（Active）ftp连接模式<br />
#iptables -A INNPUT -p tcp --sport 20 -m state –-state ESTABLISHED,RELATED -j ACCEPT<br />
#iptables -A OUTPUT -p tcp –OUTPUT -p tcp –dport 20 -m state --state ESTABLISHED -j ACCEPT<br />
5）TOS匹配扩展。<br />
四、设置目标扩展<br />
目标扩展由内核模块组成，而且iptables的一个可选扩展提供了新的命令行选项</p>
<hr />
这里有个 Linux防火墙iptables学习笔记 系列很不错。</p>
<p>http://blog.chinaunix.net/u2/76292/article_97291.html</p>
]]></content:encoded>
			<wfw:commentRss>http://a18zhizao.com/y2010/1251_for-example-the-use-of-basic-commands-iptables.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>LINUX ln硬链接与软链接的区别及在ls命令的表现</title>
		<link>http://a18zhizao.com/y2010/1237_linux-ln-a-hard-link-and-soft-link-and-the-difference-between-the-performance-of-the-command-ls.html</link>
		<comments>http://a18zhizao.com/y2010/1237_linux-ln-a-hard-link-and-soft-link-and-the-difference-between-the-performance-of-the-command-ls.html#comments</comments>
		<pubDate>Wed, 24 Feb 2010 14:48:17 +0000</pubDate>
		<dc:creator>a18ccms</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[ln]]></category>
		<category><![CDATA[ls]]></category>
		<category><![CDATA[区别]]></category>

		<guid isPermaLink="false">http://www.a18zhizao.cn/?p=1237</guid>
		<description><![CDATA[对于一个文件来说，有唯一的索引接点(inode)与之对应，而对于一个索引接点号，却可以有多个文件名与之对应。因此，在磁盘上的同一个文件可以通过不同的路径去访问该文件。注意在Linux下是一切皆文件的啊，文件夹、新加的硬盘 ...都可以看着文件来处理的啊。 连接有软连接和硬连接(hard link)之分的，软连接(symbolic link)又叫符号连接。符号连接相当于Windows 下的快捷方式。 ***************不可以对 文件夹/目录 建立硬连接的，我们通常用的还是软连接比较多。************ eg: ln -s source dist # 建立软连接 ln source dist # 建立硬连接 它们到底有什么区别呢？上次也好好的看了，好象同文件系统的结构有一定的关系，没怎么太详细的研究下次看明白了再加上。 ---------------------- 软链接实际上只是一段文字，里面包含着它所指向的文件的名字，系统看到软链接后自动跳到对应的文件位置处进行处理；相反，硬链接为文件开设一个新的目录项，硬链接与文件原有的名字是平权的，在Linux看来它们是等价的。由于这个原因，硬链接不能连接两个不同文件系统上的文件。 软连接与windows下的快捷方式类似 至于硬连接，举个例子说吧，你把dir1/file1硬连接到dir2/file2, 就是在dir2下建立一个dir1/file1的镜像文件file2，它与file1是占用一样大的空间的，并且改动两者中的一个，另一个也会发生同样的改动. 软连接和硬连接可以这样理解： 硬连接就像一个文件有多个文件名， 软连接就是产生一个新文件(这个文件内容,实际上就是记当要链接原文件路径的信息)，这个文件指向另一个文件的位置， 硬连接必须在同一文件系统中，而软连接可以跨文件系统 硬连接 ：源文件名和链接文件名都指向相同的物理地址，目录不能够有硬连接，文件在磁盘中只有一个复制，可以节省硬盘空间，由于删除文件要在同一个索引节点属于唯一的连接时才能成功，因此可以防止不必要的误删除软连接（符号连接）用ln -s命令创建文件的符号连接，符号连接是linux特殊文件的一种，作为一个文件，它的资料是它所连接的文件的路径名，类似于硬件方式，******可以删除原始文件 而连接文件仍然存在。******** 本文试图清晰彻底的解释软链接和硬链接文件的区别 一 链接文件 链接有两种方式，软链接和硬链接。 　　1 软链接文件 　　软链接又叫符号链接，这个文件包含了另一个文件的路径名。可以是任意文件或目录，可以链接不同文件系统的文件。 **********链接文件甚至可以链接不存在的文件，这就产生一般称之为"断链"的问题(或曰“现象")，链接文件甚至可以循环链接自己。类似于编程语言中的递归。 　　用ln -s 命令可以生成一个软连接，如下: 　　[root@linux236 test]# ln -s source_file softlink_file 　　在对符号文件进行读或写操作的时候，系统会自动把该操作转换为对源文件的操作，但删除链接文件时，系统仅仅删除链接文件，而不删除源文件本身。 　　2 硬链接文件 [...]]]></description>
			<content:encoded><![CDATA[<p>对于一个文件来说，有唯一的索引接点(inode)与之对应，而对于一个索引接点号，却可以有多个文件名与之对应。因此，在磁盘上的同一个文件可以通过不同的路径去访问该文件。注意在Linux下是一切皆文件的啊，文件夹、新加的硬盘 ...都可以看着文件来处理的啊。<br />
连接有软连接和硬连接(hard link)之分的，软连接(symbolic link)又叫符号连接。符号连接相当于Windows 下的快捷方式。<br />
***************不可以对  文件夹/目录  建立硬连接的，我们通常用的还是软连接比较多。************<br />
eg:<br />
    ln -s source dist        # 建立软连接<br />
   ln source dist            # 建立硬连接</p>
<p>    它们到底有什么区别呢？上次也好好的看了，好象同文件系统的结构有一定的关系，没怎么太详细的研究下次看明白了再加上。<br />
----------------------<br />
<span id="more-1237"></span><br />
    软链接实际上只是一段文字，里面包含着它所指向的文件的名字，系统看到软链接后自动跳到对应的文件位置处进行处理；相反，硬链接为文件开设一个新的目录项，硬链接与文件原有的名字是平权的，在Linux看来它们是等价的。由于这个原因，硬链接不能连接两个不同文件系统上的文件。</p>
<p>软连接与windows下的快捷方式类似</p>
<p>至于硬连接，举个例子说吧，你把dir1/file1硬连接到dir2/file2, 就是在dir2下建立一个dir1/file1的镜像文件file2，它与file1是占用一样大的空间的，并且改动两者中的一个，另一个也会发生同样的改动.</p>
<p>软连接和硬连接可以这样理解：<br />
硬连接就像一个文件有多个文件名，<br />
软连接就是产生一个新文件(这个文件内容,实际上就是记当要链接原文件路径的信息)，这个文件指向另一个文件的位置，<br />
硬连接必须在同一文件系统中，而软连接可以跨文件系统</p>
<p>硬连接 ：源文件名和链接文件名都指向相同的物理地址，目录不能够有硬连接，文件在磁盘中只有一个复制，可以节省硬盘空间，由于删除文件要在同一个索引节点属于唯一的连接时才能成功，因此可以防止不必要的误删除软连接（符号连接）用ln -s命令创建文件的符号连接，符号连接是linux特殊文件的一种，作为一个文件，它的资料是它所连接的文件的路径名，类似于硬件方式，******可以删除原始文件 而连接文件仍然存在。********</p>
<blockquote><p>
本文试图清晰彻底的解释软链接和硬链接文件的区别<br />
 一 链接文件<br />
    链接有两种方式，软链接和硬链接。<br />
　　1 软链接文件<br />
　　软链接又叫符号链接，这个文件包含了另一个文件的路径名。可以是任意文件或目录，可以链接不同文件系统的文件。<br />
    **********链接文件甚至可以链接不存在的文件，这就产生一般称之为"断链"的问题(或曰“现象")，链接文件甚至可以循环链接自己。类似于编程语言中的递归。<br />
　　用ln -s 命令可以生成一个软连接，如下:<br />
　　[root@linux236 test]# ln -s  source_file softlink_file<br />
　　在对符号文件进行读或写操作的时候，系统会自动把该操作转换为对源文件的操作，但删除链接文件时，系统仅仅删除链接文件，而不删除源文件本身。<br />
　　2 硬链接文件<br />
　　info ln 命令告诉您，硬链接是已存在文件的另一个名字(A "hard link" is another name for an existing file)，这多少有些令人困惑。硬连接的命令是<br />
　　ln -d existfile newfile<br />
　　硬链接文件有两个限制<br />
　　1)、不允许给目录创建硬链接；<br />
　　2)、只有在同一文件系统中的文件之间才能创建硬链接。<br />
　　***********对硬链接文件进行读写和删除操作时候，结果和软链接相同。但如果我们删除硬链接文件的源文件，硬链接文件仍然存在，而且保留了愿有的内容。<br />
    ***********这时，系统就“忘记”了它曾经是硬链接文件。而把他当成一个普通文件。<br />
二  两者之间的区别<br />
    硬连接指通过索引节点来进行的连接。在Linux的文件系统中，保存在磁盘分区中的文件不管是什么类型都给它分配一个编号，称为索引节点号(Inode Number)。<br />
    在Linux中，多个文件名指向同一索引节点是存在的。一般这种连接就是硬连接。*******硬连接的作用是允许一个文件拥有多个有效路径名，这样用户就可以建立硬连接到重要<br />
    文件,以防止“误删”的功能。其原因如上所述，因为对应该目录的索引节点有一个以上的连接。只删除一个连接并不影响索引节点本身和其它的连接，只有当最后一个<br />
    连接被删除后，文件的数据块及目录的连接才会被释放。也就是说，文件才会被真正删除。<br />
    软链接文件有点类似于Windows的快捷方式。它实际上是特殊文件的一种。在符号连接中，文件实际上是一个文本文件，其中包含的有另一文件的位置信息。<br />
三  个人体会<br />
    软链接是另一个文件，作用可以理解为一个指针，******作用在这个文件上的操作除了删除都直接转向实际指向文件，由于是一个真实的文件所以占用磁盘空间<br />
    硬链接可以认为不是一个文件，它只是实际文件的一个别名，它的作用是防止真实文件被误操作，给一个文件建立硬链接后，他们互为别名，删除其中任意一个，<br />
    这样用RM命令只会删除该别名，实际文件并不会被删除。只有链接数为0时，才会删除原始文件。</p></blockquote>
<p><strong>至于LS对两种链接的变现看实例：</strong></p>
<pre class="brush: bash; title: ; notranslate">
# ls -il
606250 -rw-r--r-- 1 root root 8791 Sep 20 16:43 commands
606223 drwxr-xr-x 36 root root 4096 Jun 21 12:59 test
606274 lrwxrwxrwx 1 root root    8 Sep 30 17:00 test1 -&gt; testfile
606292 lrwxrwxrwx 1 root root    8 Sep 30 17:00 test2 -&gt; testfile
606262 -rw-r--r-- 4 root root    0 Sep 30 16:59 test3
606262 -rw-r--r-- 4 root root    0 Sep 30 16:59 test4
606262 -rw-r--r-- 4 root root    0 Sep 30 16:59 test5
606299 lrwxrwxrwx 1 root root    8 Sep 30 17:06 test6 -&gt; testfile
606262 -rw-r--r-- 4 root root    0 Sep 30 16:59 testfile
</pre>
<p>上例中，以ls -il输出 第一列是文件的inode</p>
<p>文件testfile一共有4个硬链接 这是包含本身的，也就是说 除了testfile自身 还有三个硬链接链接到文件的inode  所以此列显示为4 这点可以从inode的比较看出来 ，test3 test4 test5 是testfile的硬链接</p>
<p>目录test 其目录一共含36个硬链接， 所以显示出36<br />
一个文件最少有一个硬链接。一个目录（比如是/home/dir）则至少有2个硬链接，一个是目录本身（/home/dir）的入口，这个/home/dir目录的硬链接".."相当于该目录的父目录/home的"."，另一个是目录内部的 "."，是在目录内表示本目录的入口。所以在目录内每多一个目录，就会多一个硬链接，因为子目录的".." 表示的父目录的入口相当于父目录的"."。</p>
]]></content:encoded>
			<wfw:commentRss>http://a18zhizao.com/y2010/1237_linux-ln-a-hard-link-and-soft-link-and-the-difference-between-the-performance-of-the-command-ls.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>linux解压tar命令</title>
		<link>http://a18zhizao.com/y2010/1209_linux-unzip-tar-command.html</link>
		<comments>http://a18zhizao.com/y2010/1209_linux-unzip-tar-command.html#comments</comments>
		<pubDate>Thu, 11 Feb 2010 11:03:21 +0000</pubDate>
		<dc:creator>a18ccms</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[tar]]></category>
		<category><![CDATA[解压]]></category>

		<guid isPermaLink="false">http://www.a18zhizao.cn/y2010/1209_linux-unzip-tar-command.html</guid>
		<description><![CDATA[linux解压 tar命令 tar命令 tar [-cxtzjvfpPN] 文件与目录 .... 参数： -c ：建立一个压缩文件的参数指令(create 的意思)； -x ：解开一个压缩文件的参数指令！ -t ：查看 tarfile 里面的文件！ 特别注意，在参数的下达中， c/x/t 仅能存在一个！不可同时存在！ 因为不可能同时压缩与解压缩。 -z ：是否同时具有 gzip 的属性？亦即是否需要用 gzip 压缩？ -j ：是否同时具有 bzip2 的属性？亦即是否需要用 bzip2 压缩？ -v ：压缩的过程中显示文件！这个常用，但不建议用在背景执行过程！ -f ：使用档名，请留意，在 f 之后要立即接档名喔！不要再加参数！ 　　　例如使用『 tar -zcvfP tfile sfile』就是错误的写法，要写成 　　　『 tar -zcvPf tfile sfile』才对喔！ -p ：使用原文件的原来属性（属性不会依据使用者而变） -P ：可以使用绝对路径来压缩！ -N ：比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中！ [...]]]></description>
			<content:encoded><![CDATA[<p>linux解压 tar命令<br />
tar命令<br />
tar [-cxtzjvfpPN] 文件与目录 ....<br />
参数：<br />
-c ：建立一个压缩文件的参数指令(create 的意思)；<br />
-x ：解开一个压缩文件的参数指令！<br />
-t ：查看 tarfile 里面的文件！<br />
特别注意，在参数的下达中， c/x/t 仅能存在一个！不可同时存在！<br />
因为不可能同时压缩与解压缩。<br />
-z ：是否同时具有 gzip 的属性？亦即是否需要用 gzip 压缩？<br />
-j ：是否同时具有 bzip2 的属性？亦即是否需要用 bzip2 压缩？<br />
-v ：压缩的过程中显示文件！这个常用，但不建议用在背景执行过程！<br />
-f ：使用档名，请留意，在 f 之后要立即接档名喔！不要再加参数！<br />
　　　例如使用『 tar -zcvfP tfile sfile』就是错误的写法，要写成<br />
　　　『 tar -zcvPf tfile sfile』才对喔！<br />
-p ：使用原文件的原来属性（属性不会依据使用者而变）<br />
-P ：可以使用绝对路径来压缩！<br />
-N ：比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中！<br />
--exclude FILE：在压缩的过程中，不要将 FILE 打包！<br />
范例：<br />
范例一：将整个 /etc 目录下的文件全部打包成为 /tmp/etc.tar<br />
[root@linux ~]# tar -cvf /tmp/etc.tar /etc<==仅打包，不压缩！<br />
[root@linux ~]# tar -zcvf /tmp/etc.tar.gz /etc<==打包后，以 gzip 压缩<br />
[root@linux ~]# tar -jcvf /tmp/etc.tar.bz2 /etc<==打包后，以 bzip2 压缩<br />
<span id="more-1209"></span><br />
# 特别注意，在参数 f 之后的文件档名是自己取的，我们习惯上都用 .tar 来作为辨识。<br />
# 如果加 z 参数，则以 .tar.gz 或 .tgz 来代表 gzip 压缩过的 tar file ～<br />
# 如果加 j 参数，则以 .tar.bz2 来作为附档名啊～<br />
# 上述指令在执行的时候，会显示一个警告讯息：<br />
# 『tar: Removing leading `/" from member names』那是关於绝对路径的特殊设定。</p>
<p>范例二：查阅上述 /tmp/etc.tar.gz 文件内有哪些文件？<br />
[root@linux ~]# tar -ztvf /tmp/etc.tar.gz<br />
# 由於我们使用 gzip 压缩，所以要查阅该 tar file 内的文件时，<br />
# 就得要加上 z 这个参数了！这很重要的！</p>
<p>范例三：将 /tmp/etc.tar.gz 文件解压缩在 /usr/local/src 底下<br />
[root@linux ~]# cd /usr/local/src<br />
[root@linux src]# tar -zxvf /tmp/etc.tar.gz<br />
# 在预设的情况下，我们可以将压缩档在任何地方解开的！以这个范例来说，<br />
# 我先将工作目录变换到 /usr/local/src 底下，并且解开 /tmp/etc.tar.gz ，<br />
# 则解开的目录会在 /usr/local/src/etc 呢！另外，如果您进入 /usr/local/src/etc<br />
# 则会发现，该目录下的文件属性与 /etc/ 可能会有所不同喔！</p>
<p>范例四：在 /tmp 底下，我只想要将 /tmp/etc.tar.gz 内的 etc/passwd 解开而已<br />
[root@linux ~]# cd /tmp<br />
[root@linux tmp]# tar -zxvf /tmp/etc.tar.gz etc/passwd<br />
# 我可以透过 tar -ztvf 来查阅 tarfile 内的文件名称，如果单只要一个文件，<br />
# 就可以透过这个方式来下达！注意到！ etc.tar.gz 内的根目录 / 是被拿掉了！</p>
<p>范例五：将 /etc/ 内的所有文件备份下来，并且保存其权限！<br />
[root@linux ~]# tar -zxvpf /tmp/etc.tar.gz /etc<br />
# 这个 -p 的属性是很重要的，尤其是当您要保留原本文件的属性时！</p>
<p>范例六：在 /home 当中，比 2005/06/01 新的文件才备份<br />
[root@linux ~]# tar -N "2005/06/01" -zcvf home.tar.gz /home</p>
<p>范例七：我要备份 /home, /etc ，但不要 /home/dmtsai<br />
[root@linux ~]# tar --exclude /home/dmtsai -zcvf myfile.tar.gz /home/* /etc</p>
<p>范例八：将 /etc/ 打包后直接解开在 /tmp 底下，而不产生文件！<br />
[root@linux ~]# cd /tmp<br />
[root@linux tmp]# tar -cvf - /etc | tar -xvf -<br />
# 这个动作有点像是 cp -r /etc /tmp 啦～依旧是有其有用途的！<br />
# 要注意的地方在於输出档变成 - 而输入档也变成 - ，又有一个 | 存在～<br />
# 这分别代表 standard output, standard input 与管线命令啦！<br />
# 这部分我们会在 Bash shell 时，再次提到这个指令跟大家再解释啰！</p>
]]></content:encoded>
			<wfw:commentRss>http://a18zhizao.com/y2010/1209_linux-unzip-tar-command.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Linux下的18个Windows常用软件替代品</title>
		<link>http://a18zhizao.com/y2008/460_linux-under-windows-18-software-commonly-used-substitutes.html</link>
		<comments>http://a18zhizao.com/y2008/460_linux-under-windows-18-software-commonly-used-substitutes.html#comments</comments>
		<pubDate>Mon, 14 Apr 2008 02:43:47 +0000</pubDate>
		<dc:creator>a18ccms</dc:creator>
				<category><![CDATA[混论分类]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[工具]]></category>
		<category><![CDATA[替代]]></category>

		<guid isPermaLink="false">http://www.a18zhizao.cn/?p=460</guid>
		<description><![CDATA[Linux 越来越受欢迎，但很多人不敢用 Linux 取代 Windows 的原因是他们习惯了 Windows 下的那些应用程序，担心在 Linux 中找不到对应的代用品，PCWorld 的 Scott Spanbauer 为你整理了18个可以取代 Windows 下相应应用的 Linux 程序。 Office 程序 - OpenOffice OpenOffice 2.3 包含一个字处理程序，一个电子表格，取代 Power Point  的演示程序，取代 Access 的数据库程序，另外，你可以用来化矢量图，编辑数学公式。 Outlook - Evolution Evolution 支持标准 Internet 协议，如，POP3, SMTP, IMAP, LDAP 等，支持 CalDAV 日历服务，允许你轻松导入导出数据并和其他人共享。 Windows Notepad - Kate 或 Gedit 运行 KDE 桌面的 Linux（SuSE Linux）包含一个非常好用的 Kate 程序，Gnome 环境下（Ubuntu），你可以使用 [...]]]></description>
			<content:encoded><![CDATA[<p>Linux 越来越受欢迎，但很多人不敢用 Linux 取代 Windows 的原因是他们习惯了 Windows 下的那些应用程序，担心在 Linux 中找不到对应的代用品，PCWorld 的 Scott Spanbauer 为你整理了18个可以取代 Windows 下相应应用的 Linux 程序。<br />
<strong>Office 程序 - OpenOffice</strong></p>
<p><a href="http://www.openoffice.org/">OpenOffice 2.3</a> 包含一个字处理程序，一个电子表格，取代 Power Point  的演示程序，取代 Access 的数据库程序，另外，你可以用来化矢量图，编辑数学公式。</p>
<p><strong>Outlook - Evolution</strong></p>
<p><a href="http://www.gnome.org/projects/evolution/">Evolution</a> 支持标准 Internet 协议，如，POP3, SMTP, IMAP, LDAP 等，支持 CalDAV 日历服务，允许你轻松导入导出数据并和其他人共享。</p>
<p><strong>Windows Notepad - Kate 或 Gedit</strong></p>
<p>运行 KDE 桌面的 Linux（SuSE Linux）包含一个非常好用的 <a href="http://kate-editor.org/">Kate</a> 程序，Gnome 环境下（Ubuntu），你可以使用 <a href="http://www.gnome.org/projects/gedit/">Gedit</a>，它们都可以完美地取代 Notepad。</p>
<p><strong>Quicken - GnuCash</strong></p>
<p><a href="http://www.gnucash.org/">GnuCash</a> 可能不如 Quicken 那样成熟，但和 Quicken 一样，它可以帮助你记录所有帐户以及花消情况，它还可以导入 Quicken QIF 和 OFX 文件。</p>
<p><strong>Microsoft Publisher - Scribus</strong></p>
<p><a href="http://www.scribus.net/">Scribus</a> 可以帮助你根据相应模板设计邮件，手册，以及演示用幻灯片，甚至可以将结果导出到标准 PDF 文件。</p>
<p><strong>Internet Explorer - Konqueror</strong></p>
<p>Firefox  和 Opera 都有 Linux 本地版本，如果你想更多功能， KDE 桌面下的  <a href="http://www.konqueror.org/">Konqueror</a> 类似于 Windows 下的资源管理器，同时可以当作很好的浏览器使用。</p>
<p><strong>AIM - Pidgin 和  Kopete</strong></p>
<p>AOL 也提供 Linux 下的客户端，但 <a href="http://www.pidgin.im/">Pidgin</a> （即 Gaim）允许你连接更多网络，包括 AIM, Google Talk, ICQ, MSN 以及 Yahoo Messenger。如果你使用 KDE 桌面，你可以使用 <a href="http://kopete.kde.org/">Kopete</a>。</p>
<p><strong>BitTorrent - Azureus</strong></p>
<p><a href="http://azureus.sourceforge.net/">Azureus</a> BT 客户端允许你在 Linux 环境下分享文件，象 BT 一样。</p>
<p><strong>Skype - Ekiga </strong></p>
<p>Skype 本身也提供 Linux 下的版本，但在 Linux 中，你可以使用更好的 <a href="http://www.gnomemeeting.org/">Ekiga</a> 进行 VoIP 应用，甚至拨打普通电话，和 Skype 不同的是， Ekiga 不会用你的计算机中继别人的数据包。</p>
<p><strong>Windows Media Player - Amarok 或 VLC </strong></p>
<p><a href="http://amarok.kde.org/">Amarok</a> 和 WMP 以及 Winamp 等等播放程序一样，允许你建立音乐库并播放它们，你可以播放 CD,建立播放列表，将歌曲拷贝到 MP3 播放器，或者在线收听网络电台。</p>
<p>但 <a href="http://amarok.kde.org/">Amarok</a>  不支持视频播放，要播放视频，你可以使用 <a href="http://www.videolan.org/vlc/">VLC</a>，支持几乎所有视频，音频格式，包括在线视频以及 DVD,CD。</p>
<p><strong>Nero - K3B</strong></p>
<p><a href="http://k3b.plainblack.com/">K3B</a> 和 Nero 的功能几乎没什么区别，可以烧录 CD, DVD，支持 iso 格式直接烧录。</p>
<p><strong>Windows Media Center - MythTV</strong></p>
<p><a href="http://www.mythtv.org/">MythTV</a> 支持主流的视频捕捉卡（包括 HDTV），可以帮助你建立家庭媒体中心，录制视频节目。</p>
<p><strong>Photoshop - GIMP 或 Krita</strong></p>
<p><a href="http://www.gimp.org/">GIMP</a> 毁誉参半，它和 Photoshop 一样强大，但上手有些难，如果你习惯了 Photoshop，可以试试 <a href="http://www.gimpshop.com/">GIMPshop</a>，一个 GIMP 的修改版本，模拟了 Photoshop 操作界面。如果你只想在 Linux 下进行简单的图象编辑，可以试一下 <a href="http://www.koffice.org/krita">Krita</a>，对初学者更容易一些。</p>
<p><strong>Partition Magic - GParted</strong></p>
<p>对磁盘分区进行操作应该是操作系统最基本的工具，但 Windows 下竟然要靠第三方软件，在 Linux 下，你可以使用 <a href="http://gparted.sourceforge.net/">Gparted</a>，磁盘分区的所有操作都包含在里面了。</p>
]]></content:encoded>
			<wfw:commentRss>http://a18zhizao.com/y2008/460_linux-under-windows-18-software-commonly-used-substitutes.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>黑客大赛发现Mac OS X与Vista都不安全Linux还算安全</title>
		<link>http://a18zhizao.com/y2008/444_ubuntu-is-good.html</link>
		<comments>http://a18zhizao.com/y2008/444_ubuntu-is-good.html#comments</comments>
		<pubDate>Sun, 30 Mar 2008 12:07:01 +0000</pubDate>
		<dc:creator>a18ccms</dc:creator>
				<category><![CDATA[网摘]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Mac OS X]]></category>
		<category><![CDATA[Vista]]></category>

		<guid isPermaLink="false">http://www.a18zhizao.cn/y2008/444_ubuntu-is-good.html</guid>
		<description><![CDATA[在本周五于加拿大温哥华市举行的2008年全球黑客大赛最后一天,运行微软Windows Vista操作系统的富士通笔记本也被参赛黑客攻破,唯独运行Ubuntu Linux的索尼Vaio笔记本没有被攻破.至此,本届为期三天的黑客大赛以“2破1不动”而落下了帷幕. 名为“PWN 2 OWN”的2008年全球黑客大赛于本周三进行,大赛举办方提供了三部运行不同操作系统的笔记本电脑,以供各参赛黑客小组实施攻击,这些操作系统分别为微软Vista、苹果Mac OS X及Ubuntu Linux.周三当天,所有参赛小组都没能成功攻破任何一台笔记本.当天的攻击规则是:只允许参赛者实施基于网络的攻击,其它用户不得参与互动. 周四大赛举办方改变了攻击规则,即允许攻击者使用欺诈手段,诱引被攻击用户访问含有恶意代码的网站,同时允许攻击者针对不同操作系统中所安装的默认浏览器实施攻击.在改变规则后,周四以查理·米勒(Charlie Miller)为主的参赛小组在不到2分钟时间内攻破了苹果MacBook Air超薄笔记本,并为此获得了1万美元奖金. 周五是本届黑客大赛的最后一天.当天参赛黑客谢恩·麦考莱(Shane Macaulay)在同事协助下,一举攻破了微软Vista系统.麦考莱也是去年黑客大赛的获胜者之一.他表示,自己没有想到所攻击的Vista系统已安装了SP1(即第一个升级服务包),而Vista SP1加强了安全性.如此一来,他只得请求数位同事配合,以激活他在Vista中所发现的漏洞. 大赛举办方规定,任何参赛人员发现相应漏洞后,不得对外公布他们所发现的产品漏洞和相应攻击方式,以便相应厂商能及时修补漏洞.但麦考莱称,他所发现的漏洞具有跨平台性,而不仅是Vista所独有,“这个漏洞同样也能影响Linux和苹果Mac OS X操作系统.” 麦考莱还表示,他今年选择以Vista为攻击对象,是由于他曾接受过微软的软件合同,因此对微软产品较为熟悉.大赛举办方表示,虽然不少参赛赛者多次试图攻破Ubuntu Linux笔记本,但都没能取得成功.但有不少参赛者称,他们其实已经找到了Ubuntu系统中的漏洞,但鉴于这款开放源代码操作系统仍处于发展阶段,参赛者不想在这次大赛上对Ubuntu“下手”. 攻破苹果MacBook Air笔记本的米勒周四曾表示,自己之所以选择Mac OS X系统,是觉得该系统“最容易攻破”.麦考莱周五也表示,自己基本认同米勒的看法. 文/腾讯科技]]></description>
			<content:encoded><![CDATA[<p>在本周五于加拿大温哥华市举行的2008年全球黑客大赛最后一天,<span style="font-weight: bold">运行微软Windows Vista操作系统的富士通笔记本也被参赛黑客攻破,唯独运行Ubuntu Linux的索尼Vaio笔记本没有被攻破.至此,本届为期三天的黑客大赛以“2破1不动”而落下了帷幕.</span><br />
名为“PWN 2 OWN”的2008年全球黑客大赛于本周三进行,大赛举办方提供了三部运行不同操作系统的笔记本电脑,以供各参赛黑客小组实施攻击,这些操作系统分别为微软Vista、苹果Mac OS X及Ubuntu Linux.周三当天,所有参赛小组都没能成功攻破任何一台笔记本.当天的攻击规则是:只允许参赛者实施基于网络的攻击,其它用户不得参与互动.</p>
<p>周四大赛举办方改变了攻击规则,即允许攻击者使用欺诈手段,诱引被攻击用户访问含有恶意代码的网站,同时允许攻击者针对不同操作系统中所安装的默认浏览器实施攻击.在改变规则后,周四以查理·米勒(Charlie Miller)为主的参赛小组在不到2分钟时间内攻破了苹果MacBook Air超薄笔记本,并为此获得了1万美元奖金.</p>
<p>周五是本届黑客大赛的最后一天.当天参赛黑客谢恩·麦考莱(Shane Macaulay)在同事协助下,一举攻破了微软Vista系统.麦考莱也是去年黑客大赛的获胜者之一.他表示,自己没有想到所攻击的Vista系统已安装了SP1(即第一个升级服务包),而Vista SP1加强了安全性.如此一来,他只得请求数位同事配合,以激活他在Vista中所发现的漏洞.</p>
<p>大赛举办方规定,任何参赛人员发现相应漏洞后,不得对外公布他们所发现的产品漏洞和相应攻击方式,以便相应厂商能及时修补漏洞.但麦考莱称,他所发现的漏洞具有跨平台性,而不仅是Vista所独有,“这个漏洞同样也能影响Linux和苹果Mac OS X操作系统.”</p>
<p>麦考莱还表示,他今年选择以Vista为攻击对象,是由于他曾接受过微软的软件合同,因此对微软产品较为熟悉.大赛举办方表示,虽然不少参赛赛者多次试图攻破Ubuntu Linux笔记本,但都没能取得成功.但有不少参赛者称,他们其实已经找到了Ubuntu系统中的漏洞,但鉴于这款开放源代码操作系统仍处于发展阶段,参赛者不想在这次大赛上对Ubuntu“下手”.</p>
<p>攻破苹果MacBook Air笔记本的米勒周四曾表示,自己之所以选择Mac OS X系统,是觉得该系统“最容易攻破”.麦考莱周五也表示,自己基本认同米勒的看法.</p>
<p>文/腾讯科技</p>
]]></content:encoded>
			<wfw:commentRss>http://a18zhizao.com/y2008/444_ubuntu-is-good.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GNOME 2.21.90 发布</title>
		<link>http://a18zhizao.com/y2008/260_gnome-22190-release.html</link>
		<comments>http://a18zhizao.com/y2008/260_gnome-22190-release.html#comments</comments>
		<pubDate>Thu, 31 Jan 2008 10:30:47 +0000</pubDate>
		<dc:creator>a18ccms</dc:creator>
				<category><![CDATA[混论分类]]></category>
		<category><![CDATA[GNOME]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[综合]]></category>

		<guid isPermaLink="false">http://www.a18zhizao.cn/y2008/260_gnome-22190-release.html</guid>
		<description><![CDATA[GNOME是一个开源项目,它为Linux用户提供易用的桌面环境,同时,GNOME也为软件开发人员提供了一个强大的应用框架. GNOME项目始于1997年8月,且已获得最大Linux发行商——Red Hat的支持,拥有大量基于Linux的应用软件(Ubuntu也用的它).GNOME与KDE同为两大竞争阵营,无论如何,这将使Linux更加易于使用. 下载:GNOME 2.21.90]]></description>
			<content:encoded><![CDATA[<p><span style="font-weight: bold">GNOME是一个开源项目,它为Linux用户提供易用的桌面环境,同时,GNOME也为软件开发人员提供了一个强大的应用框架.</span><br />
GNOME项目始于1997年8月,且已获得最大Linux发行商——Red Hat的支持,拥有大量基于Linux的应用软件(Ubuntu也用的它).GNOME与KDE同为两大竞争阵营,无论如何,这将使Linux更加易于使用.<br />
<span id="more-260"></span></p>
<p><strong>下载:</strong><a target="_blank" href="http://ftp.gnome.org/pub/GNOME/desktop/2.21/2.21.90/sources/">GNOME 2.21.90</a></p>
<p><img width="590" src="http://www.gnome.org/start/2.20/notes/en/figures/rnintroduction-screenshot.png" /></p>
]]></content:encoded>
			<wfw:commentRss>http://a18zhizao.com/y2008/260_gnome-22190-release.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Linux命令行大全 v1.0</title>
		<link>http://a18zhizao.com/y2008/90_linux%e5%91%bd%e4%bb%a4%e8%a1%8c%e5%a4%a7%e5%85%a8-v10.html</link>
		<comments>http://a18zhizao.com/y2008/90_linux%e5%91%bd%e4%bb%a4%e8%a1%8c%e5%a4%a7%e5%85%a8-v10.html#comments</comments>
		<pubDate>Sun, 06 Jan 2008 11:52:59 +0000</pubDate>
		<dc:creator>a18ccms</dc:creator>
				<category><![CDATA[混论分类]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[命令行大全]]></category>
		<category><![CDATA[综合]]></category>

		<guid isPermaLink="false">http://www.a18zhizao.cn/2008/01/06/linux%e5%91%bd%e4%bb%a4%e8%a1%8c%e5%a4%a7%e5%85%a8-v10</guid>
		<description><![CDATA[Linux的命令行操作简洁效率高,就是数量有点多. linuxguide.it整理了多达350条以上的Linux命令行命令,并给出了相应的说明可供您速查用. 无论是Linux新手还是老鸟都应该留一份备用,毕竟日常工作中我们不能带着参考书走. Linux Commands Line - v1.0 COMMAND DESCRIPTION]]></description>
			<content:encoded><![CDATA[<p><strong>Linux的命令行操作简洁效率高,就是数量有点多.<br />
linuxguide.it整理了多达350条以上的Linux命令行命令,并给出了相应的说明可供您速查用.<br />
</strong>无论是Linux新手还是老鸟都应该留一份备用,毕竟日常工作中我们不能带着参考书走.</p>
<p><span id="more-90"></span></p>
<p><a target="_blank" href="http://www.linuxguide.it/linux_commands_line_en.htm">Linux Commands Line - v1.0</a></p>
<table border="1" cellPadding="4" cellSpacing="1">
<tr height="17">
<td height="17" bgColor="#ffffff"><span class="Stile29">COMMAND</span></td>
<td height="17" bgColor="#e0e0e0" class="Stile29">DESCRIPTION</td>
</tr>
</table>
]]></content:encoded>
			<wfw:commentRss>http://a18zhizao.com/y2008/90_linux%e5%91%bd%e4%bb%a4%e8%a1%8c%e5%a4%a7%e5%85%a8-v10.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>新的Splash画面已进入KDE 4</title>
		<link>http://a18zhizao.com/y2008/44_%e6%96%b0%e7%9a%84splash%e7%94%bb%e9%9d%a2%e5%b7%b2%e8%bf%9b%e5%85%a5kde-4.html</link>
		<comments>http://a18zhizao.com/y2008/44_%e6%96%b0%e7%9a%84splash%e7%94%bb%e9%9d%a2%e5%b7%b2%e8%bf%9b%e5%85%a5kde-4.html#comments</comments>
		<pubDate>Wed, 02 Jan 2008 13:23:30 +0000</pubDate>
		<dc:creator>a18ccms</dc:creator>
				<category><![CDATA[混论分类]]></category>
		<category><![CDATA[kde]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[oxygen]]></category>
		<category><![CDATA[Splash]]></category>
		<category><![CDATA[综合]]></category>

		<guid isPermaLink="false">http://www.a18zhizao.cn/2008/01/02/%e6%96%b0%e7%9a%84splash%e7%94%bb%e9%9d%a2%e5%b7%b2%e8%bf%9b%e5%85%a5kde-4</guid>
		<description><![CDATA[离KDE 4的正式发布已越来越近了,开发工作似乎非顺利. KDE 4正式版将于9天后的2008年1月11日发布.这不,新年刚过,KDE 4就更换了它的Splash启动画面.美工的陆续完成,是不是预示着KDE 4将会如期发布呢? KDE 4正式版将于9天后的2008年1月11日 发布，我在上月体验KDE 4 RC1的时候，给大家看了当时的KDE 4 RC1的Splash启动画面：一组开发人员的照片。如下图： 不得不说之前的Splash就是KDE 3风格的，只是替换了图片而已。 现在，最新的KDE 4的Splash已经换成了下面这张。漂亮的Oxygen风格的图标，还有模糊的阴影效果，真是非常酷。 Linux桌面世界的第一个新年大礼就是KDE 4！这还用怀疑吗？]]></description>
			<content:encoded><![CDATA[<p><strong>离KDE 4的正式发布已越来越近了,开发工作似乎非顺利.</strong><br />
KDE 4正式版将于9天后的2008年1月11日发布.这不,新年刚过,KDE 4就更换了它的Splash启动画面.美工的陆续完成,是不是预示着KDE 4将会如期发布呢?<br />
KDE 4正式版将于9天后的2008年1月11日 发布，我在上月体验KDE 4 RC1的时候，给大家看了当时的KDE 4 RC1的Splash启动画面：一组开发人员的照片。如下图：<span id="more-44"></span></p>
<p><a href="http://linuxdesktop.cn/"><img width="480" src="http://linuxdesktop.cn/wp-content/uploads/2007/11/01.jpg" height="360" /></a></p>
<p>不得不说之前的Splash就是KDE 3风格的，只是替换了图片而已。</p>
<p>现在，最新的KDE 4的Splash已经换成了下面这张。漂亮的Oxygen风格的图标，还有模糊的阴影效果，真是非常酷。</p>
<p><a href="http://linuxdesktop.cn/" title="kde4_ksplah.jpg"><img src="http://linuxdesktop.cn/wp-content/uploads/2008/01/kde4_ksplah.jpg" alt="kde4_ksplah.jpg" /></a></p>
<p>Linux桌面世界的第一个新年大礼就是KDE 4！这还用怀疑吗？</p>
]]></content:encoded>
			<wfw:commentRss>http://a18zhizao.com/y2008/44_%e6%96%b0%e7%9a%84splash%e7%94%bb%e9%9d%a2%e5%b7%b2%e8%bf%9b%e5%85%a5kde-4.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

