首页 | 资讯动态 | linux基础 | 系统管理 | 网络管理 | 编程开发 | linux数据库 | 服务器技术 | linux相关 | linux认证 | 嵌入式 | 下载中心 | 专题 | linux招聘 | 镜像站
OKLinux中文技术站
·设为首页
·加入收藏
·联系我们
系统管理: 中文环境 系统管理 桌面应用 内核技术 | Linux基础: 基础入门 安装配置 常用命令 经验技巧 软件应用 | Linux数据库: Mysql Postgre Oracle DB2 Sybase other
网络管理: 网络安全 网络应用 Linux服务器 环境配置 黑客安全 | 编程开发: PHP CC++ Python Perl Shell 嵌入式开发 java jsp | PHP技术: PHP基础 PHP技巧 PHP应用 PHP文摘
搜索中心 Linux招聘 Linux专题 Apache | Linux相关: 硬件相关 Linux解决方案 Linux认证 企业应用 其它Unix | 相关下载: 资料下载 参考手册 开发工具 服务器类 软路由 其它
 技术搜索:
会员中心 注册会员 高级搜索  
  → 当前位置:首页>网络管理>网络安全>正文

Linux服务器安全配置之防火墙篇

http://www.oklinux.cn  2008-10-06  linuxidc   会员收藏  游客收藏  【 】 
您查看的文章来源于http://www.oklinux.cn

Linux 防火墙iptables概念

Iptalbes(IP包过滤器管理)是用来设置、维护和检查Linux内核的IP包过滤规则的。

可以定义不同的表,每个表都包含几个内部的链,也能包含用户定义的链。每个链都是一个规则列表,对对应的包进行匹配:每条规则指定应当如何处理与之相匹配的包。这被称作''''target''''(目标),也可以跳向同一个表内的用户定义的链。

通过使用用户空间,可以构建自己的定制规则,这些规则存储在内核空间的信息包过滤表中。这些规则具有目标,它们告诉内核对来自某些源、前往某些目的地或具有某些协议类型的信息包做些什么。如果某个信息包与规则匹配,那么使用目标 ACCEPT 允许该信息包通过。还可以使用目标 DROP 或 REJECT 来阻塞并杀死信息包。对于可对信息包执行的其它操作,还有许多其它目标。

根据规则所处理的信息包的类型,可以将规则分组在链中。处理入站信息包的规则被添加到 INPUT 链中。处理出站信息包的规则被添加到 OUTPUT 链中。处理正在转发的信息包的规则被添加到 FORWARD 链中。这三个链是基本信息包过滤表中内置的缺省主链。另外,还有其它许多可用的链的类型(如 PREROUTING 和 POSTROUTING),以及提供用户定义的链。每个链都可以有一个策略,它定义“缺省目标”,也就是要执行的缺省操作,当信息包与链中的任何规则都不匹配时,执行此操作。

建立规则并将链放在适当的位置之后,就可以开始进行真正的信息包过滤工作了。这时内核空间从用户空间接管工作。当信息包到达防火墙时,内核先检查信息包的头信息,尤其是信息包的目的地。我们将这个过程称为路由。

如果信息包源自外界并前往系统,而且防火墙是打开的,那么内核将它传递到内核空间信息包过滤表的 INPUT 链。如果信息包源自系统内部或系统所连接的内部网上的其它源,并且此信息包要前往另一个外部系统,那么信息包被传递到 OUTPUT 链。类似的,源自外部系统并前往外部系统的信息包被传递到 FORWARD 链。

iptables实例1:

#!/bin/sh

# 禁止系统的转发包功能

echo 0 > /proc/sys/net/ipv4/ip_forward

# 清楚iptables原有规则,并设置iptables默认规则

iptables -t nat -F POSTROUTING

iptables -t nat -F PREROUTING

iptables -t nat -F OUTPUT

iptables -F

iptables -P INPUT DROP

iptables -P FORWARD ACCEPT

iptables -P OUTPUT ACCEPT

# 在input规则中需要打开的tcp、upd端口

iptables -A INPUT -j ACCEPT -p tcp --dport 80

iptables -A INPUT -j ACCEPT -p tcp --dport 22

iptables -A INPUT -j ACCEPT -p tcp --dport 25

iptables -A INPUT -j ACCEPT -p tcp --dport 1352

iptables -A INPUT -p udp --destination-port 53 -j ACCEPT

# 在input规则中状态为:STATE RELATED 的包都接受

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# 启用系统ip转发功能

echo 1 > /proc/sys/net/ipv4/ip_forward

< --end-- >

iptables实例2:

注:这个实例中,只需要设置tcp、udp端口和服务器网络段ip范围即可,其他已经默认设置好。

#!/bin/sh

# make:yongzhang

# time:2004-06-18

# e-mail: [email protected]

PATH=/sbin:/bin:/usr/sbin:/usr/bin

##tcp allow ports

TPORTS="80 22"

##udp allow ports

UPORTS="53"

##internal server_ip range

SERVER_IP="172.18.10.0/24"

##disable forwarding

echo 0 > /proc/sys/net/ipv4/ip_forward

##reset default policies

iptables -P INPUT ACCEPT

iptables -P FORWARD ACCEPT

iptables -P OUTPUT ACCEPT

iptables -t nat -P PREROUTING ACCEPT

iptables -t nat -P POSTROUTING ACCEPT

iptables -t nat -P OUTPUT ACCEPT

##del all iptables rules

iptables -F INPUT

iptables -F FORWARD

iptables -F OUTPUT

##clean all non-default chains

iptables -X

iptables -t nat -X

##iptables default rules

iptables -P INPUT DROP

iptables -P FORWARD DROP

iptables -P OUTPUT ACCEPT

##allow ping packets

iptables -A INPUT -p ICMP -s 0/0 --icmp-type 0 -j ACCEPT

iptables -A INPUT -p ICMP -s 0/0 --icmp-type 3 -j ACCEPT

iptables -A INPUT -p ICMP -s 0/0 --icmp-type 5 -j ACCEPT

iptables -A INPUT -p ICMP -s 0/0 --icmp-type 8 -j ACCEPT

iptables -A INPUT -p ICMP -s 0/0 --icmp-type 11 -j ACCEPT

#iptables -A INPUT -p ICMP -s 0/0 --icmp-type 11 -m limit --limit 5/s -j ACCEPT

iptables -A FORWARD -p ICMP -j ACCEPT

##enable forwarding

iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

##STATE RELATED for router

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

##accept internal packets on the internal i/f

iptables -A INPUT -s $SERVER_IP -p tcp -j ACCEPT

##open ports on router for server/services

##TCP PORTS

for ATP in $TPORTS

do

iptables -A INPUT ! -s $SERVER_IP -d $SERVER_IP -p tcp --destination-port $ATP -j ACCEPT

iptables -A FORWARD -p tcp --destination-port $ATP -j ACCEPT

done

##UDP PORTS

for AUP in $UPORTS

do

iptables -A INPUT -p udp --destination-port $AUP -j ACCEPT

iptables -A FORWARD -p udp --destination-port $AUP -j ACCEPT

共3页: 上一页 1 [2] [3] 下一页

上一篇:Linux学习笔记之Shell 的重要性   下一篇:Linux下绑定IP及MAC地址 防范ARP欺骗病毒

收藏于收藏夹】 【评论】 【推荐】 【打印】 【关闭
相关文档
·Linux下绑定IP及MAC地址 防范ARP欺骗病毒
·Ubuntu 8.10 Alpha伤害Intel网卡问题得到修复
·Ubuntu比Windows XP安全原因何在?
·Linux环境局域网内ARP欺骗的防止
·从Linux内核漏洞考虑系统安全性
·用修改过的Linux Kernel去发现恶意代码及研究对策
·Linux的安全性
·Firefox 3.0.3发布 修正密码丢失问题(包括Linux版)
·关于Linux操作系统的安全性
·远程安装Net-SNMP全过程
·Linux下配置ssh无密码登录
·实现Linux安全没有尚方宝剑
·Linux服务器之22端口弱口令与SSH连接程序
·SUSE Linux网络配置以及防火墙配置
·Linux平台下防范黑客实用技巧分享
·简单七步让你建立更加安全的Linux服务器
发表评论
密码: 匿名评论
评论内容:

(不超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规)
 
  最新文档
·Linux下绑定IP及MAC地址 防范ARP欺骗病
·Ubuntu 8.10 Alpha伤害Intel网卡问题得
·Ubuntu比Windows XP安全原因何在?
·Linux环境局域网内ARP欺骗的防止
·从Linux内核漏洞考虑系统安全性
·用修改过的Linux Kernel去发现恶意代码
·Linux的安全性
·Firefox 3.0.3发布 修正密码丢失问题(
·关于Linux操作系统的安全性
·远程安装Net-SNMP全过程
·Linux下配置ssh无密码登录
·实现Linux安全没有尚方宝剑
  阅读排行
·为Linux服务器部署高效防毒软件
·通过Linux工具来全面保障无线网络安全
·从Linux内核的漏洞角度考虑系统安全
·linux安全:Linux ACL 体验
·Ubuntu中UFW防火墙的安装及使用
·玩转Ubuntu Linux之加密文件系统篇
·用Apache Proxy的指令改进LAMP安全性
·使用SSL 保护VNC应用程序
·操作系统安全防护技巧介绍之Linux篇
·Linux安全之网上惊现傻瓜型病毒制作工
·Ubuntu里安装配置防火墙
·MPPE加密VPN服务器详解
·通过Linux系统伪装方法加固系统安全
·使用mod_proxy改进LAMP 安全
·增强Linux/Unix服务器系统安全性介绍
网摘收藏: