文档库 最新最全的文档下载
当前位置:文档库 › centos 防火墙iptables脚本配置

centos 防火墙iptables脚本配置

centos 防火墙iptables脚本配置
centos 防火墙iptables脚本配置

centos 防火墙iptables 用shell代码来添加

vim firewall.sh

#!/bin/bash

PATH=/sbin:/bin:/usr/sbin:/usr/bin; export PATH

# 1. 清除规则

iptables -F

iptables -X

iptables -Z

# 2. 设定政策

iptables -P INPUT DROP

iptables -P OUTPUT ACCEPT

iptables -P FORW ARD ACCEPT

# 3~5. 制订各项规则

iptables -A INPUT -i lo -j ACCEPT

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

#SSH的端口,不然远程不了

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

#做了FTP服务器,开启21端口

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

iptables -A INPUT -p tcp --dport 10000:20000 -j ACCEPT

#WEB服务器,开启80端口.

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

#seafile服务器

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

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

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

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

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

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

#邮件服务器,开启25,110端口

#iptables -A INPUT -p tcp --dport 110 -j ACCEPT

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

#做了DNS服务器,开启53端口

#iptables -A INPUT -p tcp --dport 53 -j ACCEPT

#允许loopback!(不然会导致DNS无法正常关闭等问题)

#iptables -A INPUT -i lo -p all -j ACCEPT

#iptables -A OUTPUT -o lo -p all -j ACCEPT

#允许icmp包通过,也就是允许ping

iptables -A OUTPUT -p icmp -j ACCEPT

iptables -A INPUT -p icmp -j ACCEPT

#减少不安全的端口连接

iptables -A OUTPUT -p tcp --sport 31337 -j DROP

iptables -A OUTPUT -p tcp --dport 31337 -j DROP

#samb

#iptables -A INPUT -p tcp --dport 137 -j ACCEPT

#iptables -A INPUT -p tcp --dport 138 -j ACCEPT

#iptables -A INPUT -p tcp --dport 139 -j ACCEPT

#iptables -A INPUT -p tcp --dport 445 -j ACCEPT

#iptables -A INPUT -i eth0 -s 192.168.1.0/24 -j ACCEPT

# 6. 写入防火墙规则配置文件

/etc/init.d/iptables save

service iptables restart

:wq

chmod 700 firewall.sh

改一下权限,避免文件被人恶意修改

./firewall.sh

执行命令后,

service iptables restart

重启iptables 防火墙,也可以把# service iptables restart加到firewall.sh 里面的最后地方。这样只要实行./firewall.sh就可以了。

查询防火墙状态

service iptables status

关闭防火墙

1)临时生效,重启后复原

开启:service iptables start

关闭:service iptables stop

2)永久性生效,重启后不会复原

开启:chkconfig iptables on

关闭:chkconfig iptables off

查看配置文件

vim /etc/sysconfig/iptables

linux防火墙iptables配置(Linux下多网段Nat实现与应用)

Linux下多网段Nat实现与应用 Iptables/netfilter是一个可以替代价格昂贵的商业防火墙的网络安全保护解决方案,能够实现数据包过滤、数据包重定向和网络地址转换(NAT)等多种功能。 准备: 操作系统安装光盘:CentOS-6.1版本 硬件要求:dell poweredge 410(需双网卡) 实现功能: 192.168.11.0/24、192.168.10.0/24网段通过防火墙NAT转换访问外网,并实现数据包过滤。 过程: 步骤#1. 安装操作系统(最基本安装即可) 步骤#2. 设置网卡地址 外网eth0 IP:xx.xx.xx.xx 内网eth1 IP:172.16.1.254 网卡路径:/etc/sysconfig/network-scripts DEVICE=eth0 HWADDR=00:0e:0c:3a:74:c4 NM_CONTROLLED=yes ONBOOT=yes TYPE=Ethernet BOOTPROTO=none IPV6INIT=no USERCTL=no IPADDR=xx.xx.xx.xx NETMASK=255.255.255.252 DEVICE=eth1 HWADDR=00:0e:0c:3a:74:c4 NM_CONTROLLED=yes ONBOOT=yes TYPE=Ethernet BOOTPROTO=none IPV6INIT=no USERCTL=no IPADDR=172.16.1.254 NETMASK=255.255.255.0 步骤#3. 添加路由 把路由写到 /etc/rc.d/rc.local文件里,这样每次启动就不用重新设置了。 route add -net 172.16.1.0 netmask 255.255.255.0 gw 172.16.1.1 route add -net 192.168.11.0 netmask 255.255.255.0 gw 172.16.1.1 route add -net 192.168.10.0 netmask 255.255.255.0 gw 172.16.1.1 route add default gw 60.190.103.217 172.16.1.1是交换机与Linux的内网网卡接口的地址

IPTABLES 规则(Rules)

二、IPTABLES 规则(Rules)
牢记以下三点式理解 iptables 规则的关键:
? ? ?
Rules 包括一个条件和一个目标(target) 如果满足条件,就执行目标(target)中的规则或者特定值。 如果不满足条件,就判断下一条 Rules。
目标值(Target Values)
下面是你可以在 target 里指定的特殊值: ACCEPT – 允许防火墙接收数据包 ? DROP – 防火墙丢弃包 ? QUEUE – 防火墙将数据包移交到用户空间 ? RETURN – 防火墙停止执行当前链中的后续 Rules, 并返回到调用链(the calling chain)中。 如果你执行 iptables --list 你将看到防火墙上的可用规则。 下例说明当前系统没 有定义防火墙,你可以看到,它显示了默认的 filter 表,以及表内默认的 input 链, f orward 链, output 链。 # iptables -t filter --list Chain INPUT (policy ACCEPT) target prot opt source destination
?
Chain FORWARD (policy ACCEPT) target prot opt source Chain OUTPUT (policy ACCEPT) target prot opt source 查看 mangle 表: # iptables -t mangle --list 查看 NAT 表: # iptables -t nat --list 查看 RAW 表:
destination
destination
# iptables -t raw --list /!\注意:如果不指定-t 选项,就只会显示默认的 filter 表。因此,以下两种命令形 式是一个意思: # iptables -t filter --list (or) # iptables --list 以下例子表明在 filter 表的 input 链, forward 链, output 链中存在规则:

iptables防火墙架构实验报告

iptables防火墙架构实验报告 班级:10网工三班学生姓名:谢昊天学号:1215134046 实验目的和要求: 1、熟悉和掌握TCP/IP协议的基础概念和方法; 2、掌握防火墙的概念、功能分类及实现方法; 3、掌握Linux系统防火墙和基于iptables的防火墙的配置方法。 4、参考课本课本P201,图9-2,完整实现SNAT的功能。 实验内容与分析设计: 防火墙在实施安全的过程中是至关重要的。一个防火墙策略要符合四个目标,而每个目标通常都不是一个单独的设备或软件来实现的。大多数情况下防火墙的组件放在一起使用以满足公司安全目的需求。防火墙要能满足以下四个目标: 1> 实现一个公司的安全策略 防火墙的主要意图是强制执行你的安全策略,比如你的安全策略需要对MAIL服务器的SMTP流量做限制,那么你要在防火墙上强制这些策略。 2> 创建一个阻塞点 防火墙在一个公司的私有网络和分网间建立一个检查点。这种实现要求所有的流量都要经过这个检查点。一旦检查点被建立,防火墙就可以监视,过滤和检查所有进出的流量。网络安全中称为阻塞点。通过强制所有进出的流量都通过这些检查点,管理员可以集中在较少的地方来实现安全目的。 3> 记录internet活动 防火墙还能强制记录日志,并且提供警报功能。通过在防火墙上实现日志服务,管理员可以监视所有从外部网或互联网的访问。好的日志是适当网络安全的有效工具之一。 4> 限制网络暴露 防火墙在你的网络周围创建了一个保护的边界。并且对于公网隐藏了内部系统的一些信息以增加保密性。当远程节点侦测你的网络时,他们仅仅能看到防火墙。远程设备将不会知道你内部网络的布局以及都有些什么。防火墙提高认证功能和对网络加密来限制网络信息的暴露。通过对所能进入的流量进行检查,以限制从外部发动的攻击。

利用Iptables实现网络黑白名单防火墙怎么设置

利用Iptables实现网络黑白名单防火墙怎么设置 防火墙主要由服务访问规则、验证工具、包过滤和应用网关4个部分组成,防火墙就是一个位于计算机和它所连接的网络之间的软件或硬件。这篇文章主要介绍了详解Android 利用Iptables实现网络黑白名单(防火墙),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧 具体步骤 二、Iptables网络黑白名单(防火墙)实现细节 因为考虑到一些权限的问题所以在实现方法上采用的是创建一个systemserver来运行这些方法。并提供出manager到三方应用,这样在调用时可以排除一些权限的限制。同时本文只是做一个简单的参考概述,所以在后文中只提供了增加黑白名单的方法和iptables规则,并没有提供相应的删除规则等,原理类似大家可自行补充添加。

2.1、创建systemserver 2.1.1、在/system/sepolicy/service.te中添加 type fxjnet_service, system_api_service, system_server_service, service_manager_type; 2.2.2、在/system/sepolicy/service_contexts中添加如下, fxjnet u:object_r:fxjnet_service:s0 2.2.3、在frameworks/base/core/java/android/content/Context.java中添加 也可以不添加这个,只不过为了后面调用方便所以添加了。如果跳过此步,那么后面出现Context.FXJNET_SERVICE的地方都用字串代替即可。 public static final String FXJNET_SERVICE="fxjnet";

2018Linux防火墙iptables配置详解

2018-Linux防火墙iptables配置详解 一、开始配置 我们来配置一个filter表的防火墙. (1)查看本机关于IPTABLES的设置情况 [root@tp ~]# iptables -L -n Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination Chain RH-Firewall-1-INPUT (0 references) target prot opt source destination ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0 icmp type 255 ACCEPT esp -- 0.0.0.0/0 0.0.0.0/0 ACCEPT ah -- 0.0.0.0/0 0.0.0.0/0 ACCEPT udp -- 0.0.0.0/0 224.0.0.251 udp dpt:5353 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:631 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:80 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:25 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited 可以看出我在安装linux时,选择了有防火墙,并且开放了22,80,25端口. 如果你在安装linux时没有选择启动防火墙,是这样的 [root@tp ~]# iptables -L -n Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination 什么规则都没有. (2)清除原有规则. 不管你在安装linux时是否启动了防火墙,如果你想配置属于自己的防火墙,那就清除现在filter的所有规则. [root@tp ~]# iptables -F清除预设表filter中的所有规则链的规则 [root@tp ~]# iptables -X清除预设表filter中使用者自定链中的规则 我们在来看一下

Linux6 防火墙配置

linux配置防火墙详细步骤(iptables命令使用方法) 通过本教程操作,请确认您能使用linux本机。如果您使用的是ssh远程,而又不能直接操作本机,那么建议您慎重,慎重,再慎重! 我们来配置一个filter表的防火墙. (1)查看本机关于IPTABLES的设置情况 [root@tp ~]# iptables -L -n Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination Chain RH-Firewall-1-INPUT (0 referenc es) target prot opt source destination ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0 icmp type 255 ACCEPT esp -- 0.0.0.0/0 0.0.0.0/0 ACCEPTah--0.0.0.0/00.0.0.0/0 ACCEPTudp--0.0.0.0/0224.0.0.251udpdpt:5353 ACCEPTudp--0.0.0.0/00.0.0.0/0udpdpt:631 ACCEPTall--0.0.0.0/00.0.0.0/0stateRELATED,ESTABLISHED ACCEPTtcp--0.0.0.0/00.0.0.0/0stateNEWtcpdpt:22 ACCEPTtcp--0.0.0.0/00.0.0.0/0stateNEWtcpdpt:80 ACCEPTtcp--0.0.0.0/00.0.0.0/0stateNEWtcpdpt:25 REJECTall--0.0.0.0/00.0.0.0/0reject-withicmp-host-prohibited

iptables的详细中文手册

一句一句解说 iptables的详细中文手册 (2009-06-02 22:20:02) 总览 用iptables -ADC 来指定链的规则,-A添加-D删除-C 修改 iptables - [RI] chain rule num rule-specification[option] 用iptables - RI 通过规则的顺序指定 iptables -D chain rule num[option] 删除指定规则 iptables -[LFZ] [chain][option] 用iptables -LFZ 链名[选项] iptables -[NX] chain 用-NX 指定链 iptables -P chain target[options] 指定链的默认目标 iptables -E old-chain-name new-chain-name -E 旧的链名新的链名 用新的链名取代旧的链名 说明 Iptalbes 是用来设置、维护和检查Linux内核的IP包过滤规则的。 可以定义不同的表,每个表都包含几个内部的链,也能包含用户定义的链。每个链都是一个规则列表,对对应的包进行匹配:每条规则指定应当如何处理与之相匹配的包。这被称作'target'(目标),也可以跳向同一个表内的用户定义的链。 TARGETS 防火墙的规则指定所检查包的特征,和目标。如果包不匹配,将送往该链中下一条规则检查;如果匹配,那么下一条规则由目标值确定.该目标值可以是用户定义的链名,或是某个专用值,如ACCEPT[通过], DROP[删除], QUEUE[排队], 或者RETURN[返回]。 ACCEPT 表示让这个包通过。DROP表示将这个包丢弃。QUEUE表示把这个包传递到用户空间。RETURN表示停止这条链的匹配,到前一个链的规则重新开始。如果到达了一个内建的链(的末端),或者遇到内建链的规则是RETURN,包的命运将由链准则指定的目标决定。 TABLES 当前有三个表(哪个表是当前表取决于内核配置选项和当前模块)。 -t table 这个选项指定命令要操作的匹配包的表。如果内核被配置为自动加载模块,这时若模块没有加载,(系统)将尝试(为该表)加载适合的模块。这些表如下:filter,这是默认的表,包含了内建的链INPUT(处理进入

Linux防火墙 iptables详细介绍

周旭光unixzhou@https://www.wendangku.net/doc/f387538.html, Linux防火墙iptables 周旭光 unixzhou@https://www.wendangku.net/doc/f387538.html, 2011年5月10日 目录 1、Linux防火墙基础 (2) 1、iptables的规则表、链结构 (2) 1.1 规则表 (2) 1.2 规则链 (2) 2、数据包的匹配流程 (2) 2.1 规则表之间的优先级 (2) 2.2 规则链之间的优先级 (2) 2.3 规则链内部各防火墙规则之间的优先顺序 (3) 2、管理和设置iptables规则 (3) 2.1 iptables的基本语法格式 (3) 2.2 管理iptables规则 (3) iptables命令的管理控制项 (3) 2.3 条件匹配 (5) 2.3.1 通用(general)条件匹配 (5) 2.3.2 隐含(implicit)条件匹配 (6) 2.3.3 显示(explicit)条件匹配 (6) 2.4 数据包控制 (7) 3、使用防火墙脚本 (8) 3.1 导出、导入防火墙规则 (8) 3.2 编写防火墙脚本 (8)

1、Linux防火墙基础 1、iptables的规则表、链结构 1.1 规则表 iptables管理4个不同的规则表,其功能由独立的内核模块实现。 filter表:包含三个链INPUT , OUTPUT , FORWARD nat表:PREROUTING , POSTROTING , OUTPUT mangle表:PREROUTING , POSTROUTING , INPUT , OUTPUT , FORWARD raw表:OUTPUT , PREROUTING 1.2 规则链 INPUT链当收到访问防火墙本机的数据包(入站)时,应用此链中的规则 OUTPUT链当防火墙本机向外发送数据包(出站)时,应用此链中的规则 FORWARD链收到需要通过防火墙发送给其他地址的数据包,应用此链 PREROUTING链做路由选择之前,应用此链 POSTROUTING链对数据包做路由选择之后,应用此链中的规则 2、数据包的匹配流程 2.1 规则表之间的优先级 Raw mangle nat filter 2.2 规则链之间的优先级 入站数据流向:来自外界的数据包到达防火墙,首先呗PREROUTING规则链处理(是否被修改地址),之后会进行路由选择(判断该数据包应该发往何处),如果数据包的目标地址是防火墙本机,那么内核将其传递给INPUT 链进行处理,通过以后再交给上次的应用程序进行响应 转发数据流向:来自外界的数据包到达防火墙后,首先被PREROUTING规则链处理,之后进行路由选择,如果数据包的目标地址是其他外部地址,则内核将其传递给FPRWARD链进行处理,然后再交给POSTROUTIING 规则链(是否修改数据包的地址等)进行处理。 出站数据流向:防火墙本身向外部地址发送数据包,首先被OUTPUT规则链处理,之后进行路由选择,然后

iptables配置

netfilter/iptables IP 信息包过滤系统是一种功能强大的工具,可用于添加、编辑和除去规则,这些规则是在做信息包过滤决定时,防火墙所遵循和组成的规则。这些规则存储在专用的信息包过滤表中,而这些表集成在 Linux 内核中。在信息包过滤表中,规则被分组放在我们所谓的链(chain)中。 虽然 netfilter/iptables IP 信息包过滤系统被称为单个实体,但它实际上由两个组件netfilter 和 iptables 组成。 netfilter 组件也称为内核空间(kernelspace),是内核的一部分,由一些信息包过滤表组成,这些表包含内核用来控制信息包过滤处理的规则集。 iptables 组件是一种工具,也称为用户空间(userspace),它使插入、修改和除去信息包过滤表中的规则变得容易。 iptables包含4个表,5个链。其中表是按照对数据包的操作区分的,链是按照不同的Hook点来区分的,表和链实际上是netfilter的两个维度。 4个表:filter,nat,mangle,raw,默认表是filter(没有指定表的时候就是filter表)。表的处理优先级:raw>mangle>nat>filter。 filter:一般的过滤功能 nat:用于nat功能(端口映射,地址映射等) mangle:用于对特定数据包的修改 raw:有限级最高,设置raw时一般是为了不再让iptables做数据包的链接跟踪处理,提高性能 5个链:PREROUTING,INPUT,FORWARD,OUTPUT,POSTROUTING。 PREROUTING:数据包进入路由表之前

(完整版)linux下各种服务进程之iptables详解

linux下IPTABLES配置详解 开始配置 我们来配置一个filter表的防火墙. (1)查看本机关于IPTABLES的设置情况 [root@tp ~]# iptables -L -n Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination Chain RH-Firewall-1-INPUT (0 references) target prot opt source destination ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0 icmp type 255 ACCEPT esp -- 0.0.0.0/0 0.0.0.0/0 ACCEPT ah -- 0.0.0.0/0 0.0.0.0/0 ACCEPT udp -- 0.0.0.0/0 224.0.0.251 udp dpt:5353 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:631 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:80 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:25 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited 可以看出我在安装linux时,选择了有防火墙,并且开放了22,80,25端口. 如果你在安装linux时没有选择启动防火墙,是这样的 [root@tp ~]# iptables -L -n Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination

Linux 防火墙iptables 禁止某些 IP访问

Linux 防火墙iptables 禁止某些 IP 访问 https://www.wendangku.net/doc/f387538.html, 编辑:phper 来源:转载 在Linux下,使用ipteables来维护IP规则表。要封停或者是解封IP,其实就是在IP规则表中对入站部分的规则进行添加操作。 方法一,过滤一些IP访问本服务器 要封停一个IP,使用下面这条命令: 代码如下复制代码iptables -I INPUT -s ***.***.***.*** -j DROP 要解封一个IP,使用下面这条命令: 代码如下复制代码iptables -D INPUT -s ***.***.***.*** -j DROP 参数-I是表示Insert(添加),-D表示Delete(删除)。后面跟的是规则,INPUT 表示入站,***.***.***.***表示要封停的IP,DROP表示放弃连接。 此外,还可以使用下面的命令来查看当前的IP规则表: 代码如下复制代码iptables -list 比如现在要将123.44.55.66这个IP封杀,就输入: 代码如下复制代码iptables -I INPUT -s 123.44.55.66 -j DROP 要解封则将-I换成-D即可,前提是iptables已经有这条记录。如果要想清空封掉的IP地址,可以输入:

代码如下复制代码iptables -flush 要添加IP段到封停列表中使用下面的命令: 代码如下复制代码iptables -I INPUT -s 121.0.0.0/8 -j DROP 其实也就是将单个IP封停的IP部分换成了Linux的IP段表达式。关于IP段表达式网上有很多详细解说的,这里就不提了。 方法二,使用脚本来进行屏蔽 1.先下载ip地址文件 我们先到IPdeny下载以国家代码编制好的ip地址列表,比如下载cn.zone: wget https://www.wendangku.net/doc/f387538.html,/ipblocks/data/countries/cn.zone 现在有了国家的所有IP地址,要想屏蔽这些IP 就很容易了,直接写个脚本逐行读取cn.zone文件并加入到iptables中: iptables屏蔽某个国家ip段 代码如下复制代码#!/bin/bash # Block traffic from a specific country # written by https://www.wendangku.net/doc/f387538.html, COUNTRY = "cn" IPTABLES = /sbin/iptables EGREP = /bin/egrep if [ "$(id -u)" != "0" ]; then echo "you must be root" 1>&2 exit 1 fi resetrules() {

RHEL5配置iptables防火墙

RHEL5.4配置iptables防火墙 关于linux下面配置iptables防火墙的讨论, Iptables与netfilter模块关系 在linux下面的防火墙并不是一个服务,而是一个加载到内核中的模块。这个模块就是netfilter模块(网络过滤模块),我们使用iptables工具来管理这个netfilter 模块。 Iptables的模式 Enabled 默认拒绝所有 Disabled 默认允许所有 我们可以通过system-config-securitylevel这条命令通过图形界面修改, 这里可以选择enabled模式和disabled模式。 关于netfilter表和netfilter链

这张图就很清楚的显示了netfilter表和netfilter链。 Filter table里面有三条链: INPUT 目的地是访问防火墙本身的数据包 OUTPUT 源地址是防火墙出去的数据包 FORWARD 数据包的源地址和目的地址都不是防火墙的数据包Nat table里面也有三条链: OUTPUT 数据包在出网关之前被丢给代理服务器PREROUTING 做目的NAT转换(路由判断之前) POSTROUTING 做源NAT转换(路由判断之后) Mangle talbe里面有五条链: INPUT OUTPUT FORWARD PREROUTING POSTROUTING 关于iptables数据包的流程 这张图就显示了整个iptables防火墙在工作时候的数据包流程。 关于iptables的访问控制规则

当数据包要经过iptables防火墙,首先读取第一条策略,如果第一条策略匹配,则执行,不在读取下面的策略。如果第一条策略没有匹配,则读取第二条策略,如果匹配到第二条策略,则执行,不在读取下面的策略。如果数据包没有匹配到任何策略,则匹配默认策略。默认策略是允许或者拒绝可以由用户自己定义。 关于iptables的匹配规则 -s 192.168.0.0/24 源地址为192.168.0.0/24的网段 -d 192.168.0.10 目的地址为192.168.0.10的主机 -i eth0 从eht0进来的数据包 -o eth0 从eth0出去的数据包 ‘!’ 192.168.0.10 反向选择 -p tcp --dport 80 协议的类型,目标端口是80 -p udp --sport 53 协议类型,源端口是53 关于iptables的规则目标 DROP 拒绝 ACCEPT 允许 LOG 日志,匹配到这条策略后,还是会继续往下面读取策略。REJECT 拒绝,但是会给用户回应的信息。 关于iptables基本链操作 Iptables -L 查看iptables table(默认显示filter table) Iptables -nL 以IP地址的方式显示 Iptables -L --line-numbers 显示策略条目的行号 Iptables -vL 查看iptables table(显示更具体的信息) Iptables -A 追加iptables的策略条目(默认会追加策略的最后面) Iptables -I 插入iptables的策略条目(默认插入到策略的最前面) Iptables -I INPUT 2 插入成iptables策略条目的第二条策略 Iptables -D INPUT 2 删除iptables策略条目的第二条策略

LINUX下防火墙iptables的日志管理心得

LINUX下防火墙iptables的日志管理心得 LINUX下防火墙iptables的日志管理心得 iptables的日志(log)由syslogd纪录和管理。初始存放在/var/log/messages里面。自动采取循环纪录(rotation)的方式记录。但是由于混在messages中,对于管理和监视产生了不便。这里,我简单介绍一下我的iptables日志的管理,循环,和自动报告生成的经验: 由于iptables是linux的内核本身的.功能,由dmesg或syslogd 的facility结合内核管理。iptables的日志的初始值是[warn(=4)],需要修改syslog.conf。 --------------------------------------------------------------- : kern.=warn/var/log/kern-warn-log←可以自己决定文件名 --------------------------------------------------------------- 这里,facility在[kern]是priority的[warn],日志将被记录在/var/log/kern-warn-log。 日志循环的设置方法: 在/etc/logrotated.d/syslog中追加以下语句: ------------------------------------------------------- 1/ 3

------- : /var/log/kern-warn-log{ rotate50剩余文件数 postrotate /bin/kill-HUP`cat/var/run/syslogd.pid2>/dev/null`2>/dev/null||true endscript } -------------------------------------------------------------- /etc/logrotate.conf的初始设置是每周一进行一次log的循环。所以每周的日志将被存在/var/log/kern-warn-log中,之前的旧日志将被顺次存储在kern-warn-log.1-----kern-warn-log.50中。 另外还有一种方法就是通过iptables直接获取日志:(一般不用)#iptables-AINPUT-s127.0.0.1-picmp-jLOG--log-prefix"iptablesicmp-localhost"←保存从eth0进入的packet纪录 #iptables-AINPUT-s127.0.0.1-picmp-jDROP←废除从eth0进入的packet纪录 这样一来,/var/log/kern-warn-log的内容将如下所示: Sep2310:16:14hostnamekernel:iptablesicmp- 2/ 3

Linux防火墙的配置实例

Linux防火墙的配置实例 我们该如何利用Linux操作系统自带的防火墙来提高网络的管理控制功能呢?具体的来说,我们可以分三步走。一是先在Linux服务器上开一个后门,这个后门是专门给我们网络管理员管理服务器用的。二是把所有的进站、出站、转发站接口都关闭,此时,只有通过我们上面开的后门,管理员才能够远程连接到服务器上,企图任何渠道都不能连接到这台主机上。三是根据我们服务器的用途,把一些需要用到的接口开放出去。 1) 永久性生效,重启后不会复原 开启: chkconfig iptables on 关闭: chkconfig iptables off 2) 即时生效,重启后复原 开启: service iptables start 关闭: service iptables stop 清除原有规则. 不管你在安装linux时是否启动了防火墙,如果你想配置属于自己的防火墙,那就清除现在filter的所有规则. [root@tp ~]# iptables -F 清除预设表filter中的所有规则链的规则 [root@tp ~]# iptables -X 清除预设表filter中使用者自定链中的规则 我们在来看一下 [root@tp ~]# iptables -L -n Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination 什么都没有了吧,和我们在安装linux时没有启动防火墙是一样的.(提前说一句,这些配置就像用命令配置IP一样,重起就会失去作用),怎么保存. [root@tp ~]# /etc/rc.d/init.d/iptables save

linux防火墙iptables常用规则(屏蔽IP地址、禁用ping、协议设置、NAT与转发、负载平衡、自定义链)

linux防火墙iptables常用规则(屏蔽IP地址、禁用ping、协议设置、NAT与转发、负载平衡、自定义链) 一、iptables:从这里开始 删除现有规则 iptables -F (OR) iptables --flush 设置默认链策略 iptables的filter表中有三种链:INPUT, FORWARD和OUTPUT。默认的链策略是ACCEPT,你可以将它们设置成DROP。 iptables -P INPUT DROP iptables -P FORWARD DROP iptables -P OUTPUT DROP 你需要明白,这样做会屏蔽所有输入、输出网卡的数据包,

除非你明确指定哪些数据包可以通过网卡。 屏蔽指定的IP地址 以下规则将屏蔽BLOCK_THIS_IP所指定的IP地址访问本地主机: BLOCK_THIS_IP="x.x.x.x" iptables -A INPUT -i eth0 -s "$BLOCK_THIS_IP" -j DROP (或者仅屏蔽来自该IP的TCP数据包) iptables -A INPUT -i eth0 -p tcp -s "$BLOCK_THIS_IP" -j DROP 允许来自外部的ping测试 iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT 允许从本机ping外部主机 iptables -A OUTPUT -p icmp --icmp-type echo-request -j

iptables命令大全

数据包经过防火墙的路径 图1比较完整地展示了一个数据包是如何经过防火墙的,考虑到节省空间,该图实际上包了三种情况: 来自外部,以防火墙(本机)为目的地的包,在图1中自上至下走左边一条路径。 由防火墙(本机)产生的包,在图1中从“本地进程”开始,自上至下走左边一条路径 来自外部,目的地是其它主机的包,在图1中自上至下走右边一条路径。 图1 如果我们从上图中略去比较少用的mangle表的图示,就有图2所显示的更为清晰的路径图.

图2 禁止端口的实例 禁止ssh端口 只允许在192.168.62.1上使用ssh远程登录,从其它计算机上禁止使用ssh #iptables -A INPUT -s 192.168.62.1 -p tcp --dport 22 -j ACCEPT #iptables -A INPUT -p tcp --dport 22 -j DROP

?禁止代理端口 #iptables -A INPUT -p tcp --dport 3128 -j REJECT ?禁止icmp端口 除192.168.62.1外,禁止其它人ping我的主机 #iptables -A INPUT -i eth0 -s 192.168.62.1/32 -p icmp -m icmp --icmp-type echo-request -j ACCEPT #iptables -A INPUT -i eth0 -p icmp --icmp-type echo-request –j ?DROP 或 #iptables -A INPUT -i eth0 -s 192.168.62.1/32 -p icmp -m icmp --icmp-type 8 -j ACCEPT #iptables -A INPUT -i eth0 -p icmp -m icmp --icmp-type 8 -j DROP 注:可以用iptables --protocol icmp --help查看ICMP类型 还有没有其它办法实现? ?禁止QQ端口 #iptables -D FORWARD -p udp --dport 8000 -j REJECT 强制访问指定的站点

防火墙工具 iptables

Linux firewall 进展过程
Ipchains (Linux 2.2 Kernel). Iptables (Linux 2.4 kernel).
防火墙工具 iptables
防火墙基本上是设定防火墙规则( RULES ) 规范封包的处. iptables 将同的规则集合起,放进同的链( CHAINS ). iptables 的三个内建链 ( Built-in Chains ) 分别是:INPUTOUTPUT 与 FORWARD. iptables 工具主要具备三个 tables, table 中包含 chains, chains 面包 含的就是 rules 和 policies. Iptable 结构示意图

IP datagram 在 Kernel 中处的态图

The IP datagram is received. (1) If the datagram is for this machine, it is processed locally. (2) Forward (3) Datagrams from local processes are sent to the routing software for forwarding to the appropriate interface. (4) The IP datagram is transmitted. (5) Input rule is applied at flow 2. Output rule is applied at flow 4.

iptables系统配置防火墙和NAT功能的实例学习

iptables系统配置防火墙和NAT功能的实例学习 来源: ChinaUnix博客日期:2007.11.01 11:55(共有0条评论) 我要评论 关于Slackware 9.1.0 的配置说明 ********************************************************* * * *******关于防火墙系统恢复操作和启动方法说明******************* * * ********************************************************* 该系统主要作用就是对内部服务器作静态nat映射和端口访问控制。 在防火墙中,系统启动时已经自动启动了以上防火墙脚本,启动位置为:/etc/rc.d/rc.local文件中,sh /etc/rc.d/nat_firewall.sh #在系统启动时自动启动该脚本 如果需要手动启用防火墙和静态nat映射功能,操作以下步骤即可。 cd /etc/rc.d/ ./portnat.sh 如果用户不需要对内部服务器作任何端口控制,只需要作静态nat映射,只要执行以下文件,即可恢复不设防火墙状态。 cd /etc/rc.d/ ./no_firewall.sh ********************************************************** * * ****关于Slackware 9.1.0 系统配置防火墙和NAT功能的配置说明***** ****(nat_firewall.sh) * **********************************************************

CentOS系统中squid透明代理+iptables防火墙详细配置

CentOS系统中squid透明代理+iptables防火墙详细配置 2015-03-02 16:12:04| 分类:http | 标签:|举报|字号大中小订阅 看到很多人都在不停地问iptables+squid做透明代理的问题,鄙人不才,斗胆在此做统一解答。如有任何纰漏还望各位批评指教。=================================== 看到很多人都在不停地问iptables+squid做透明代理的问题,鄙人不才,斗胆在此做统一解答。如有任何纰漏还望各位批评指教。 ===================================================================== 相关资源: https://www.wendangku.net/doc/f387538.html,,左下角有iptables的man,仔细看看。 系统: CentOS4.2,三块网卡,两个内网,一个外网。双至强,2GHz,2GB内存。服务器主要开了squid,sshd,其他的一律闭掉了。 eth0:192.168.100.1 eth1:192.168.168.12 eth2:A.B.C.D ―― 外网地址 ===================================================================== squid设定可以根据自己的情况来,我们假设其端口为3128,在三块网卡上都有监听(不要绑定某一个IP 或网卡)。 /etc/squid/squid.conf http_port 3128 cache_mem 1000 MB cache_swap_low 90 cache_swap_high 95 cache_dirufs /opt/cache/squid 8000 16 256 cache_access_log /var/log/squid/access.log cache_store_log /var/log/squid/store.log dns_nameservers 210.77.192.88 maximum_object_size 409600 KB maximum_object_size_in_memory 64000 KB emulate_httpd_log on ipcache_size 1024 ipcache_low 90 ipcache_high 95 fqdncache_size 1024 forwarded_for off coredump_dir /opt/cache/squid/coredumphttpd_accel_port 80 httpd_accel_host virtual httpd_accel_with_proxy on httpd_accel_single_host off httpd_accel_uses_host_header on

相关文档
相关文档 最新文档