Iptables实验

内容#

本文源自课程实验,实验内容如下:
在进行IP-Table设置前需要搭建实验环境,实验所需的环境配置如下图所示:

其中,1号机、4号机为内网计算机,2号机为网关,3号机为外网计算机。实验环境搭建成功之后,需要完成下面的实验步骤:
Part A
1、在2号机上用NAT表的POSTROUTING链配置NAT
1)伪装(MASQUERADE)包使内网的IP地址对外网隐藏
2)1号机和4号机,只允许通过SSH连接到外网
2、此步骤的NAT配置在整个实验过程中持续有效

Part B
为来自或者到达2号机(网关)的包编写规则,到达以下目的:
1、允许来自或者到达2号机的SSH连接
2、阻断来自或者到达2号机的其他所有通信
3、提示:Part B需要INPUT和OUTPUT链,但不需要FORWARD链

Part C
1、清除Part B中filter表设置的规则
2、仅允许1号机(不允许4号机)向外网中的3号主机发起SSH通信
3、阻断其他所有通信
4、提示:Part C需要FORWARD,INPUT和OUTPUT链

说明#

环境配置#

网络拓扑如下#


实验中m1 m2 m4都为虚拟机中装的ubuntu系统,m1,m4作为内网计算机,m2作为网关,m3为自己的本机作为外网主机

对m2的配置#

M4配置同m1,只是ip不同
新增网卡

对新增的网卡进行配置

查看详细配置情况

对m1配置#



查看配置情况

验证配置情况#

1和2 能相互Ping通

2号能和外网相互Ping通


1号不能和外网Ping通

Part a#

现在本机用winssd打开ssh服务,并建立一个虚拟账户guoguo

开启ssh服务

接下来操作需要高权限,换为root用户

清空filter表的所有链
清空nat表的所有链
修改filter表的默认规则,这里图中最后一行配置错误,之后进行了修改

修改如下

配置postrouting链,并保存

配置转发


验证#

进行ssh连接


查看连接Ip不是内网ip10.0.0.2,实现了ip隐藏

Part b#

修改filter表,禁止转发链,允许2号Ping和ssh

验证#

2ping外网

外网ping2

2号连接ssh

2号进行其它连接失败

Part c#

清空filter表的设置

只允许1号向外网ssh连接

验证#

1号连接

4号连接
4号ip是10.0.0.3

不能连接

posted @   启林O_o  阅读(1325)  评论(0编辑  收藏  举报
编辑推荐:
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
阅读排行:
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
CONTENTS
点击右上角即可分享
微信分享提示