先说明一下环境,这里有四台主机,中间的Centos充当防火墙。右上角的win XP和右下角的Rhel7充当服务器,最左边的win7充当主机。四者之间的网卡都已经配置好。而且我们已经在Centos6.5上开启了端口转发功能。

  • echo  1 > /proc/sys/net/ipv4/ip_forward  (临时开启)
  • sysctl  -w  net.ipv4.ip_forward=1  (临时开启)
  • vim  /etc/sysctl.conf  , 将net.ipv4.ip_forward=0 改为 =1,然后 sysctl -p   /etc/sysctl.conf 使之生效 (永久开启IP转发)

防火墙开启了IP转发功能后,然后清空iptables里面的所有规则,放行所有。win7、winXP、Rhel7都把防火墙给关了,然后四者之间就可以相互通信了。

配置防火墙使之禁止访问 ftp 服务

我们在win xp上开启ftp服务,通过win7 和 Rhel7 可以 ftp WinXP。

现在我们要配置防火墙,使之禁止FTP服务的流量经过。因为Win7要想FTP访问WinXP,流量先经过防火墙,然后再由防火墙转发。所以我们对防火墙的 filter 表的 FORWARD 链进行配置,使之拒绝FTP流量经过

iptables -t filter -A FORWARD -p tcp --dport 21 -j DROP

可以看到,filter表中的FORWARD链已经加了一条拒绝TCP的21号端口通过的 规则了。然后我们再从Win7 FTP WinXP,可以看到,已经不能FTP了。

配置防火墙使得指定网段的才可以访问FTP服务

我们在防火墙上配置,使得Rhel7的才可以访问FTP服务,而Win7不能访问FTP服务。

iptables -t filter -A FORWARD -s 10.0.0.2  -p tcp --dport 21  -j ACCEPT   //filter表的FORWARD链允许源地址10.0.0.2的主机,目的端口21号的流量
iptables -t filter -A FORWARD -s 192.168.1.2 -p tcp --dport 21 -j DROP //filter表的FORWAARD链拒绝源地址192.168.1.2的主句,目的端口21号的流量

可以看到,filter表中的FORWARD链默认拒绝所有流量经过,放行源地址分别为10.0.0.0/24和20.0.0.0/24的ftp服务。

禁止PING

在防火墙上配置丢弃 icmp 协议的 request 包,也就是icmp-type为8的包

iptables -A FORWARD -p icmp --icmp-type 8 -j DROP

可以看到,已经ping不通了,Windows系统显示请求超时,而Linux系统则发不出去包

而当我们配置的是拒绝icmp协议的包通过

iptables -A FORWARD -p icmp --icmp-type 8 -j REJECT

拒绝的话,windows系统和Linux系统都是显示目标端口不可达。

按网段禁止Ping

配置防火墙,丢弃192.168.1.0/24网段的icmp请求包,允许10.0.0.0/24网段的icmp请求包

iptables -A FORWARD -s 192.168.1.0/24 -p icmp --icmp-type 8 -j DROP
iptables -A FORWARD -s 10.0.0.0/24 -p icmp --icmp-type 8 -j ACCEPT

可以看到,Win7已经不能ping了,而Rhel7可以ping

禁止Telnet服务

其他的和上面的一模一样,只是过滤规则的端口改了

iptables -A FORWARD -p tcp --dport 23 -j DROP

按网段禁止Telnet服务

iptables -A FORWARD  -s  192.168.1.0/24  -p tcp --dport 23  -j DROP
iptables -A FORWARD -s 20.0.0.0/24 -p tcp --dport 24 -j ACCEPT

Iptables防火墙实验的更多相关文章

  1. Iptables防火墙(SNAT和DNAT)

     1.SNAT:源地址转换 实现内网访问外网,修改IP地址,使用POSTROUTING 命令:iptables  -t  nat  -A POSTROUTING  -s  192.168.1.10/2 ...

  2. centos6.5下系统编译定制iptables防火墙扩展layer7应用层访问控制功能及应用限制QQ2016上网

    iptables防火墙扩展之layer7应用层访问控制 概述: iptables防火墙是工作在网络层,针对TCP/IP数据包实施过滤和限制,属于典型的包过滤防火墙.以基于网络层的数据包过滤机制为主,同 ...

  3. 2-10~2-11 配置iptables防火墙增强服务 selinux简单讲解

    学习一个服务的过程: 1.此服务器的概述:名字,功能,特点,端口号 2.安装 3.配置文件的位置 4.服务启动关闭脚本,查看端口 5.此服务的使用方法 6.修改配置文件,实战举例 7.排错(从下到上, ...

  4. 四十七.iptables防火墙 filter表控制 扩展匹配 nat表典型应用

    1.iptables基本管理 关闭firewalld,开启iptables服务 查看防火墙规则 追加.插入防火墙规则 删除.清空防火墙规则   1.1 关闭firewalld,启动iptables服务 ...

  5. iptables防火墙入门

    一.iptables基本管理 iptables运行前提:关闭firewalld防火墙再开启iptables,不然造成冲突. 基本指令: 1.部署iptables服务 yum –y install ip ...

  6. iptables 防火墙(上)

    iptables 防火墙(上) 1. 防火墙概述 1.1 概念与作用 网络中的防火墙是一种将内部网络和外部网络分开的方法,是一种隔离技术.防火墙在内网与外网通信时进行访问控制,依据所设置的规则对数据包 ...

  7. 深入理解iptables防火墙

    0x00 Linux 安全性和 netfilter/iptables Linux 因其健壮性.可靠性.灵活性以及好象无限范围的可定制性而在 IT 业界变得非常受欢迎.Linux 具有许多内置的能力, ...

  8. CentOS系统配置 iptables防火墙

    阿里云CentOS系统配置iptables防火墙   虽说阿里云推出了云盾服务,但是自己再加一层防火墙总归是更安全些,下面是我在阿里云vps上配置防火墙的过程,目前只配置INPUT.OUTPUT和FO ...

  9. 关闭SELinux和iptables防火墙

    1.关闭SELinux: 编辑SELinux配置文件: [root@Redis selinux]# vim /etc/selinux/config 修改SELINUX配置项为disable SELIN ...

随机推荐

  1. 02----python入门----基本数据类型

    关于数据分类依据 一.数字型(int) Python可以处理任意大小的正负整数,但是实际中跟我们计算机的内存有关,在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,在64位系 ...

  2. Springboot的监控

    目录 Micrometer 计数器 仪表 摘要 计时器 Prometheus grafana 保存后我们就能在dashboard上看得我我们的监控指标了参考 Spring Boot有个子项目Sprin ...

  3. Redis 高并发带来的一些问题

    前言 本文讲述Redis在遇到高并发时的一些问题.即遇到大量请求时需要思考的点,如缓存穿透 缓存击穿 缓存雪崩 热key处理.一般中小型传统软件企业,很难碰到这个问题.如果有大并发的项目,流量有几百万 ...

  4. 超详细Linux新手快速入门(一)——Linux的介绍安装以及虚拟机的介绍安装

    一.Linux的介绍 1.Linux和Windows的比较  Linux是一款操作系统,其性能稳定,因其防火墙组件高效安全.简单易配置,所以获得了追求速度和安全的一些企业和人群的青睐.与我们日常所熟知 ...

  5. pyspider的环境安装

    第一:确认自己的Python版本3.6.x(因该版本与pyspider较为适应,其他版本易出错) 如果不是3.6版本的,且想将版本替换成3.6版本的有以下处理方法: 1.再装一个3.6版本python ...

  6. WM_CLOSE WM_QUIT WM_DESTROY 三者的区别

    一 个窗口或者应用程序应该被关闭时发出WM_CLOSE消息,当接收到WM_CLOSE消息时,如果你愿意,向用户提出是否真的退出.你知道让用户作确认或 有错误出现或有什么应该注意的事情发生的时候,往往弹 ...

  7. 10、Spring教程之整合MyBatis

    1.步骤 1.导入相关jar包 junit <dependency> <groupId>junit</groupId> <artifactId>juni ...

  8. SynchronousQueue核心源码分析

    一.SynchronousQueue的介绍 SynchronousQueue是一个不存储元素的阻塞队列.每一个put操作必须等待一个take操作,否则不能继续添加元素.SynchronousQueue ...

  9. vue 快速入门 系列 —— 侦测数据的变化 - [vue 源码分析]

    其他章节请看: vue 快速入门 系列 侦测数据的变化 - [vue 源码分析] 本文将 vue 中与数据侦测相关的源码摘了出来,配合上文(侦测数据的变化 - [基本实现]) 一起来分析一下 vue ...

  10. OOP第一次博客作业

    一.关于Java&&面向对象 本学期刚开始进行Java的学习,也是刚开始了解面向对象,目前也就学习了三四周的样子,期间进行了三次作业,我感觉到Java的语法和c语言中的有许多相似之处, ...