使用IPtables搭建防火墙的规则
2006-04-03 12:38:01 来源:WEB开发网# iptables -P INPUT DROP
# iptables -P FORWARD DROP
# iptables -P OUTPUT ACCEPT
这里选项-P用于设置链的策略,只有三个内建的链才有策略。这些策略可以让信息毫无限制地流出,但不允许信息流入。但很多时候,我们还是需要接收外部信息的。这时可使用以下命令:
# iptables -t filter -A INPUT -s 123.456.789.0/24 -j ACCEPT
SYN的使用
我们不能关闭所有的端口,那将会把我们自己完全“与世隔绝”。我们也不能只指定某些端口处于打开状态,因为我们无法预见哪一个端口将会被使用。事实上,只简单地允许目的地为某一特定端口的数据流通过将对阻止恶意的攻击毫无意义。那么我们怎样才能设置一个有效的规则,即可以允许普通用户正常通过,又可以阻止恶意攻击者访问我们的网络呢?
对于刚开始使用iptables的人,我们可以充分利用syn标识来阻止那些未经授权的访问。因为iptables只检测数据包的报头,所以不会增加有效负荷。事实上,除iptables以外,很多其它有用的数据包分析都是基于报头的。
比如,在进行Web冲浪时,一个请求从你的PC发送至其它某一个地方的Web服务器之上,接着该服务器就会响应请求并且向你发回一个数据包,并且得到你的系统上的一个临时端口。与响应请求不同的是,服务器并不关心你所传送的内容。这们可以利用这种特点,来设置一个规则,让它阻止所有没有经过你的系统授权的TCP连接:
# iptables -t filter -A INPUT -i eth0 -p tcp --syn -j DROP
这里的-i指的是网卡,-p则是指协议,--syn则表示带有syn标识设置的TCP数据包。从中我们可以看出,对TCP/IP的了解将非常有利于维护网络安全。SYN用于初始化一个TCP连接,如果你在自己的机器上没有运行任何服务器,别人自然也就不会向你发送SYN数据包了。
更多精彩
赞助商链接