先说明一下环境,这里有四台主机,中间的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. C#中事件流程的简单理解

    C#中事件流程的简单理解 C#中事件基于委托,要理解事件要先理解委托,但是现在我还没想好怎么写委托,如果不懂委托可以先找找委托的文章 事件基于委托,为委托提供了一种发布/订阅机制 一上来就是这句话,很 ...

  2. 【知识点】 C++寄存器优化

    作者:李春港 出处:https://www.cnblogs.com/lcgbk/p/14502076.html 目录 一.前言 二.代码实例 三.volatile作用 一.前言 在c++中什么情况下, ...

  3. JSP, EL, JSTL的使用

    JSP基础指令和语法 回顾 在Jsp页面: 只要是Java代码就会原封不动的输出, 如果是html代码,就会转义为 out.write("<html>\r\n") 这样 ...

  4. 2018.8.30 nowcoder oi赛制测试1

    2018.8.30 nowcoder oi赛制测试1 普及组难度,发现了一些问题 A 题目大意:求斐波那契数列\(f(k-1)f(k+1)-f(k)^2\),范围极大 打表可得规律 其实是卡西尼恒等式 ...

  5. VMware 虚拟机安装(使用CentOS镜像)

    (1)启动虚拟机,点击"文件"-->"新建虚拟机",选择安装类型,推荐"典型".       (2)选择稍后安装操作系统       ...

  6. 2019 GDUT Rating Contest II : Problem G. Snow Boots

    题面: G. Snow Boots Input file: standard input Output file: standard output Time limit: 1 second Memory ...

  7. polay计数原理

    公式: Burnside引理: 1/|G|*(C(π1)+C(π2)+C(π3)+.....+C(πn)): C(π):指不同置换下的等价类数.例如π=(123)(3)(45)(6)(7),X={1, ...

  8. MongoDB 那些事(一文以蔽之)

    前言 身边一直都有小伙伴在问:MongoDB到底是什么?它有到底什么特性?有什么与众不同?在什么情况下使用MongoDB最合适?以什么样的姿势是最好的?难道就一定要用吗?....说实话,这些问题都问到 ...

  9. 阿里云 RTC QoS 弱网对抗之变分辨率编码

    本文为 QoS 弱网优化系列的第二篇 作者|安基程.田伟峰 审校| 泰一 视频编码中的变分辨率问题及解决 变分辨率在弱网场景的实际应用中非常常见,网络状况不好的时候降低分辨率可以降低码率,减少块效应, ...

  10. Python基础(七):字符串的使用(上)

    什么是字符串? 字符串该如何定义呢?通俗的说:字符串就是一系列的字符. 创建字符串的3种方式 单引号创建 >>> a = 'I am a student' >>> ...