21-Linux路由与防火墙
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第二十一章Linux路由与防火墙
教学内容:
■Linux路由器的基本概念
■Linux路由器的配置
■Linux防火墙的基本概念
■Linux防火墙的配置
■Linux防火墙的配置案例
教学目标:
■掌握Linux路由器的配置
■掌握Linux防火墙的配置
■理解Linux防火墙的应用
教学重点:
■Linux路由器的配置
■Linux防火墙的配置
■Linux防火墙的应用
教学难点:
■Linux防火墙的原理
■Linux防火墙的应用
一.Linux路由器
1.静态路由的配置
⑴启用Linux系统的路由转发功能
# vi /etc/rc.d/rc.local 添加以下内容
echo “1”>/proc/sys/net/ipv4/ip_forward
⑵配置网卡接口的ip信息
# netconfig
⑶配置静态路由表
#route
实例:# route add - net 192.168.0.0/24 dev eth0
# route add –host 192.168.0.1 dev eth0
# route add –host 192.168.0.1 gw 192.168.1.1
# route add –net 192.168.1.0 netmask 255.255.255.0 gw 192.168.0.1
2. 动态路由
⑴启用Linux系统的路由转发功能
# vi /etc/rc.d/rc.local 添加以下内容
echo “1”>/proc/sys/net/ipv4/ip_forward
⑵配置网卡接口的ip信息
⑶启用动态路由协议
①zebra 简介
zebra是基于Linux系统的Cisco路由仿真软件,该软件支持rip;ospf;BGP 等多种动态路由协议;
②zebra的安装
# rpm –ivh zebra…….i386.rpm (3# CD)
③配置zebra
ⅰ.创建动态路由的配置文件
# touch /etc/zrbra/文件名.conf
(注:rip协议文件名是ripd.conf
ospf协议文件名是ospf.conf )
ⅱ.配置动态协议
# vtysh
…………….
…………….以下为Cisco路由器命令
ⅲ.启动服务
# service zebra start
# service ripd/ospfd start
二.防火墙基础
1.防火墙的功能
·IP 地址保留和通信转发
·网络区分
·防御Dos攻击
·IP 和端口的过滤
·内容过滤
·包重定向
·强化认证和加密
·补充记录
2.防火墙分类
·包过滤防火墙(网络层)
·内容过滤防火墙(应用层)
3.包过滤防火墙的基本过程
4.包过滤防火墙
优点:实现简单,速度快,价格便宜
缺点:不支持用户认证,规则的复杂度影响速度;功能较单一;
5.Linux系统中常用的包过滤软件
·ipfwadm (应用于2.0内核)
·ipchains (应用于2.2内核)
·iptables (应用于2.4内核)
三.Iptables的基础
1.netfilter/iptables的含义
netfilter:是系统的独立模块,用于实现包过滤功能;
iptables :一种管理内核包过滤的工具,为实现配置防火墙提供方便;
2.netfilter/iptables的功能
·包过滤
·NAT
·连接跟踪
·QOS
3.netfilter/iptables常用术语
·表
·链
·规则
⑴表
含义:提供独立的功能,每张表中由若干链组成
种类:FILTER(默认) :包过滤
NAT :地址转换
MANGLE :QOS
⑵链
含义:是表的组成部分,细分表的具体功能,每条链由若干条规则构成
种类:INPUT
OUTPUT
FORWARD
POSTROUTING (对出去的数据包进行路由选择)
PREROUTING (对进来的数据包进行路由选择)
用户自定义链
注:FILTER : INPUT OUTPUT FORWARD
NAT : OUTPUT POSTROUTING PREROUTING
MANGLE : PREROUTING OUTPUT INPUT POSTROUTING
FORWARD
⑶规则
含义:是一种包含条件的判断语句,用于确定如何处理数据包
种类: ACCEPT DROP FORWARD REJECT SNAT DNA T
四.iptables的使用
1.安装iptables
# rpm –ivh iptables-1.2.7a-3.i386.rpm
相关文件:
/etc/rc.d/init.d/iptables (启动脚本)
/usr/sbin/iptables (配置工具)
/usr/sbin/iptables-save (保存规则到/etc/sysconfig/iptables文件中)
/usr/sbin/iptables-restore (恢复/etc/sysconfig/iptables文件中的规则)
2.iptables的语法
命令格式:
# iptables [-t 表名] 命令[链] [规则号] [条件] [规则]
说明:⑴-t 表名指定规则所在的表。表名可以是filter ,nat ,mangle (小写)
⑵命令(iptables的子命令)
-A 在指定链中添加规则
-D 在指定链中删除指定规则
-R 修改指定链中指定规则
-I 在指定规则前插入规则
-L 显示链中的规则
-N 建立用户链
-F 清空链中的规则
-X 删除用户自定义链
-P 设置链的默认规则
-C 用具体的规则链来检查在规则中的数据包
-h 显示帮助
⑶条件
–i 接口名指定接收数据包接口
-o 接口名指定发送数据包接口
-p [!]协议名指定匹配的协议(tcp , udp , icmp , all )
-s [!]ip地址[/mask] 指定匹配的源地址
--sport [!]端口号[:端口号] 指定匹配的源端口或范围
-d [!]ip地址[/mask] 指定匹配的目标地址
--dport [!]端口号[:端口号] 指定匹配的目标端口或范围
--icmp –type [!]类型号/类型名指定icmp包的类型
注:8 表示request 0 表示relay (应答)
-m port [--multiport] 指定多个匹配端口
limit [--limit] 指定传输速度
mac [--mac-source] 指定匹配MAC地址
注:以上选项用于定义扩展规则
-j 规则指定规则的处理方法