先说明一下环境,这里有四台主机,中间的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. java内存区域的划分

    前言 之前我们探讨过一个.class文件是如何被加载到jvm中的.但是jvm内又是如何划分内存的呢?这个内被加载到了那一块内存中?jvm内存划分也是面试当中必被问到的一个面试题. 什么是JVM内存区域 ...

  2. 2.2 Python3基础-基本数据类型

    >>返回主目录 源代码 # 基本数据类型 # Number类型:如何查看变量的数据类型? name = 'Portos' print(type(name)) # 结果:str print( ...

  3. 聊一聊和Nacos 2.0.0对接那些事

    前言 nacos 2.0.0 已经发布了 alpha1, alpha2 和 beta 三个版本了,部分测试报告也已经出来了. Nacos2.0.0-ALPHA2 服务发现性能测试报告 Nacos 2. ...

  4. 翻译:《实用的Python编程》04_02_Inheritance

    目录 | 上一节 (4.1 类) | 下一节 (4.3 特殊方法) 4.2 继承 继承(inheritance)是编写可扩展程序程序的常用手段.本节对继承的思想(idea)进行探讨. 简介 继承用于特 ...

  5. MyBatis(四):自定义持久层框架优化

    本文所有代码已上传至码云:https://gitee.com/rangers-sun/mybatis 修改IUserDao.UserMapper.xml package com.rangers; im ...

  6. LNMP配置——PHP安装

    一.下载 #cd /usr/local/src //软件包都放在这里方便管理 #wget http://cn2.php.net/distributions/php-5.6.30.tar.gz 二.解压 ...

  7. Mysql给外网IP授权访问

    GRANT ALL PRIVILEGES ON *.* TO 'root'@'58.221.44.174' IDENTIFIED BY 'njqt123456' WITH GRANT OPTION; ...

  8. IDEA的注册方式

    http://idea.lanyus.com/ 使用前请将"0.0.0.0 account.jetbrains.com"添加到hosts文件中 hosts文件在C:\Windows ...

  9. python-类的多态的理解

    了解多态 多态指的是一类事物有多种形态 .定义:多态是一中使用对象的方式,更容易编写出通用的代码,做出通用的编程,一适应需求的不断变化 实现步骤: 1.定义父类,并提供公共方法 2.定义子类,并重写父 ...

  10. 攻防世界 reverse 进阶5-7

    5.re-for-50-plz-50  tu-ctf-2016 流程很简单,异或比较 1 x=list('cbtcqLUBChERV[[Nh@_X^D]X_YPV[CJ') 2 y=0x37 3 z= ...